LED點陣課程設(shè)計報告_第1頁
LED點陣課程設(shè)計報告_第2頁
LED點陣課程設(shè)計報告_第3頁
LED點陣課程設(shè)計報告_第4頁
LED點陣課程設(shè)計報告_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

課程設(shè)計報告課程《微機(jī)原理課程設(shè)計》題目《LED點陣屏應(yīng)用》系別物理與電子工程學(xué)院年級10級專業(yè)電子信息工程班級電信102學(xué)號1604102(29/31/30/26)學(xué)生姓名周博文、周全球、周凱、虞曉雨指導(dǎo)教師居偉駿職稱講師設(shè)計時間2013年5月10日~22日目錄目錄 1一、緒論 2二、選題分析 22.1題目內(nèi)容與要求 32.1.1具體要求: 3三、方案設(shè)計 33.1硬件設(shè)計 33.1.1設(shè)計所用元件 33.8259芯片簡介 58259芯片內(nèi)部結(jié)構(gòu) 68259A編程及初始化 73.1.2硬件連接 103.2軟件設(shè)計 103.2.1編程分析與程序框圖 103.2.2程序代碼 15四、結(jié)果及分析 154.1實驗結(jié)果 154.2結(jié)果分析 16五、總結(jié)與體會 17六、參考文獻(xiàn) 18七、附錄 187.1程序代碼 187.2硬件連接電路 24一、緒論微機(jī)原理是一門專業(yè)基礎(chǔ)課程,它的主要內(nèi)容包括微型計算機(jī)體系結(jié)構(gòu)、8086微處理器和指令系系統(tǒng)、匯編語言設(shè)計以及微型計算機(jī)各個組成部分介紹等內(nèi)容。通過對微機(jī)原理課本以及實驗的學(xué)習(xí),我們可以了解包括微型計算機(jī)體系結(jié)構(gòu)、匯編語言設(shè)計、8086微處理器和指令系統(tǒng)等內(nèi)容。作為一門計算機(jī)應(yīng)用專業(yè)的一門必修課,微機(jī)原理與接口技術(shù)對于我們了解計算機(jī)內(nèi)部的工作原理,各部件的作用,各部件間的聯(lián)系是十分重要的。但是只學(xué)習(xí)課本知識是遠(yuǎn)遠(yuǎn)不夠的。所以,我們只有通過真實的接觸,實際的操作,才能將理論知識和實際應(yīng)用聯(lián)系在一起,真正的將理論實際化。我們知道學(xué)習(xí)和掌握計算機(jī)中常用的接口技術(shù)以及設(shè)計技術(shù),充分理解理論知識對于應(yīng)用的指導(dǎo)作用是很重要的,只有這樣才能進(jìn)一步加強(qiáng)理論知識與應(yīng)用相結(jié)合的實踐和鍛煉。因此,我們開展了這次歷時兩個星期的課程設(shè)計,通過這次設(shè)計實踐能進(jìn)一步加深我們對專業(yè)知識和理論知識學(xué)習(xí)的認(rèn)識和理解,使自己的設(shè)計水平和對所學(xué)的知識的應(yīng)用能力以及分析問題解決問題的能力得到全面提高。本次課程設(shè)計主要是為了了解8255芯片和8259A的工作原理和相關(guān)設(shè)計技術(shù),并且通過此次設(shè)計,我們對于微型計算機(jī)的基本系統(tǒng)結(jié)構(gòu)和軟硬件的工作原理會有大體的認(rèn)識。學(xué)習(xí)和掌握計算機(jī)中常用接口電路的應(yīng)用和設(shè)計技術(shù),充分認(rèn)識理論知識對應(yīng)用技術(shù)的指導(dǎo)性作用,進(jìn)一步加強(qiáng)理論知識與應(yīng)用相結(jié)合的實踐和鍛煉。這不僅豐富鞏固了我們在課堂上學(xué)的知識,而且還為我們?nèi)蘸蟛饺肷鐣蛳铝嘶A(chǔ)。二、選題分析2.1題目內(nèi)容與要求本次課程設(shè)計目的剖析試驗箱,利用微機(jī)接口芯片8255,并行控制LED點陣顯示;其次就是掌握8088微機(jī)系統(tǒng)與LED點陣顯示模塊之間接口電路設(shè)計及編程,了解LED點陣顯示的基本原理和如何用8259中斷來實現(xiàn)漢字的循環(huán)左移和右移顯示。2.1.1具體要求:利用取模軟件建立標(biāo)準(zhǔn)字庫,編制程序?qū)崿F(xiàn)點陣循環(huán)左移和右移切換顯示漢字。三、方案設(shè)計3.1硬件設(shè)計3.1.1設(shè)計所用元件1.8255 8255是Intel公司生產(chǎn)的可編程并行I/O接口芯片,有3個8位并行I/O口。具有3個通道3種工作方式的可編程并行接口芯片(40引腳)。其各口功能可由軟件選擇,使用靈活,通用性強(qiáng)。8255可作為單片機(jī)與多種外設(shè)連接時的中間接口電路。8255作為主機(jī)與外設(shè)的連接芯片,必須提供與主機(jī)相連的3個總線接口,即數(shù)據(jù)線、地址線、控制線接口。同時必須具有與外設(shè)連接的接口A、B、C口。由于8255可編程,所以必須具有邏輯控制部分,因而8255內(nèi)部結(jié)構(gòu)分為3個部分:與CPU連接部分、與外設(shè)連接部分、控制部分。圖18255A引腳圖圖274LS273管腳圖圖38255工作方式控制字格式2.74ls27374LS273是8位數(shù)據(jù)/地址鎖存器,它是一種帶清除功能的8D觸發(fā)器,下面我介紹一下他的管腳圖功能表等資料。 管腳功能:1D~8D為數(shù)據(jù)輸入端,1Q~8Q為數(shù)據(jù)輸出端,正脈沖觸發(fā),低電平清除,常用作8位地址鎖存器。圖474LS273真值表(低電平鎖存)3.8259芯片簡介8259A(其引腳圖如圖4所示)是專門為了對8085A和8086/8088進(jìn)行中斷控制而設(shè)計的芯片,它是可以用程序控制的中斷控制器。單個的8259A能管理8級向量優(yōu)先級中斷。在不增加其他電路的情況下,最多可以級聯(lián)成64級的向量優(yōu)級中斷系統(tǒng)。8259A有多種工作方式,能用于各種系統(tǒng)。各種工作方式的設(shè)定是在初始化時通過軟件進(jìn)行的。在總線控制器的控制下,8259A芯片可以處于編程狀態(tài)和操作狀態(tài),編程狀態(tài)是CPU使用IN或OUT指令對8259A芯片進(jìn)行初始化編程的狀態(tài)。圖58259引腳圖8259芯片內(nèi)部結(jié)構(gòu)中斷請求寄存器:寄存所有要求服務(wù)的請求IR0~IR7。中斷服務(wù)寄存器:寄存正在被服務(wù)的中斷請求。中斷屏蔽寄存器:存放被屏蔽的中斷請求,該寄存器的每一位表示一個中斷號,該位為1,屏蔽該號中斷,否則開放該號中斷。數(shù)據(jù)總線緩沖器:是雙向三態(tài)的,用以連接系統(tǒng)總線和8259A內(nèi)部總線,通過它可以由CPU對8259A寫入狀態(tài)字和控制字。讀寫控制電路:用來接受I/O命令,對初始化命令和操作命令字寄存器進(jìn)行寫入,以確定8259A的工作方式和控制方式。級聯(lián)緩沖器/比較器:用于多片8259A的連接,能構(gòu)成多達(dá)64級的矢量中斷系統(tǒng)。圖68259內(nèi)部結(jié)構(gòu)8259A編程及初始化寫初始化命令字ICW1(A0=0),其格式如圖7所示,以確定中斷請求信號類型,清除中斷屏蔽寄存器,中斷優(yōu)先級排隊和確定系統(tǒng)用單片還是多片。圖7ICW1的格式寫初始化命令I(lǐng)CW2,其格式如圖8所示,用來定義8259A各個端口的中斷類型碼。圖8ICW2的格式寫初始化命令I(lǐng)CW4,其格式如圖8所示,用來定義8259A工作時用8085模式,還是8088模式,以及中斷服務(wù)寄存器復(fù)位方式等。圖9ICW4的格式 4、LED動態(tài)及其顯示LED點陣顯示系統(tǒng)中各模塊的顯示方式:有靜態(tài)和動態(tài)顯示兩種。靜態(tài)顯示原理簡單、控制方便,但硬件接線復(fù)雜,在實際應(yīng)用中一般采用動態(tài)顯示方式,動態(tài)顯示采用掃描的方式工作,由峰值較大的窄脈沖電壓驅(qū)動,從上到下逐次不斷地對顯示屏的各行進(jìn)行選通,同時又向各列送出表示圖形或文字信息的列數(shù)據(jù)信號,反復(fù)循環(huán)以上操作,就可顯示各種圖形或文字信息。點陣式LED絕大部分是采用動態(tài)掃描顯示方式,這種顯示方式巧妙地利用了人眼的視覺暫留特性。將連續(xù)的幾幀畫面高速的循環(huán)顯示,只要幀速率高于24幀/秒,人眼看起來就是一個完整的,相對靜止的畫面。最典型的例子就是電影放映機(jī)。在電子領(lǐng)域中,因為這種動態(tài)掃描顯示方式極大的縮減了發(fā)光單元的信號線數(shù)量,因此在LED顯示技術(shù)中被廣泛使用。以8×8點陣模塊為例,說明一下其使用方法及控制過程。圖2.1中,紅色水平線Y0、Y1……Y7叫做行線,接內(nèi)部發(fā)光二極管的陽極,每一行8個LED的陽極都接在本行的行線上。相鄰兩行線間絕緣。同樣,藍(lán)色豎直線X0、X1……X7叫做列線,接內(nèi)部每列8個LED的陰極,相鄰兩列線間絕緣。在這種形式的LED點陣模塊中,若在某行線上施加高電平(用“1”表示),在某列線上施加低電平(用“0”表示)。則行線和列線的交叉點處的LED就會有電流流過而發(fā)光。比如,Y7為1,X0為0,則右下角的LED點亮。再如Y0為1,X0到X7均為0,則最上面一行8個LED全點亮。圖10用動態(tài)掃描顯示字符“B”的過程圖11圖11點陣模塊組合3.1.2硬件連接本設(shè)計過程中實驗箱上相關(guān)芯片可按以下方式進(jìn)行連線:(1)將JHPC接JX16(PC)(2)JX7→JX0(BUS1)

