版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢業(yè)設(shè)計(jì)說明書</b></p><p> 基于Proteus的LED漢字顯示屏電路設(shè)計(jì)</p><p> 2011年 5 月 15 日</p><p> 院(系)名稱信息工程學(xué)院</p><p> 專業(yè)名稱電子信息工程</p><p> 基于Proteus的L
2、ED漢字顯示屏電路設(shè)計(jì)</p><p><b> 摘 要</b></p><p> LED點(diǎn)陣顯示屏作為一種新興的顯示器件,是由多個(gè)獨(dú)立的LED發(fā)光二極管封裝而成。LED點(diǎn)陣顯示屏可以顯示數(shù)字或符號(hào), 通常用來顯示時(shí)間、速度、系統(tǒng)狀態(tài)等。由于單片機(jī)技術(shù)的不斷發(fā)展和高亮度LED發(fā)光管的出現(xiàn)使得大屏幕高亮度LED電子廣告屏成為可能,與傳統(tǒng)的霓虹燈廣告在顯示效果以及
3、可修改性上都有著無法比擬的優(yōu)勢(shì),而且單片機(jī)的日益平民化以及LED技術(shù)的不斷創(chuàng)新,使得高亮度高清晰的LED點(diǎn)陣廣告牌與傳統(tǒng)霓虹燈廣告牌的成本日益接近。為了能簡(jiǎn)單的實(shí)現(xiàn)基于單片機(jī)的LED顯示系統(tǒng)控制,本文設(shè)計(jì)了基于AT89C51單片機(jī)16×16 LED漢字滾動(dòng)顯示屏電路并運(yùn)用Proteus軟件仿真實(shí)現(xiàn)其顯示功能。本系統(tǒng)的設(shè)計(jì)具有體積小、硬件少、電路結(jié)構(gòu)簡(jiǎn)單及容易實(shí)現(xiàn)等優(yōu)點(diǎn)。</p><p> 關(guān)鍵詞:LE
4、D,單片機(jī),Proteus仿真</p><p> The Design Of Chinese Characters Display Circuit Based On Proteus LED</p><p><b> Abstract</b></p><p> As a new display device LED dot matrix d
5、isplay is consists of several independent LED light-emitting diode encapsulation. LED dot matrix display can display numbers or symbols, usually used to display time, speed, system status, etc. As the continuous developm
6、ent of microcomputer technology and the display of high-brightness LED glowing tube, It makes the emergence of large-screen high-brightness LED electronic advertising screen to be possible, compared to the display effect
7、 and modifiability o</p><p> Keyword : LED, MCU, Proteus imitates reall</p><p><b> 目 錄</b></p><p><b> 1 緒 論1</b></p><p> 1.1 課題背景1<
8、;/p><p> 1.2 課題研究現(xiàn)狀1</p><p> 1.3 課題設(shè)計(jì)任務(wù)2</p><p> 2 系統(tǒng)總體設(shè)計(jì)方案3</p><p> 2.1 總體設(shè)計(jì)方案的論證3</p><p> 2.2 總體設(shè)計(jì)方案的確定3</p><p> 3 系統(tǒng)硬件電路設(shè)計(jì)5</
9、p><p> 3.1單片機(jī)系統(tǒng)電路5</p><p><b> 3.2時(shí)鐘電路7</b></p><p><b> 3.3復(fù)位電路8</b></p><p><b> 3.4電源電路8</b></p><p> 3.5點(diǎn)陣顯示電路9<
10、;/p><p> 3.6驅(qū)動(dòng)電路10</p><p> 4系統(tǒng)的軟件程序設(shè)計(jì)12</p><p> 4.1軟件系統(tǒng)分析12</p><p> 4.1.1模塊細(xì)分12</p><p> 4.1.2確定算法12</p><p> 4.1.3編寫程序13</p>&l
11、t;p> 4.2系統(tǒng)主程序13</p><p> 4.3顯示驅(qū)動(dòng)程序14</p><p> 5 整體電路的設(shè)計(jì)16</p><p> 6 字模的提取18</p><p> 7 軟件仿真調(diào)試20</p><p> 7.1 Proteus軟件介紹20</p><p>
12、 7.1.1 進(jìn)入Proteus ISIS20</p><p> 7.1.2 工作界面21</p><p> 7.2 創(chuàng)建源代碼仿真文件21</p><p> 7.3仿真調(diào)試22</p><p><b> 結(jié) 論25</b></p><p><b> 致 謝26
13、</b></p><p><b> 參考文獻(xiàn)27</b></p><p><b> 附錄 A28</b></p><p><b> 1 緒 論</b></p><p><b> 1.1 課題背景</b></p>&
14、lt;p> LED顯示屏是用來顯示文字、圖形、圖像、動(dòng)畫、行情、視頻、錄像信號(hào)等各種信息的顯示屏幕。它的優(yōu)點(diǎn)是亮度高、工作電壓低、功耗小、微型化、易與集成電路匹配、驅(qū)動(dòng)簡(jiǎn)單、壽命長、耐沖擊、性能穩(wěn)定。圖文顯示屏可與計(jì)算機(jī)同步顯示漢字、英文文本和圖形。視頻顯示屏采用微型計(jì)算機(jī)進(jìn)行控制,圖文、圖像并茂,以實(shí)時(shí)、同步、清晰的信息傳播方式播放各種信息,還可顯示二維、三維動(dòng)畫、錄像、電視、VCD節(jié)目以及現(xiàn)場(chǎng)實(shí)況[1]。LED顯示屏顯示畫面
15、色彩鮮艷,立體感強(qiáng),靜如油畫,動(dòng)如電影,廣泛應(yīng)用于車站、碼頭、機(jī)場(chǎng)、商場(chǎng)、醫(yī)院、賓館、銀行、證券市場(chǎng)、建筑市場(chǎng)、拍賣行、工業(yè)企業(yè)管理和其它公共場(chǎng)所。</p><p> 伴隨世界技術(shù)的飛速發(fā)展,以前,需要花大量的時(shí)間和精力來搭建一個(gè)模擬電路,繁多的元器件不僅給電路構(gòu)成增加了成本,也使電路復(fù)雜化,而現(xiàn)在只需要一塊幾平方厘米的單片機(jī),在寫入相應(yīng)的功能程序,便可以代替以前的電路模式了。運(yùn)用單片機(jī)技術(shù),達(dá)到標(biāo)識(shí)顯示的目的
16、,也將舍去原來的畫圖描寫以及霓紅燈標(biāo)識(shí)顯示方式了,而單片機(jī)有可重復(fù)編寫的功能,只需要將程序稍稍改動(dòng),就能達(dá)到相應(yīng)顯示效果。</p><p> 同時(shí)利用嵌入式系統(tǒng)軟硬件設(shè)計(jì)仿真平臺(tái),能夠在線、實(shí)時(shí)仿真多種類型的單片機(jī),諸如MCS-51系列單片機(jī)、PIC單片機(jī)、AVR單片機(jī)等,能夠像硬件仿真器一樣進(jìn)行軟硬件調(diào)試,而沒必要花錢去購買和維護(hù)價(jià)格不菲的仿真器,對(duì)于初學(xué)單片機(jī)的人來說,既減少了學(xué)習(xí)成本,又達(dá)到了良好的學(xué)習(xí)效
17、果。</p><p> 1.2 課題研究現(xiàn)狀</p><p> LED點(diǎn)陣顯示屏的構(gòu)成型式有多種,其中典型的有兩種。一種把所需展示的廣告信息燒寫固化到EPROM芯片內(nèi),能進(jìn)行固定內(nèi)容的多幅漢字顯示,稱為單顯示型;另一種在機(jī)內(nèi)設(shè)置了字庫、程序庫,具有程序編制能力,能進(jìn)行內(nèi)容可變的多幅漢字顯示,稱可編程序型[2]。 </p><p> 目前,我發(fā)現(xiàn)LED點(diǎn)陣顯示
18、屏大部分是單顯示型,其顯示的內(nèi)容相對(duì)較少,顯示花樣較單一。一般在產(chǎn)品出廠時(shí),顯示內(nèi)容就已寫入顯示屏控制系統(tǒng)中的EPROM芯片內(nèi),當(dāng)需要更換顯示內(nèi)容時(shí)就非常困難,這樣使該類型的顯示屏使用范圍受到了限制。國內(nèi)的另一種LED顯示屏——可編程序型LED顯示屏,雖然增加了顯示屏系統(tǒng)的編程能力,顯示內(nèi)容和顯示花樣都有所增加,但也存在著更換顯示內(nèi)容不便的缺點(diǎn)。隨著社會(huì)經(jīng)濟(jì)的迅速發(fā)展,如今的廣告牌都存在著顯示內(nèi)容豐富、信息量大、信息更換速度快等特點(diǎn)。因
19、此傳統(tǒng)的LED顯示屏控制系統(tǒng)已經(jīng)越來越不能滿足現(xiàn)代廣告宣傳業(yè)的需要。而利用PC機(jī)通信技術(shù)控制LED顯示屏,則具有顯示內(nèi)容豐富,信息更換靈活等優(yōu)點(diǎn)。</p><p> 隨著社會(huì)發(fā)展,人民生活水平的不斷提高,信息化、智能化技術(shù)滲透于人們生活的各個(gè)領(lǐng)域。近年來,由于電子技術(shù)的迅速發(fā)展,電子元器件的成本大幅度下降,技術(shù)的完善,性能的提高,使得LED顯示屏的制造成本大大降低,LED顯示屏也開始普及起來,將LED顯示技術(shù)應(yīng)
20、用于日常生活和節(jié)能領(lǐng)域已經(jīng)日漸被國內(nèi)很多科研機(jī)構(gòu)及廠家所重視。</p><p> 1.3 課題設(shè)計(jì)任務(wù)</p><p> 本設(shè)計(jì)一個(gè)用16x16的點(diǎn)陣LED圖文顯示屏,通過Proteus仿真軟件并對(duì)電路進(jìn)行仿真,并實(shí)現(xiàn)滾動(dòng)漢字顯示要求在目測(cè)條件下LED顯示屏各點(diǎn)亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應(yīng)穩(wěn)定、清晰無串?dāng)_,圖形或文字滾動(dòng)顯示,并在Proteus嵌入式系統(tǒng)設(shè)計(jì)仿真
21、平臺(tái)上完成點(diǎn)陣式LED滾動(dòng)漢字顯示調(diào)試。本課題研究的內(nèi)容就是以單片機(jī)為主要控制元件,驅(qū)動(dòng)LED點(diǎn)陣顯示所想要現(xiàn)實(shí)的漢字,以后需要顯示更大的也可以用本課題設(shè)計(jì)來實(shí)現(xiàn)。</p><p> 2 系統(tǒng)總體設(shè)計(jì)方案</p><p> 本章主要內(nèi)容是論述16×16點(diǎn)陣漢字滾動(dòng)顯示裝置的總體設(shè)計(jì)以及方案的論證。本系統(tǒng)由單片機(jī)電路、陰極、陽極驅(qū)動(dòng)電路和16×16點(diǎn)陣顯示電路三大部分
22、組成,功能模塊具體實(shí)現(xiàn)的器件的不同,將直接影響整個(gè)系統(tǒng)的性能及成本,為了達(dá)到高效、實(shí)用的目的,在系統(tǒng)設(shè)計(jì)之前的方案論證是十分重要的。</p><p> 2.1 總體設(shè)計(jì)方案的論證</p><p> 從理論上說,不論顯示圖形還是文字,只要控制與組成這些圖形或文字的各個(gè)點(diǎn)所在的位置相對(duì)應(yīng)的LED器件發(fā)光,就可以得到我們想要的顯示結(jié)果,這種同時(shí)控制各個(gè)發(fā)光點(diǎn)亮滅的方法稱為靜態(tài)驅(qū)動(dòng)顯示方式。1
23、6×16的點(diǎn)陣共有256個(gè)發(fā)光二極管,顯然單片機(jī)沒有這么多的端口,我們僅僅是16×16的點(diǎn)陣,在實(shí)際應(yīng)用中的顯示屏往往要大得多,這樣在鎖存器上花的成本將是一個(gè)很龐大的數(shù)字。因此在實(shí)際應(yīng)用中的顯示屏幾乎都不采用這種設(shè)計(jì),而采用另外一種稱為動(dòng)態(tài)掃描的顯示方法。</p><p> 動(dòng)態(tài)掃描的意思簡(jiǎn)單地說就是逐行輪流點(diǎn)亮,這樣掃描驅(qū)動(dòng)電路就可以實(shí)現(xiàn)多行(比如16行)的同名列共用一套驅(qū)動(dòng)器。具體就16
24、×16的點(diǎn)陣來說,把所有同1行的發(fā)光管的陽極連在一起,把所有同1列的發(fā)光管的陰極連在一起(共陽極的接法),先送出對(duì)應(yīng)第一行發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第1行使其燃亮一定時(shí)間,然后熄滅;再送出第二行的數(shù)據(jù)并鎖存,然后選通第2行使其燃亮相同的時(shí)間,然后熄滅;以此類推,第16行之后,又重新燃亮第1行,反復(fù)輪回。當(dāng)這樣輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現(xiàn)象,就能夠看到顯示屏上穩(wěn)定的圖形了。</p>
25、<p> 2.2 總體設(shè)計(jì)方案的確定</p><p> 點(diǎn)陣式LED滾動(dòng)漢字顯示屏硬件電路設(shè)計(jì)框圖如圖2.1所示。電路包括單片機(jī)、電源電路、時(shí)鐘電路、復(fù)位電路、驅(qū)動(dòng)電路和16×16 LED點(diǎn)陣電路等。本設(shè)計(jì)的核心是利用單片機(jī)讀取顯示字型碼,通過驅(qū)動(dòng)電路對(duì)16×16 LED點(diǎn)陣進(jìn)行動(dòng)態(tài)列掃描,以實(shí)現(xiàn)漢字的滾動(dòng)顯示。本設(shè)計(jì)選用的AT89C51單片機(jī),為顯示屏采用16×16
26、 LED點(diǎn)陣。電源電路通過變壓整流元件為單片機(jī)和其他電路提供穩(wěn)定的+5V工作電壓。時(shí)鐘電路是單片機(jī)的驅(qū)動(dòng)電路,復(fù)位電路可在需要時(shí),手動(dòng)使單片機(jī)程序計(jì)數(shù)器復(fù)位清零。通過陽極驅(qū)動(dòng)電路向16×16點(diǎn)陣送字型碼,通過陰極驅(qū)動(dòng)電路對(duì)16×16點(diǎn)陣進(jìn)行列掃描,本課題采用的驅(qū)動(dòng)芯片為74HC154。</p><p> 圖2.1 硬件電路設(shè)計(jì)框圖</p><p> 3 系統(tǒng)硬件
27、電路設(shè)計(jì)</p><p> 硬件電路大致上可以分成單片機(jī)系統(tǒng)電路、陰極和陽極驅(qū)動(dòng)電路、時(shí)鐘電路、復(fù)位電路、電源電路及LED點(diǎn)陣電路幾部分。</p><p> 3.1單片機(jī)系統(tǒng)電路 </p><p> 本設(shè)計(jì)的核心是利用單片機(jī)讀取顯示字型碼,通過驅(qū)動(dòng)電路對(duì)16×16 LED點(diǎn)陣進(jìn)行動(dòng)態(tài)列掃描,以實(shí)現(xiàn)漢字的滾動(dòng)顯示。AT89C51是一種帶4K字節(jié)閃爍
28、可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)[3]。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。三級(jí)程序存儲(chǔ)器鎖定、128×8位內(nèi)部RAM、32可編程I/O線、兩個(gè)16位定時(shí)器/計(jì)數(shù)器、5個(gè)中斷源、可編程串行通道、低功
29、耗的閑置和掉電模式、片內(nèi)振蕩器和時(shí)鐘電路;外部引腳如圖3.1所示:</p><p> 圖3.1 AT89C51單片機(jī)外部引腳圖</p><p> 1.AT89C51主要特性:</p><p> ·與MCS.51兼容</p><p> ·4K字節(jié)可編程閃爍存儲(chǔ)器</p><p>
30、3;壽命:1000寫/擦循環(huán)</p><p> ·數(shù)據(jù)保留時(shí)間:10年</p><p> ·全靜態(tài)工作:0Hz至24Hz</p><p> ·三級(jí)程序存儲(chǔ)器鎖定</p><p> ·128*8位內(nèi)部RAM</p><p> ·32可編程I/O線</p&g
31、t;<p> ·兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b> ·5個(gè)中斷源</b></p><p><b> ·可編程串行通道</b></p><p> ·低功耗的閑置和掉電模式</p><p> ·片內(nèi)振蕩器和時(shí)鐘電路
32、</p><p><b> 2.管腳說明:</b></p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p><p> P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8T1'L門電流。當(dāng)P1口的管腳
33、第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),PO口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),PO輸出原碼,此時(shí)P0外部必須被拉高[4]。</p><p> P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1被外部下拉為低電平時(shí),將輸出電流,這是由
34、于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。</p><p> P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)1vrL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在
35、給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)[5]。</p><p> P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。
36、</p><p> P3口也可作為AT89C51的一些特殊功能口,同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p> RST-復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí)
37、,ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的116。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p> ?。疨SEN/外部程序存儲(chǔ)器的選通信
38、號(hào):在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。</p><p> ?。疎A/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H.FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式l時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP
39、)。</p><p> XTALl:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> XTAL2:來自反向振蕩器的輸出。</p><p><b> 3.2時(shí)鐘電路 </b></p><p> AT89C51中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入
40、端和輸出端[6]。這個(gè)放大器與作為負(fù)反饋的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖3.2;外接石英晶體(或陶瓷諧振器)及電容C1、C2接在放大器的反饋電路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容C1、C2雖然沒有十分的嚴(yán)格要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,本設(shè)計(jì)使用石英晶體,其電容容量使用30PF±10PF。 </p><p><
41、;b> 圖3.2時(shí)鐘電路</b></p><p><b> 3.3復(fù)位電路 </b></p><p> 在這個(gè)系統(tǒng)中的復(fù)位電路是采用上電加按鈕來實(shí)現(xiàn)的。因?yàn)镸CS-51單片機(jī)的復(fù)位是靠外部電路實(shí)現(xiàn)的。MCS-51單片機(jī)工作之后,只要在他的RST引線上加載10ms以上的高點(diǎn)平,單片機(jī)就能有地進(jìn)行復(fù)位。我們采用的是上電加按鍵復(fù)位方式,這樣做的優(yōu)點(diǎn)是
42、上電后可以直接進(jìn)入復(fù)位狀態(tài),當(dāng)程序出現(xiàn)錯(cuò)誤時(shí),可以隨時(shí)使電路復(fù)位。</p><p> 單片機(jī)在啟動(dòng)或斷電后,程序需要從頭開始執(zhí)行,機(jī)器內(nèi)全部積存器,I/O接口等都必須重新復(fù)位。圖3.3是一個(gè)簡(jiǎn)單的上電復(fù)位和按鈕復(fù)位電路,圖中上電時(shí)接通電源,電容C1相當(dāng)于瞬間短路,+5V電源直接加到了RST/VPD端,該高電平使89C51全機(jī)復(fù)位,若運(yùn)行過程中需要程序從頭執(zhí)行,只需要按鈕S即可,按下S則直接把+5V加到RST/V
43、PD端從而復(fù)位。</p><p> 圖3.3 復(fù)位電路圖</p><p><b> 3.4電源電路</b></p><p> 電源電路是單片機(jī)系統(tǒng)最基本的部分,所以我們應(yīng)該高度重視電源部分,不能因?yàn)殡娫床糠蛛娐繁容^簡(jiǎn)單而有所忽略,電源部分做好才能保證電路的正常工作。對(duì)電源電路來說,最重要的就是穩(wěn)壓,我們采用的是+5V電源供的直流電[7]。
44、</p><p><b> 3.5點(diǎn)陣顯示電路</b></p><p> 本設(shè)計(jì)用4片LED8×8點(diǎn)陣組成一個(gè)16×16點(diǎn)陣顯示電路[8]。LED數(shù)碼管是本設(shè)計(jì)中的顯示器件下面對(duì)它作一簡(jiǎn)單介紹。此處選用的是八段數(shù)碼管,它是由8個(gè)發(fā)光二極管組合而成的,它有共陰極和共陽極兩種形式(如圖3.4 a、b、c)。共陰極的內(nèi)部接法為將8個(gè)發(fā)光二極管的陰極結(jié)
45、在一起,工作時(shí)公共極接地,在8個(gè)陽極上通以不同的電平是將顯示不同的字符;共陽極接法與共陰極相反,它是將8個(gè)發(fā)光二極管的陽極接在一起,工作時(shí)公共極接+5V,在8個(gè)陰極上通以不同的電平來顯示相應(yīng)的字符。本設(shè)計(jì)選用LED8×8點(diǎn)陣作為顯示器件,從顯示亮度來說要求越高,其效果越好,從節(jié)能的角度上看,LED器件較為節(jié)能,工作電壓不高,功耗又小,且性能一定要穩(wěn)定,維修方便, LED電子顯示屏以基色彩鮮亮奪目,大的顯示信息量、壽命長、耗電量
46、小,重量輕,空間尺寸小,穩(wěn)定性高,易于操作、安裝和維護(hù)等特點(diǎn)將在本設(shè)計(jì)中扮演著重要的角色。等效電路看起來簡(jiǎn)單,1腳加高電平,再在abcdefgh段加低電平,第一行的發(fā)光二極管就會(huì)亮,但是實(shí)際的器件引腳并不是一排引腳按12345678的順序排列,另一排引腳按abcdefgh的順序排列。而實(shí)際引腳通常</p><p> 圖 3.4 LED數(shù)碼管結(jié)構(gòu)圖</p><p> 圖3.5 (a)
47、8×8LED平面圖</p><p> 圖3.5(b)8×8LED等效電路圖</p><p><b> 3.6驅(qū)動(dòng)電路</b></p><p> 單片機(jī)P1口低4位輸出的行號(hào)經(jīng)4/16線譯碼器74HC154(如圖3.6)譯碼后生成16條行選通信號(hào)線,再經(jīng)過驅(qū)動(dòng)器驅(qū)動(dòng)對(duì)應(yīng)的行線。動(dòng)態(tài)掃描顯示時(shí),74HC154用來確定某一時(shí)
48、刻顯示的行號(hào),保證某一時(shí)刻只有一行選中。一條行線上要帶動(dòng)16列的LED進(jìn)行顯示,按每一LED器件10mA電流計(jì)算,16個(gè)LED同時(shí)發(fā)光時(shí),需要160mA電流(即16個(gè)LED點(diǎn)陣同時(shí)亮的情況),74HC154為一行16個(gè)LED點(diǎn)陣提供足夠大的驅(qū)動(dòng)電流。74HC154來做列選控制只使用了單片機(jī)的4個(gè)IO口,節(jié)約了很多IO資源,為單片機(jī)系統(tǒng)擴(kuò)充使用功能提供了條件。 </p><p> 圖3.6 74HC154外形
49、及引腳</p><p> 4系統(tǒng)的軟件程序設(shè)計(jì)</p><p> 軟件設(shè)計(jì)是一件細(xì)致而復(fù)雜的工作,應(yīng)按照合理的順序有條不絮的進(jìn)行。本次畢業(yè)設(shè)計(jì)中我們?cè)谲浖O(shè)計(jì)部分依然采用模塊化的設(shè)計(jì)思想題,將整個(gè)系統(tǒng)劃分為若干個(gè)模塊,設(shè)計(jì)時(shí)將各個(gè)模塊非開來設(shè)計(jì),最后將整個(gè)模塊連接起來,這樣易于調(diào)試,有助于發(fā)現(xiàn)問題并及時(shí)改正。</p><p><b> 4.1軟件系統(tǒng)
50、分析</b></p><p> 根據(jù)畢業(yè)設(shè)計(jì)的要求及該系統(tǒng)應(yīng)該滿足的功能要求,決定該系統(tǒng)應(yīng)該具有的部分及所需的各種元器件及其分別的型號(hào),所起到的作用。按信息的流行向分析說明信息的性質(zhì),來源或去向,有多少數(shù)據(jù)信息、多少狀態(tài)信息,是模擬量還是數(shù)字量,是串行還是并行,數(shù)據(jù)輸入/輸出端口地址,與外設(shè)聯(lián)絡(luò)控制的方法以及輸入中斷源的類別和優(yōu)先級(jí)的安排。每一個(gè)輸入/輸出還應(yīng)注意是否與其他輸入/輸出有關(guān)。</
51、p><p><b> 4.1.1模塊細(xì)分</b></p><p> 按照所分析的結(jié)果將整個(gè)系統(tǒng),按不同的功能劃分為幾個(gè)相對(duì)獨(dú)立的模塊,并分析出各個(gè)模塊之間的關(guān)系幾由他兩端出現(xiàn)的信號(hào)的形式。可以將整個(gè)系統(tǒng)化分為:前端模塊,主機(jī)模塊,顯示模塊,輸入模塊,這樣就可以對(duì)各個(gè)模塊同時(shí)進(jìn)行設(shè)計(jì),只要保證相連模塊間滿足相應(yīng)的數(shù)據(jù)流通關(guān)系就行。</p><p>
52、; 在此次設(shè)計(jì)中顯示屏軟件的主要功能是向屏體提供顯示數(shù)據(jù),并產(chǎn)生各種控制信號(hào),使屏幕按設(shè)計(jì)的要求顯示。根據(jù)軟件分層次設(shè)計(jì)的原理,可以把顯示屏的軟件系統(tǒng)分為兩層;第一層是底層的顯示驅(qū)動(dòng)程序,第二層是上層的系統(tǒng)應(yīng)用程序。顯示驅(qū)動(dòng)程序負(fù)責(zé)向屏體送顯示數(shù)據(jù),并負(fù)責(zé)產(chǎn)生行掃描信號(hào)和其它控制信號(hào),配合完成LED顯示屏的掃描顯示工作。顯示驅(qū)動(dòng)器程序由定時(shí)器T0中斷程序?qū)崿F(xiàn)。系統(tǒng)應(yīng)用程序完成系統(tǒng)環(huán)境設(shè)置(初始化)、顯示效果處理等工作,由主程序來實(shí)現(xiàn)。
53、</p><p><b> 4.1.2確定算法</b></p><p> 算法設(shè)計(jì)是軟件設(shè)計(jì)很重要的階段,合理和可靠的算法將導(dǎo)致優(yōu)化程序設(shè)計(jì)。不同功能塊有不同的算法,同一個(gè)問題也可以有很多算法,要根據(jù)具體的情況選擇合適的算法。算法設(shè)計(jì)的總目標(biāo)是,在達(dá)到要求功能的基礎(chǔ)上,保證程序流程結(jié)構(gòu)簡(jiǎn)單,運(yùn)行可靠。</p><p><b>
54、4.1.3編寫程序</b></p><p> 在手編寫各部分的程序之前,還需做兩件事:分配系統(tǒng)資源和設(shè)計(jì)流程圖。提高軟件設(shè)計(jì)總體效率的有效方法是先設(shè)計(jì)流程圖,在開始編程。程序流程圖4.1的設(shè)計(jì)過程就是程序邏輯設(shè)計(jì)的過程。流程圖直觀明了,有利于查錯(cuò)和修改。</p><p> 圖 4.1 顯示驅(qū)動(dòng)程序流程圖</p><p><b> 4.2系
55、統(tǒng)主程序</b></p><p> 系統(tǒng)主程序開始以后,首先是對(duì)系統(tǒng)環(huán)境初始化,然后向左滾動(dòng)顯示“單片機(jī)仿真”這5個(gè)漢字,然后以“卷簾入”效果隱去。由于單片機(jī)沒有停機(jī)指令,所以可以設(shè)置系統(tǒng)程序不斷的循環(huán)執(zhí)行上述顯示效果。圖4.2主程序流程圖。詳細(xì)主程序見附錄A</p><p> 圖4.2系統(tǒng)主程序流程圖</p><p> 4.3顯示驅(qū)動(dòng)程序 &
56、lt;/p><p> 由LED點(diǎn)陣顯示器的內(nèi)部結(jié)構(gòu)可知,器件宜采用動(dòng)態(tài)掃描驅(qū)動(dòng)方式工作,由于LED管芯大多為高亮度型,因此某行或某列的單體 LED驅(qū)動(dòng)電流可選用窄脈沖,但其平均電流應(yīng)限制在20mA內(nèi).多數(shù)點(diǎn)陣顯示器的單體LED的正向壓降約在2V左右。動(dòng)態(tài)顯示采用掃描的方式工作,由峰值較大的窄脈沖驅(qū)動(dòng),從上到下逐次不斷地對(duì)顯示屏的各行進(jìn)行選通,同時(shí)又向各列送出表示圖形或文字信息的脈沖信號(hào),反復(fù)循環(huán)以上操作,就可顯示各
57、種圖形或文字信息。圖4.3驅(qū)動(dòng)程序(顯示屏掃描函數(shù))流程圖。</p><p> 顯示驅(qū)動(dòng)程序在進(jìn)入中斷后首先要對(duì)定時(shí)器T0重新賦初值,以保證顯示屏刷新率的穩(wěn)定,1/16掃描顯示屏的刷新率(幀頻)計(jì)算如公式4.1所示:</p><p> 刷頻率(幀頻)=1/16×T0溢出率</p><p> =1/16×f/12(65536-t)
58、 (4.1)</p><p> 在公式4.1中f為晶振頻率,t為定時(shí)器T0初值(工作在16位定時(shí)器模式)。然后顯示驅(qū)動(dòng)程序查詢當(dāng)前燃亮的行號(hào),從顯示緩存區(qū)內(nèi)讀取下一行的顯示數(shù)據(jù),并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數(shù)據(jù)的時(shí)候產(chǎn)生拖尾現(xiàn)象,驅(qū)動(dòng)程序先要關(guān)閉顯示屏,即消隱,等顯示數(shù)據(jù)打入輸出鎖存器鎖存,然后再輸出新的行號(hào),重新打開顯示。</p><p>
59、 圖 4.3顯示驅(qū)動(dòng)程序流程圖</p><p><b> 5 整體電路的設(shè)計(jì)</b></p><p> 用PROTEUS 繪制原理圖:運(yùn)行 Proteus 的 ISIS 程序后,進(jìn)入該仿真軟件的主界面[9]。通過元件選擇按鈕 P (從庫中選擇元件命令) 命令,在彈出的 Pick Devices 窗口中選擇電路所需的元件,放置元件并調(diào)整其相對(duì)位置,對(duì)元件參數(shù)設(shè)置及
60、元器件間連線, 完成單片機(jī)系統(tǒng)的硬件原理圖繪制。整體電路原理圖如5.1圖。</p><p> 圖5.1 LED點(diǎn)陣顯示的整機(jī)電路原理圖</p><p> 本文把行列控制總線接在單片機(jī)的I/O口,然后把通過軟件編譯的掃描代碼送入總線,就可以得到顯示的漢字了??紤]到P0口必需設(shè)置上拉電阻,本文采用1k排電阻作為上拉電阻。在進(jìn)行顯示時(shí),每一行有一個(gè)行驅(qū)動(dòng)器,各行的同名列共用一個(gè)驅(qū)動(dòng)器。顯示
61、數(shù)據(jù)通常存儲(chǔ)在單片機(jī)的存儲(chǔ)器中,按8位一個(gè)字節(jié)的形式順序排放。顯示時(shí)要把一行中各列的數(shù)據(jù)都傳送到相應(yīng)的列驅(qū)動(dòng)器上去。</p><p> 漢字掃描顯示的基本過程是這樣的:通電后由于電阻R1,電容C4的作用,使單片機(jī)的RST復(fù)位腳電平先高后低,從而達(dá)到復(fù)位;之后,在C2,C3,X1以及單片機(jī)內(nèi)部時(shí)鐘電路的作用下,單片機(jī)89C51按照設(shè)定的程序在P0和P2口輸出與內(nèi)部漢字對(duì)應(yīng)的代碼電平送至LED點(diǎn)陣的行選線(高電平驅(qū)
62、動(dòng)),同時(shí)在P1.1,P1.2,P1.3,P1.4口輸出列選掃描信號(hào)(低電平驅(qū)動(dòng)),從而選中相應(yīng)的象素LED發(fā)光,并利用人眼的視覺暫留特性合成整個(gè)漢字的顯示,再改變?nèi)”淼刂穼?shí)現(xiàn)漢字的滾動(dòng)顯示[10]。</p><p><b> 6 字模的提取</b></p><p> 在UCDOS中文宋體字庫中,每一個(gè)字由16行16列的點(diǎn)陣組成顯示。如果用 8位我們以UCDOS中
63、文宋體字庫為例,每一個(gè)字由16行16列的點(diǎn)陣組成顯示。即國標(biāo)漢字庫中的每一個(gè)字均由256點(diǎn)陣來表示[11]。我們可以把每一個(gè)點(diǎn)理解為一個(gè)像素,而把每一個(gè)字的字形理解為一幅圖像。事實(shí)上這個(gè)漢字屏不僅可以顯示漢字, 也可以顯示在256像素范圍內(nèi)的任何圖形。我們以顯示漢字的89S51單片機(jī)為例, 由于單片機(jī)的總線為8位一個(gè)字需要拆分為2個(gè)部分。 一般我們把它拆分為上部和下部,上部由8×16點(diǎn)陣組成,下部也由8×16點(diǎn)陣組成
64、。 在本例中單片機(jī)首先顯示的是左上角的第一列的上半部分,即第一列的P0.0---P0.7口。方向?yàn)镻0.0到P0.7 ,顯示漢字“大”時(shí),P0.5點(diǎn)亮,由上往下排列,為P0.0滅,P0.1 滅, P0.2 滅P0.3 滅, P0.4 滅, P0.5 亮, P0.6 滅, P0.7 滅。即二進(jìn)制00000100轉(zhuǎn)換為16進(jìn)制為 04H.。 上半部第一列完成后,繼續(xù)掃描下半部的第一列,為了接線的方便,我們?nèi)栽O(shè)計(jì)成由上往下掃描,即從P27向P
65、20方向掃描,可以看出此部分沒有燈亮,二進(jìn)制</p><p> 圖 6.1 點(diǎn)陣原理</p><p><b> 它的掃描代碼為:</b></p><p> {04H,00H,04H,02H,04H,02H,04H,04H </p><p> 04H,08H,04H,30H,05H,0C0H,0FEH,00H &l
66、t;/p><p> 05H,80H,04H,60H,04H,10H,04H,08H </p><p> 04H,04H,0CH,06H,04H,04H,00H,00H }</p><p> 如果通過描點(diǎn)來造字的話,任務(wù)量太大。現(xiàn)在有很多現(xiàn)成的漢字字模生成軟件, 我們就不必自己去畫表格算代碼了。軟件打開后輸入漢字,點(diǎn)“檢取”,十六進(jìn)制數(shù)據(jù)的漢字代碼即可自動(dòng)生成,但是
67、我們要根據(jù)自己硬件的連接方式來在選項(xiàng)中選擇取碼方式,然后把我們所需要的數(shù)據(jù)復(fù)制到我們的程序中即可。我們把行列總線接在單片機(jī)的I/0口,然后把上面分析到的掃描代碼送入總線,就可以得到顯示的漢字了。</p><p> 通過軟件提取 “單片機(jī)仿真”的單片機(jī)編程打下基礎(chǔ)。字模提取軟件是完成本設(shè)計(jì)的一個(gè)重要的輔助軟件,它能夠很容易的將需要的漢字翻譯成16×16的漢字字模。</p><p>
68、;<b> 7 軟件仿真調(diào)試</b></p><p> 7.1 Proteus軟件介紹</p><p> Proteus ISIS是英國Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的特點(diǎn)是:①實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿
69、真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。②支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。③提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)
70、變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2等軟件。④具有強(qiáng)大的原理圖繪制功能。總之,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大[11]。</p><p> 7.1.1 進(jìn)入Proteus ISIS</p><p> 雙擊桌面上的ISIS 7 Professiona
71、l圖標(biāo)或者單擊屏幕左下方的“開始”→“程序”→“Proteus 7 Professional” →“ISIS 7Professional”,出現(xiàn)如圖7.1所示屏幕,表明進(jìn)入Proteus ISIS集成環(huán)境。</p><p> 圖7.1 Proteus ISIS啟動(dòng)時(shí)的屏幕</p><p> 7.1.2 工作界面</p><p> Proteus ISIS的工
72、作界面是一種標(biāo)準(zhǔn)的Windows界面,如圖7.2所示。包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對(duì)象選擇按鈕、預(yù)覽對(duì)象方位控制按鈕、仿真進(jìn)程控制按鈕、預(yù)覽窗口、對(duì)象選擇器窗口、圖形編輯窗口。以下為主窗口和四個(gè)輸出窗口的主要菜單項(xiàng)。對(duì)于主窗口,在菜單項(xiàng)旁邊同時(shí)列出工具條中對(duì)應(yīng)的快捷鼠標(biāo)按鈕。</p><p> 圖7.2 Proteus ISIS的工作界面</p><p>
73、7.2 創(chuàng)建源代碼仿真文件</p><p> PROTEUS虛擬仿真系統(tǒng)將源代碼的編輯與編譯整合在統(tǒng)一設(shè)計(jì)環(huán)境中,所以我們可以直接編輯原程序和生成仿真代碼,所以使用時(shí)先要設(shè)置代碼生成具,單機(jī)“Source”下拉菜單中“DEFINE CODE GENERATION TOOLS”選項(xiàng),會(huì)出現(xiàn)如7.3所示點(diǎn)擊OK。點(diǎn)擊“Source”下拉菜單中“ADD/REMOVE SOURCE CODE FILES”對(duì)話框。在
74、“CODE GENERATION TOOL”欄內(nèi)選擇ASEM51,再點(diǎn)擊“NEW”按鈕,查找程序源,點(diǎn)擊“打開”,然后單機(jī)“Source”下拉菜單“BUILD ALL”選項(xiàng),生成可執(zhí)行的十六進(jìn)制的文件(.ASM)如圖7.4源程序在軟件中的編譯結(jié)果。</p><p> 7.3 source工作界面</p><p> 圖7.4源程序在軟件中的編譯結(jié)果</p><p>
75、;<b> 7.3仿真調(diào)試</b></p><p> 單擊仿真運(yùn)行開始按鈕,單擊仿真運(yùn)行結(jié)束按鈕,仿真結(jié)束[12]。本設(shè)計(jì)的PROTEUS仿真圖如圖7.4和圖7.5所示。</p><p><b> 圖7.4統(tǒng)仿真結(jié)果</b></p><p> 圖7.5系統(tǒng)仿真結(jié)果</p><p><b
76、> 結(jié) 論</b></p><p> 本文設(shè)計(jì)的16×16的點(diǎn)陣LED圖文顯示屏,電路簡(jiǎn)單,成本較低,且較容易擴(kuò)展成更大的顯示屏。顯示屏各點(diǎn)亮度均勻、充足、顯示圖形或文字穩(wěn)定、清晰無串?dāng)_;可用靜止、移入移出等多種顯示方式顯示圖形或文字。利用Proteus實(shí)現(xiàn)了對(duì)點(diǎn)陣式LED滾動(dòng)漢字顯示屏的仿真,完成了“單片機(jī)仿真”五個(gè)字滾動(dòng)顯示,達(dá)到了良好的設(shè)計(jì)效果。該仿真電路接近實(shí)際電路,可以
77、直接由該電路利用相關(guān)軟件設(shè)計(jì)印制電路板,加上電源電路和時(shí)鐘電路,就可以制作出實(shí)際的點(diǎn)陣式LED滾動(dòng)漢字顯示屏。通過前期仿真縮短了開發(fā)周期,降低了開發(fā)成本,達(dá)到事半功倍之成效。</p><p> 此設(shè)計(jì)是基于電子技術(shù)的應(yīng)用,以調(diào)研、搜集資料、方案為基礎(chǔ),擬訂了系統(tǒng)規(guī)劃,編程,調(diào)試的流程。本設(shè)計(jì)開拓了我的思維,使我深刻的體會(huì)到理論與實(shí)踐相結(jié)合的重要性,同時(shí)也解決了我以前在學(xué)習(xí)中遇到的許多專業(yè)知識(shí)問題。通過本設(shè)計(jì)的實(shí)
78、踐掌握,使我的專業(yè)知識(shí)更加系統(tǒng)化、結(jié)構(gòu)化。但由于水平有限,難免有遺漏、錯(cuò)誤之處,請(qǐng)大家給予指正。</p><p><b> 致 謝</b></p><p> 感謝我的導(dǎo)師栗紅霞老師,我的本次畢業(yè)設(shè)計(jì)和論文是在他的悉心指導(dǎo)和關(guān)心下完成的,栗老師給予我很大的關(guān)心和支持,正是由于這些細(xì)微的關(guān)懷,一直激勵(lì)著我去努力做好本次畢業(yè)設(shè)計(jì),栗老師精湛的專業(yè)知識(shí)、耐心的工作態(tài)度和
79、真誠的待人風(fēng)格給我留下了非常深刻的印象,對(duì)我以后的工作和生活將產(chǎn)生很大的影響,栗老師工作能力實(shí)際應(yīng)用能力也相當(dāng)強(qiáng),給予了我相當(dāng)大的幫助,真摯的向?qū)熣f聲謝謝。</p><p> 感謝幫助過我的所有同學(xué),特別是在我的設(shè)計(jì)遇到困難的時(shí)候,他們?cè)诰裆虾托袆?dòng)上,都給予我很大的支持,鼓勵(lì)我不要泄氣,勇敢的面對(duì)困難,使我終于突破了設(shè)計(jì)的難點(diǎn),順利完成了此次畢業(yè)設(shè)計(jì)。我也感謝本科這兩年里所有知道過我的老師們,他們教授給我的
80、各方面專業(yè)知識(shí)讓我在設(shè)計(jì)中能更好的運(yùn)用以及發(fā)揮,感謝他們對(duì)我無私的教誨和幫助。 </p><p> 總之,在這次課程設(shè)計(jì)中,我受益匪淺,學(xué)到了很多書本上所沒有的東西,懂得了理論和實(shí)際聯(lián)系的重要性。在以后的學(xué)習(xí)中,我不僅要把理論知識(shí)掌握牢固,更要提高自己的動(dòng)手能力和分析能力。</p><p><b> 參考文獻(xiàn)</b></p><p>
81、[1] Michael D Ciletti. Advanced Digital Design with the Ver-ilog HDL, 2004:64-69.</p><p> [2]元增民.單片機(jī)原理與應(yīng)用[M].長沙:國防科學(xué)大學(xué)出版社,2006:15-18,30.</p><p> [3]馬忠梅.單片機(jī)外圍電路設(shè)計(jì).北京:北京航空航天大學(xué)出版社,2005:42-46.<
82、/p><p> [4]李全利.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2004:23-30.</p><p> [5] AT89C51 DATA SHEEP Philips Semiconductors 1999:12-19.</p><p> [6]黃繼昌.電子元器件應(yīng)用[M].北京:人民郵電出版社,2004:65-70.</p>
83、<p> [7]周雪主.電子技術(shù)基礎(chǔ)[M].北京:電子工業(yè)出版社,2003:104-107.</p><p> [8]羅亞非.凌陽十六位單片機(jī)應(yīng)用基礎(chǔ)[M]. 北京:北京航天航空出版社,2001:87-89.</p><p> [9]清源計(jì)算機(jī)工作室.Proteus軟件入門.北京:機(jī)械工業(yè)出版社,2004:20-34.</p><p> [10]
84、侯玉寶. 基于Proteus的51系列單片機(jī)設(shè)計(jì)與仿真.北京:電子工業(yè)出版社,2008:112-118.</p><p> [11]朱清慧,張鳳蕊,翟天嵩,王志奎.Proteus教程—電子線路設(shè)計(jì)、制版與仿真.北京:清華大學(xué)出版社,2008:224-228,235-240.</p><p><b> 附錄 A</b></p><p> 1
85、6x16的點(diǎn)陣LED電子圖文顯示屏的源程序采用匯編語言編寫,以下為用匯編語言編寫的字符顯示控制程序:</p><p><b> ORG0000H</b></p><p><b> AJMPMAIN</b></p><p><b> ORG0030H</b></p><p
86、> MAIN:MOVDPTR,#TAB;字碼表初址賦值</p><p> MOVR1,#00H;列制碼</p><p> MOVR4,#96;移動(dòng)“ ”及“單片機(jī)仿真”6個(gè)字符共96列</p><p> CM:MOVR5,#5;每屏反復(fù)顯示5次</p><p> MOVR3,#16;列數(shù)<
87、/p><p> C1:MOVR2,#0;取碼指針</p><p> C16:MOVP0,#00H</p><p> MOVP2,#00H;關(guān)顯示</p><p><b> CLRP3.0</b></p><p><b> MOVA,R2</b>&l
88、t;/p><p> MOVCA,@A+DPTR;取當(dāng)前列顯示字碼的第一個(gè)字節(jié)</p><p> MOVP0,A;送1~8行控制口</p><p><b> INCR2</b></p><p><b> MOVA,R2</b></p><p> MOVCA
89、,@A+DPTR;取當(dāng)前列的顯示字碼的第二個(gè)字節(jié)</p><p> MOVP2,A;送9~15行控制口</p><p><b> INCR2</b></p><p> MOVP1,R1;送列控制碼</p><p><b> INCR1</b></p><
90、p> ACALLD1MS;顯示2MS</p><p> ACALLD1MS</p><p> DJNZR3,C16;一屏16列是否顯示完</p><p> MOVR3,#16</p><p> DJNZR5,C1;未顯示5次,繼續(xù)</p><p> INCDPTR;一屏反復(fù)
91、顯示5次完,字碼表初值加2</p><p><b> INCDPTR</b></p><p> DJNZR4,CM;96列未移動(dòng)完,繼續(xù)</p><p> AJMPMAIN;96列移動(dòng)完,返回,重新從“ ”開始顯示</p><p> D1MS:MOVR6,#2</p><p
92、> MOVR7,#248</p><p><b> DJNZR7,$</b></p><p> DJNZR6,$-4</p><p><b> RET</b></p><p><b> TAB:</b></p><p> DB 0
93、00H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ;</p><p> DB 000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ;&qu
94、ot; ",</p><p> DB 000H ,000H ,000H ,008H ,000H ,008H ,0E0H ,008H ,0F4H ,00DH ,054H ,005H ,0F4H ,07FH ,0F8H ,07FH ;</p><p> DB 01EH ,005H ,0FEH ,005H ,0FAH ,006H ,010H ,002H ,000H ,006H ,0
95、00H ,004H ,000H ,000H ,000H ,000H ;"單",0</p><p> DB 000H ,000H ,000H ,000H ,000H ,010H ,000H ,01CH ,0FCH ,00FH ,0FCH ,003H ,040H ,002H ,040H ,002H ;</p><p> DB 07EH ,07FH ,03EH ,07FH
96、 ,020H ,000H ,020H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ,000H ;"片",1</p><p> DB 000H ,008H ,040H ,00CH ,040H ,006H ,0DCH ,03FH ,0FEH ,03FH ,022H ,011H ,020H ,01DH ,0F0H ,00FH ;</p>
97、;<p> DB 0F0H ,003H ,0F0H ,00FH ,0F0H ,01FH ,010H ,010H ,000H ,01CH ,000H ,01CH ,000H ,010H ,000H ,000H ;"機(jī)",2</p><p> DB 000H ,001H ,080H ,001H ,0C0H ,000H ,0F0H ,03FH ,0FCH ,03FH ,04CH ,
98、018H ,040H ,00CH ,040H ,027H ;</p><p> DB 0CCH ,063H ,0ECH ,079H ,028H ,01FH ,020H ,007H ,020H ,000H ,020H ,000H ,000H ,000H ,000H ,000H ;"仿",3</p><p> DB 000H ,000H ,000H ,010H ,000
99、H ,098H ,000H ,0C8H ,0E8H ,06FH ,0E8H ,03FH ,07CH ,01BH ,07EH ,00AH ;</p><p> DB 0E6H ,03FH ,0E4H ,07FH ,004H ,06CH ,000H ,004H ,000H ,004H ,000H ,000H ,000H ,000H ,000H ,000H ;"真",4</p>&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- LED顯示屏接口電路設(shè)計(jì).pdf
- LED大顯示屏驅(qū)動(dòng)電路設(shè)計(jì).pdf
- 畢業(yè)設(shè)計(jì)---led顯示屏設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)-----led點(diǎn)陣顯示屏
- 畢業(yè)設(shè)計(jì)----led點(diǎn)陣顯示屏
- 畢業(yè)設(shè)計(jì)--旋轉(zhuǎn)led顯示屏
- led電子顯示屏畢業(yè)設(shè)計(jì)
- led數(shù)字顯示屏的畢業(yè)設(shè)計(jì)
- led燈電子顯示屏的畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的led顯示屏設(shè)計(jì)
- led顯示屏設(shè)計(jì)
- led點(diǎn)陣顯示屏畢業(yè)設(shè)計(jì)文獻(xiàn)綜述
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的led顯示屏設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的led電子顯示屏
- 畢業(yè)設(shè)計(jì)---旋轉(zhuǎn)led動(dòng)態(tài)顯示屏的設(shè)計(jì)
- 畢業(yè)論文---led顯示屏設(shè)計(jì)
- led顯示屏設(shè)計(jì)-論文
- 遠(yuǎn)程控制led點(diǎn)陣顯示屏畢業(yè)設(shè)計(jì)
- led點(diǎn)陣顯示屏設(shè)計(jì)
- 基于FPGA的LED顯示屏設(shè)計(jì).pdf
評(píng)論
0/150
提交評(píng)論