(3)CS→9000H(4)JQ→JHQ(5)INTA接INTAX12(6)INT接JX15(PB)(7)JX7旁邊的IORD和IOWR接到系統(tǒng)的IORD和IOWR。(8)IR3接(9)IORD接IORD(10)IOWR接IOWR(11)A0接A0(12)JX4接JX17(BUS2)(13)CS2接8000H硬件電路如圖12(詳見附錄)3.2軟件設(shè)計3.2.1編程分析與程序框圖1.編程分析:(1)設(shè)置8255A的A口與B口為列數(shù)據(jù)掃描端口,行數(shù)據(jù)采集端口為8255A的C口74LS244鎖存器的擴(kuò)展端口,實驗電路中將74SL244的擴(kuò)展端口與8086芯片數(shù)據(jù)總線連接,然后將74LS244的CS與8255A芯片區(qū)域的8000H連接,以便設(shè)置其地址。這樣利用74LS244的擴(kuò)展端口和8255A的A口、B口、C口,滿足了點陣的輸入端口需求,解決單獨使用8255A端口不夠的問題:PORT_AEQU0FF28HPORT_BEQU0FF29HPORT_CEQU0FF2AHPORT_CTLEQU0FF2BHP1EQU8000H;擴(kuò)展端口地址(2)程序開始先將8255和8259A初始化并裝填I(lǐng)R3端口對應(yīng)的中斷向量表:MOVDX,PORT_CTLMOVAL,80HOUTDXMOVAX,0H ;中斷向量裝填MOVES,AXMOVDI,002CHMOVAX,OFFSETINTREEUP3STOSWMOVAX,0000HSTOSWMOVAL,13H ;8259A初始化MOVDX,INTPORT1OUTDXMOVAL,0BH MOVDX,INTPORT2OUTDXMOVAL,0DHOUTDXMOVAL,83HOUTDX(3)通過外部中斷來使控制點陣左移或右移的標(biāo)志位FLAG的值改變,產(chǎn)生一次中斷時,CPU進(jìn)入中斷服務(wù)子程序,F(xiàn)LAG的值變?yōu)?,若再產(chǎn)生一次中斷,F(xiàn)LAG的值又變回0。從而實現(xiàn)通過外部控制按鈕來實現(xiàn)LED點陣顯示的字左移或者右移的控制。(4)顯示子程序的程序設(shè)計,顯示子程序主要實現(xiàn)將得到的字庫信息顯示在16*16的LED顯示屏上的功能。而循環(huán)掃描子程序的功能是可以實現(xiàn)對端口的分列掃描的功能,并將掃描所得的字庫信息發(fā)送到顯示程序。程序框圖開始開始設(shè)置掃描次數(shù)調(diào)用循環(huán)顯示子程序計數(shù)是否完成結(jié)束NY圖13顯示子程序流程圖圖13顯示子程序流程圖NYNNYYYNN顯示子程序RH=60HRH=0RH<0RH=RH-16RH=RH+16RH&0010H=0RH減1RH加1FLAG=1各個標(biāo)志位的初始化各個硬件的初始化YRH&000FH=0開始RH<60H圖14主程序流程圖NYNNYYYNN顯示子程序RH=60HRH=0RH<0RH=RH-16RH=RH+16RH&0010H=0RH減1RH加1FLAG=1各個標(biāo)志位的初始化各個硬件的初始化YRH&000FH=0開始RH<60H圖14主程序流程圖 開始開始設(shè)置列掃描信號行代碼輸入列掃描1掃描信號左移一位調(diào)用滅燈在子程序標(biāo)志位CF=0FL+1FL是否為0標(biāo)志位CF清零初始掃描信號切換到列掃描2切換到列掃描1FL置0結(jié)束NYNY圖15循環(huán)掃描子程序流程圖圖16中斷子程序流程圖3.2.2程序代碼詳見附錄四、結(jié)果及分析4.1實驗結(jié)果圖16實驗結(jié)果4.2結(jié)果分析16*16LED點陣在通過動態(tài)掃描點亮的方式,完成了小組成員名字的循環(huán)左移和右移切換顯示。顯示亮度穩(wěn)定清晰,移動速度適中。與題目要求相同。因此本次實驗根據(jù)題目要求所編寫的程序是正確的。五、總結(jié)與體會我們本次課程設(shè)計的題目是16*16LED點陣滾動顯示,并且要實現(xiàn)循環(huán)左移和循環(huán)右移。到了最后一部分的課程設(shè)計報告,我們也是感受頗多,在整個的設(shè)計過程中,我們有所付出,也有所收獲。兩個星期的微機(jī)課程設(shè)計,讓我們真正的把自己所學(xué)的理論知識用于實踐,本次課程設(shè)計也是對于我們之前所學(xué)知識的檢驗和鞏固,也是我們對于本專業(yè)的很多問題有了會更加深刻的認(rèn)識和思考。也使我們的專業(yè)知識和實際功效有了完美的契合。并且通過設(shè)計,我們掌握了一些判斷錯誤以及檢查設(shè)備和程序的基本經(jīng)驗和方法,這對于以后的工作學(xué)習(xí)有很大的幫助。通過對這程序的制作,使我對匯編語言的基本知識的使用更加熟練,同時也增加了我對匯編語言的一些認(rèn)識,在作業(yè)完成過程中通過和同學(xué)的交流,也增加了合作的技巧。通過查閱以下資料也學(xué)到了一些課本上沒有的東西,拓寬了自己的知識面。

這不是第一次用匯編語言來設(shè)計一個小程序,平時做了很多實驗,寫了很多小程序。但這次是一個綜合的程序,平時的很多程序都用到了。很多子程序的設(shè)計是固定的,因此可以直接從指導(dǎo)資料中調(diào)用,大多只需要修改幾個參數(shù)就可以,這大大方便了我們的設(shè)計,為我們節(jié)省了很多的時間。

在這次課程設(shè)計中,我真正體會到了合作的重要性,遇到很多問題時,當(dāng)我看書查資料不能解決時,這是去找同學(xué)討論一下,收獲很大,可以使很多問題迎刃而解,直到問題最終解決。本次的微機(jī)課程設(shè)計只是我們自己動手研發(fā)的第一步,以后的道路還很長,但是這次的課程設(shè)計讓我們邁出了第一步,意義不言而喻。參考文獻(xiàn)[1]儲昌鈴,LED顯示屏系統(tǒng)原理局工程技術(shù)[M],電子科技大學(xué)出版社,2000年[2]江清明,LED點陣顯示牌的設(shè)計與動態(tài)顯示控制[M],微計算機(jī)信息,2001年[3]朱炬,多媒體視頻LED顯示技術(shù)[J],電子技術(shù)雜志,2000年[4]李東生等編著.Protel99SE電路設(shè)計技術(shù)入門與應(yīng)用[M].2002年2月第1版.[5][美]JoeCampBell編著。串行通信C程序員指南[S].2000年8月.[6]康華光.電子技術(shù)基礎(chǔ)數(shù)字部分(第五版)[M].北京:高等教育出版社,2006年七、附錄7.1程序代碼CODESEGMENTASSUMECS:CODEINTPORT1EQU9000HINTPORT2EQU9001HPORT_AEQU0FF28HPORT_BEQU0FF29HPORT_CEQU0FF2AHPORT_CTLEQU0FF2BHP1EQU8000HORG12D0HSTART:JMPSTART0FLAGDB?;左移右移標(biāo)志位FLDB?;列掃描標(biāo)志位RHDW? ;地址偏移量RLDB?;列掃描PAGDW? ;列掃描端口START0:MOVDX,PORT_CTL ;8255初始化MOVAL,80HOUTDXMOVAX,0H ;中斷向量裝填MOVES,AXMOVDI,002CHMOVAX,OFFSETINTREEUP3STOSWMOVAX,0000HSTOSWMOVAL,13H ;8259A初始化MOVDX,INTPORT1OUTDXMOVAL,0BH MOVDX,INTPORT2OUTDXMOVAL,0DHOUTDXMOVAL,83HOUTDXMOVFLAG,00HSTI ;打開IFCALLOFFLEDMOVAL,00HMOVFL,ALMOVPAG,PORT_AXL0:MOVRH,0000H ;LED點陣左移XL1:CALLDEL1CMPFLAG,01HJZXR1INCRHCMPRH,61HJZXL0MOVAX,RHANDAX,000FHCMPAX,0000HJNZXL1ADDRH,0010HJMPXL1XR0:MOVRH,0060HXR1:CALLDEL1 ;LED點陣右移CMPFLAG,01HJNZXL1DECRHCMPRH,0000HJZXR0MOVAX,RHANDAX,0010HCMPAX,0000HJZXR1SUBRH,0010HJMPXL1DISPW:CLC ;顯示程序PUSHRHMOVRL,01HDISP1:MOVSI,RHMOVBX,OFFSETTABMOVAL,CS:[BX+SI]MOVDX,PORT_C;C口發(fā)送字碼的上半部分OUTDXMOVAL,CS:[BX+SI+10H]MOVDX,P1OUTDX,AL;P1口發(fā)送字碼的下半部分MOVDX,PAGMOVAL,RLNOTALOUTDX,AL;進(jìn)行列掃描MOVCX,0080H;延時一段時間,消除殘影LOOP$CALLOFFLEDINCRHMOVAX,RHANDAX,000FHCMPAX,0000HJNZCON2ADDRH,0010H;下一個字的偏移地址CON2:RCLRL,1JNCDISP1CMPFL,00HJNZEXITINCFLCLCMOVRL,01HMOVPAG,PORT_BJMPDISP1EXIT:MOVPAG,PORT_AMOVFL,00HPOPRHRETOFFLED:MOVDX,PORT_A ;關(guān)閉LED點陣MOVAL,0FFHOUTDXMOVDX,PORT_BOUTDXRETDEL1:MOVCX,0020HCON1:PUSHCXCALLDISPWPOPCXLOOPCON1RETINTREEUP3: PUSHAXPUSHBXPUSHCXPUSHDX ADDFLAG,01HCMPFLAG,01HJNAINTRE2MOVFLAG,00HINTRE2:MOVAL,20H ;正常EOIMOVDX,INTPORT1OUTDXPOPDX POPCXPOPBXPOPAXSTIIRETTAB:DB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論