版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于51單片機(jī)的LED滾動(dòng)顯示系統(tǒng)</p><p><b> 摘 要</b></p><p> LED顯示屏是一種通過(guò)控制半導(dǎo)體發(fā)光的顯示方式,它是由很多個(gè)紅色的發(fā)光二極管組成,靠燈的亮滅來(lái)顯示字符。LED顯示屏分為數(shù)碼顯示屏、圖文顯示屏和視頻顯示頻。均由LED矩陣塊組成。目前由于LED顯示屏造價(jià)昂貴,主要應(yīng)用于比較較高檔的場(chǎng)所,主要集中
2、在城市的繁華場(chǎng)所。在舉辦的2010年上海世博會(huì)’未來(lái)各項(xiàng)大項(xiàng)運(yùn)動(dòng)賽事等新增需求,都將促使LED顯示屏的大規(guī)模發(fā)展。此外,已架設(shè)的大型LED顯示屏幕梅10年將歷經(jīng)一次換機(jī)潮,隨著人們生活水平的提高,戶(hù)外LED顯示屏將逐漸應(yīng)用于各個(gè)行業(yè)。</p><p> 本設(shè)計(jì)主要實(shí)現(xiàn)16*16LED顯示屏對(duì)文字及簡(jiǎn)單圖像的顯示,擴(kuò)展功能有實(shí)時(shí)鐘及實(shí)時(shí)溫度采集,并通過(guò)LCD1602及LED點(diǎn)陣屏靜態(tài)及滾動(dòng)顯示。設(shè)計(jì)分為三大步,分
3、別是軟件設(shè)計(jì),硬件仿真及實(shí)物制作,兼顧理論性及實(shí)用性,充分體現(xiàn)了理論與實(shí)踐相結(jié)合,設(shè)計(jì)過(guò)程中不僅學(xué)到了很多有用的知識(shí),也增長(zhǎng)了自己的專(zhuān)業(yè)技能,提高了自己的動(dòng)手能力。</p><p> 關(guān)鍵字: LED 顯示屏 發(fā)光二極管 半導(dǎo)體 </p><p><b> Abstract</b></p><p> LED display is t
4、he display mode controlling by the semiconductor light emitting diode, it probably looks like that composition by a number of led is usually a red light-emitting diodes which show character by the LED on and off , LED di
5、splay is divided into Digital display, Graphic display and Video display, which is compositioned by LED matrix block, As the cost of LED display expensive currently, mainly used in relatively high places, concentrated in
6、 the cities busting place, being held in the</p><p> The main achievement of this design is 16*16 LED display show the text and simple image, the extension function include real-time clock and real-time tem
7、perature measurement which is displayed by LCD1602 and LED dot matrix display screen. This design is divided into three big steps, which is software design, hardware simulation and in-kind production, fully reflects the
8、combination of theory and practice. From this design process, I'm not only learned a lot of useful knowledge, also increase my</p><p> Keywords : LED Display Semicondutor </p><p><
9、;b> 目 錄</b></p><p><b> 1 緒論3</b></p><p> 1.1 課題背景及意義5</p><p> 1.2 本課題相關(guān)介紹………………………………………………7</p><p> 1.3 論文章節(jié)安排7</p><p>
10、2 系統(tǒng)的硬件部分設(shè)計(jì)8</p><p> 2.1 設(shè)計(jì)要求8</p><p> 2.2 設(shè)計(jì)基本方案8</p><p> 2.3 硬件電路芯片介紹8</p><p> 2.3.1 單片微型計(jì)算機(jī)簡(jiǎn)介8</p><p> 2.3.2 系統(tǒng)芯片的選擇9</p><p&
11、gt; 2.3.3 主控制單片機(jī)9</p><p> 2.3.4 80C51接口說(shuō)明10</p><p> 2.4 LED點(diǎn)陣制作12</p><p> 2.4.1 顯示模塊的選擇12</p><p> 2.4.2 LED驅(qū)動(dòng)模塊的選擇12</p><p> 2.4.3 主要芯片74L
12、S138的介紹12</p><p> 2.5 16*16 LED點(diǎn)陣顯示制作14</p><p> 2.5.1 16*16 LED點(diǎn)陣的內(nèi)部結(jié)構(gòu)及工作原理14</p><p> 2.6 硬件系統(tǒng)的整體設(shè)計(jì)圖與原理分析16</p><p> 2.7 小結(jié)18</p><p> 3 系統(tǒng)的軟件
13、部分設(shè)計(jì)19</p><p> 3.1 程序設(shè)計(jì)思路與結(jié)構(gòu)19</p><p> 3.1.1 程序設(shè)計(jì)思路19</p><p> 3.1.2 程序設(shè)計(jì)流程圖19</p><p> 3.2 模塊程序設(shè)計(jì)21</p><p> 3.2.1 系統(tǒng)初始化21</p><p&g
14、t; 3.2.2 LED動(dòng)態(tài)顯示21</p><p> 3.2.3 漢字顯示程序設(shè)計(jì)21</p><p> 3.2.4 顯示設(shè)計(jì)22</p><p> 3.3 小結(jié)23</p><p> 4 系統(tǒng)仿真24</p><p> 4.1 仿真環(huán)境介紹24</p><p&
15、gt; 4.2 仿真過(guò)程與結(jié)果24</p><p> 4.2.1 繪制電路圖24</p><p> 4.2.2 HEX文件的生成25</p><p> 4.2.3 調(diào)試與結(jié)果25</p><p> 4.3 小結(jié)27</p><p><b> 結(jié)束語(yǔ)28</b>&l
16、t;/p><p><b> 致 謝29</b></p><p> 參 考 文 獻(xiàn)30</p><p> 附錄A 點(diǎn)陣電路整體硬件電路圖31</p><p><b> 緒論</b></p><p> 隨著電子技術(shù)和信息技術(shù)的迅速發(fā)展,LED的應(yīng)用范圍越來(lái)越廣泛。
17、它作為一個(gè)重要的宣傳平臺(tái),已經(jīng)受到全社會(huì)的普遍認(rèn)可和廣泛使用。如今,它幾乎成為各個(gè)廣場(chǎng)和大型超市的必備品。然而這些功能的實(shí)現(xiàn)離不開(kāi)單片機(jī)的功勞。單片機(jī)是一種微型處理器,負(fù)責(zé)數(shù)據(jù)的接收、發(fā)送和處理的工作。LED顯示屏則可以顯示變化的數(shù)字、文字、圖形和圖像等。它不僅可以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏等無(wú)法比擬的優(yōu)點(diǎn)[1]。點(diǎn)陣顯示器的特點(diǎn)是可以按照實(shí)物所需要的大小、形狀和顏色進(jìn)行組合,用單片機(jī)控制實(shí)行各種文字
18、或圖形的變化,達(dá)到廣告宣傳和提示的目的。</p><p> 1.1 課題背景及意義</p><p> LED點(diǎn)陣電子顯示屏是集微電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理技術(shù)于一體的大型顯示屏系統(tǒng)。它以其色彩鮮艷動(dòng)、態(tài)范圍廣、亮度高、壽命長(zhǎng)、工作穩(wěn)定可靠等優(yōu)點(diǎn)而成為眾多顯示媒體以及戶(hù)外作業(yè)顯示的理想選擇。點(diǎn)陣式LED顯示技術(shù)是近幾年發(fā)展較快的顯示技術(shù)之一,其抗干擾能力強(qiáng)等特點(diǎn)使得其在戶(hù)外廣告、公
19、共告示等方面得到了廣泛的應(yīng)用,因此研究點(diǎn)陣式LED顯示屏接口與控制技術(shù)具有較高的實(shí)際應(yīng)用價(jià)值。LED顯示屏的應(yīng)用涉及社會(huì)經(jīng)濟(jì)的許多領(lǐng)域,主要包括:</p><p> (1) 證券交易、金融信息顯示。</p><p> (2) 機(jī)場(chǎng)航班動(dòng)態(tài)信息顯示。</p><p> (3) 車(chē)站旅客引導(dǎo)信息顯示。</p><p> (4) 體
20、育場(chǎng)館、道路交通信息顯示。</p><p> (5) 調(diào)度指揮中心顯示。</p><p> (6) 郵政、電信、商場(chǎng)購(gòu)物中心等服務(wù)領(lǐng)域的業(yè)務(wù)宣傳顯示。</p><p> (7) 廣告媒體新產(chǎn)品宣傳顯示等。 </p><p> 實(shí)際生活中經(jīng)常會(huì)遇到一些特殊要求的動(dòng)態(tài)顯示,比如電梯運(yùn)行中指示箭頭的上下移動(dòng)、某些智能儀表幅值的條形顯
21、示、廣告中廠家的商標(biāo)顯示等。這時(shí)一般的顯示系統(tǒng)就很難達(dá)到要求[2]。另外,由于受到存儲(chǔ)器本身的局限,其特殊字符或圖案也往往難以顯示,同時(shí)顯示內(nèi)容也不能隨意更改。</p><p> 1.2 本課題相關(guān)介紹</p><p> 本課題要求自選單片機(jī)及其周邊芯片,設(shè)計(jì)點(diǎn)陣LED與單片機(jī)的接口電路,并編制單片機(jī)的軟件,并對(duì)系統(tǒng)進(jìn)行仿真調(diào)試。該設(shè)計(jì)提出采用軟件仿真平Proteus對(duì)點(diǎn)陣式LED滾
22、動(dòng)漢字顯示屏進(jìn)行仿真,在Proteus中完成硬件電路的設(shè)計(jì),同時(shí)采用KeilC集成開(kāi)發(fā)平臺(tái)設(shè)計(jì)程序,可在計(jì)算機(jī)上仿真實(shí)現(xiàn)點(diǎn)陣滾動(dòng)漢字顯示屏的滾動(dòng)顯示。</p><p> 本設(shè)計(jì)提出一種利用單片機(jī)控制的LED顯示系統(tǒng)通訊方法。該方法可以對(duì)顯示內(nèi)容(包括漢字和特殊圖符)進(jìn)行實(shí)時(shí)控制,從而實(shí)現(xiàn)滾動(dòng)的動(dòng)態(tài)顯示效果。該方法同時(shí)還可以調(diào)節(jié)動(dòng)態(tài)顯示的速度,并且用戶(hù)也可以同時(shí)進(jìn)行顯示效果的預(yù)覽仿真,顯示內(nèi)容亦可以較方便的修改[
23、3]。</p><p><b> 論文章節(jié)安排</b></p><p> 在撰寫(xiě)此論文之前,我在學(xué)校的圖書(shū)館里參閱了大量有關(guān)單片機(jī)介紹和LED顯示電路設(shè)計(jì)等相關(guān)書(shū)籍,并且通過(guò)網(wǎng)絡(luò)查找搜集了較多的相關(guān)論文。經(jīng)過(guò)反復(fù)多次對(duì)這些資料進(jìn)行詳細(xì)的摘要和嚴(yán)謹(jǐn)?shù)膶?duì)比整理,我從中學(xué)習(xí)到很多新的相關(guān)專(zhuān)業(yè)知識(shí),加深并豐富了我對(duì)單片機(jī)的理解。最后,我寫(xiě)出了這篇點(diǎn)陣LED顯示電路和系統(tǒng)設(shè)
24、計(jì)的論文。其中各個(gè)章節(jié)安排如下:</p><p> 第一章 緒論主要講述該設(shè)計(jì)的背景,意義以及設(shè)計(jì)思想。</p><p> 第二章 系統(tǒng)的總體方案設(shè)計(jì)主要是硬件組成部分及與設(shè)計(jì)電路相關(guān)的芯片介紹。</p><p> 第三章 系統(tǒng)的軟件部分。</p><p> 第四章 系統(tǒng)仿真,顯示符合設(shè)計(jì)要求的顯示結(jié)果。</p><
25、;p> 2 系統(tǒng)的硬件部分設(shè)計(jì)</p><p> 本設(shè)計(jì)主要采用單片機(jī)及其周邊芯片,設(shè)計(jì)點(diǎn)陣LED與單片機(jī)的接口電路。</p><p><b> 2.1 設(shè)計(jì)要求</b></p><p> (1) 通過(guò)對(duì)80C51單片機(jī)的C語(yǔ)言編程,實(shí)現(xiàn)漢字的左移滾動(dòng)顯示。</p><p> (2) 成本低,功能
26、強(qiáng),設(shè)計(jì)明了化實(shí)用化。</p><p> (3) 動(dòng)態(tài)顯示過(guò)程的仿真成果中沒(méi)有明顯的抖動(dòng)。</p><p> 2.2 設(shè)計(jì)基本方案</p><p> 為使該模塊化的點(diǎn)陣式LED顯示屏控制系統(tǒng)使用更加方便,并具有較高的靈活性和視覺(jué)舒適性,我對(duì)系統(tǒng)的硬件做了非常精心的設(shè)計(jì)[4]。本設(shè)計(jì)的硬件電路包括:主控單片機(jī)模塊、譯碼器選擇數(shù)據(jù)模塊、LED顯示模塊這三大模塊
27、。總體組成框圖如圖2.1所示。</p><p> 圖2.1 總體結(jié)構(gòu)框圖</p><p> 圖2.1 簡(jiǎn)略的描述了系統(tǒng)的結(jié)構(gòu),本系統(tǒng)先由主控單片機(jī)來(lái)控制譯碼器進(jìn)行位選,然后再將段碼的值通過(guò)主控單片機(jī)的I/O口送往LED顯示模塊進(jìn)行漢字的顯示。</p><p> 2.3 硬件電路芯片介紹</p><p> 該設(shè)計(jì)主要介紹LED顯示電
28、路所采用的主要芯片,如單片機(jī)80C51,譯碼器74LS138。此外,還簡(jiǎn)要闡述了選取這些芯片的優(yōu)點(diǎn)。</p><p> 2.3.1 單片微型計(jì)算機(jī)簡(jiǎn)介</p><p> 單片微型計(jì)算機(jī)(Single Chip Micro Computer)簡(jiǎn)稱(chēng)單片機(jī),它是一種把組成微型計(jì)算機(jī)的各功能部件:中央處理單元CPU、一定容量的隨機(jī)存儲(chǔ)器RAM和只讀存儲(chǔ)器ROM、I/O接口電路、定時(shí)器/計(jì)數(shù)器
29、以及串行口等制作在一塊芯片中的計(jì)算機(jī),從而實(shí)現(xiàn)微型計(jì)算機(jī)的基本功能[5]。單片機(jī)具有結(jié)構(gòu)簡(jiǎn)單、控制功能強(qiáng)、可靠性高、體積小、價(jià)格低等特點(diǎn),在家用電器、智能化儀器、工業(yè)控制以及火箭導(dǎo)航尖端技術(shù)領(lǐng)域都發(fā)揮著十分重要的作用[6]。單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖如下圖2.2所示。</p><p> 圖2.2 單片機(jī)內(nèi)部結(jié)構(gòu)示意圖 圖2.3 單片機(jī)應(yīng)用系統(tǒng)組成示意圖</p><p
30、> 單片機(jī)實(shí)質(zhì)上是一個(gè)芯片,在實(shí)際應(yīng)用中通常很難直接把單片機(jī)和受控對(duì)象進(jìn)行電氣連接,而是必須外加各種擴(kuò)展接口電路以至外部設(shè)備,連同受控對(duì)象和單片機(jī)程序軟件構(gòu)成一個(gè)單片機(jī)應(yīng)用系統(tǒng)。單片機(jī)應(yīng)用系統(tǒng)是以單片機(jī)為核心,配以輸入、輸出、顯示、測(cè)量和控制等外圍電路和軟件能實(shí)現(xiàn)一種或多種功能的實(shí)用系統(tǒng)。單片機(jī)應(yīng)用系統(tǒng)的組成示意圖如上圖2.3所示[7]。</p><p> 2.3.2 系統(tǒng)芯片的選擇 </p&g
31、t;<p> 方案一:8031芯片內(nèi)部無(wú)ROM,需要外擴(kuò)程序存儲(chǔ)器,由此造成電路焊接的困難,況且使用8031還需要另外購(gòu)買(mǎi)其他的芯片,從而造成成本比較高,且性?xún)r(jià)比低。</p><p> 方案二:80C51芯片內(nèi)部有ROM,且片內(nèi)ROM全部采用Flash ROM,它能夠在3V的超低壓工作,與51系列單片機(jī)完全兼容。</p><p> 因此,本設(shè)計(jì)選擇80C51芯片。<
32、;/p><p> 2.3.3 主控制單片機(jī)</p><p> 80C51是一種高性能CMOS8位微處理器,俗稱(chēng)單片機(jī),它帶有4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱(chēng)單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高
33、密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的80C51是一種高效微控制器, 80C2051是它的一種精簡(jiǎn)版本。80C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案[8]。80C51引腳即外觀如圖2.4所示。</p><p> 圖2.4 80C51引腳外觀圖</p><p>
34、 2.3.4 80C51接口說(shuō)明</p><p> Vss(20腳):接地。</p><p> VCC(40腳):主電源+5V。</p><p> XTAL1(19腳):接外部晶體的一端。在片內(nèi)它是振蕩電路反相放大器的輸入端。在采用外部時(shí)鐘時(shí),對(duì)于HMOS單片機(jī),該端引腳必須接地;對(duì)于CHMOS單片機(jī),此引腳作為驅(qū)動(dòng)端。</p><p&g
35、t; XTAL2(18腳):接外部晶體的另一端。在片內(nèi)它是個(gè)振蕩電路反相放大器輸出端,振蕩電路的頻率是晶體振蕩頻率。若需采用外部時(shí)鐘電路,對(duì)于HMOS單片機(jī),該引腳輸入外部時(shí)鐘脈沖;對(duì)于CHMOS單片機(jī),此引腳應(yīng)懸浮。</p><p> RST(9腳):?jiǎn)纹瑱C(jī)剛剛接上電源時(shí),其內(nèi)部各寄存器處于隨機(jī)狀態(tài),在該腳輸入24個(gè)時(shí)鐘周期寬度以上的高電平將使單片機(jī)復(fù)位。</p><p> PSE
36、N(29腳):在訪問(wèn)片外程序存儲(chǔ)器時(shí),此端輸出負(fù)脈沖作為存儲(chǔ)器讀選通信號(hào)。CPU在向片外存儲(chǔ)器取指令期間,PSEN信號(hào)在12個(gè)時(shí)鐘周期中兩次生效。不過(guò),在訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效PSEN信號(hào)不出現(xiàn)。PSEN端同樣可驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。我們根據(jù)PSEN、ALE和XTAL2輸出端是否有信號(hào)輸出,可以判別80C51是否在工作。</p><p> ALE/(30腳):地址鎖存控制信號(hào)(ALE)是訪問(wèn)外部程序
37、存儲(chǔ)器時(shí),鎖存低8位地址的輸出脈沖。在Flash編程時(shí),此引腳()也用作編程輸入脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可以用來(lái)作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過(guò)。如果需要,通過(guò)將地址為8EH的SFR的第0位置“1”,ALE操作將無(wú)效。這一位置“1”,ALE僅在執(zhí)行MOVX或MOVC指令時(shí)有效。否則,ALE 將被微弱拉高。這個(gè)ALE 使能標(biāo)志位(地址為8EH的S
38、FR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無(wú)效。</p><p> EA/VPP(31腳):當(dāng)EA端輸入高電平時(shí),CPU從片內(nèi)程序存儲(chǔ)器地址0000H單元開(kāi)始執(zhí)行程序。當(dāng)?shù)刂烦?KB時(shí),將自動(dòng)執(zhí)行片外程序存儲(chǔ)器的程序。當(dāng)EA輸入低電平時(shí),CPU僅訪問(wèn)片外程序存儲(chǔ)器。在對(duì)87C51EPROM編程時(shí),此引腳用于施加編程電壓VPP。</p><p><b> 輸入/輸出引腳
39、:</b></p><p> (1) P0.0~P0.7 (39腳~32腳)。</p><p> (2) P1.0~P1.7 (1腳 ~ 8 腳)。</p><p> (3) P2.0~P2.7 (26腳~21腳)。</p><p> (4) P3.
40、0~P3.7 (10腳~17腳)。</p><p> 80C51單片機(jī)P3口的第二功能如表2.1所示。</p><p> 表2.1 80C51單片機(jī)P3口第二功能</p><p> 一個(gè)16*16的點(diǎn)陣顯示系統(tǒng)由單片機(jī)80C51,74LS138,1個(gè)16*16的LED點(diǎn)陣模塊,單片機(jī)的時(shí)鐘復(fù)位電路和P0口的上拉電阻組成。</p&g
41、t;<p> 16*32的點(diǎn)陣顯示電路由單片機(jī)80C51,4個(gè)74LS138和2個(gè)16*16的LED點(diǎn)陣模塊組成。該電路所設(shè)計(jì)的電子屏可顯示多個(gè)漢字,并實(shí)現(xiàn)左移滾動(dòng)。</p><p> 2.4 LED點(diǎn)陣制作</p><p> LED(Light Emitting Diode),50年前人們已經(jīng)了解半導(dǎo)體材料可產(chǎn)生光線的基本知識(shí),第一個(gè)商用二極管產(chǎn)生于1960年。LE
42、D是英文Light Emitting Diode(發(fā)光二極管)的縮寫(xiě),它的基本結(jié)構(gòu)是一塊電致發(fā)光的半導(dǎo)體材料,置于一個(gè)有引線的架子上,然后四周用環(huán)氧樹(shù)脂密封,即固體封裝,所以能起到保護(hù)內(nèi)部芯線的作用,所以LED的抗震性能好[9]。點(diǎn)陣式LED的顯示采用逐列掃描方式。工作時(shí),由單片機(jī)取出第一列需要顯示的內(nèi)容經(jīng)延時(shí)一段時(shí)間后再進(jìn)行下一列點(diǎn)陣數(shù)據(jù)的顯示。需要注意的是,每次只能選通一列數(shù)據(jù),即要通過(guò)不斷的逐列掃描變換來(lái)實(shí)現(xiàn)漢字或字符的顯示。&l
43、t;/p><p> 2.4.1 顯示模塊的選擇</p><p> 方案一:點(diǎn)陣顯示,是由八行八列的發(fā)光二極管集成在一塊電路上組成,主要用來(lái)顯示漢字,同時(shí)也能顯示數(shù)字和少量圖像。而且程序簡(jiǎn)單,顯示的效果比較清晰。</p><p> 方案二:LED數(shù)碼管靜態(tài)顯示,電路容易理解且驅(qū)動(dòng)的程序簡(jiǎn)單,多片七段譯碼器驅(qū)動(dòng)顯示,這不僅增加了成本,還需要占用單片機(jī)多個(gè)I/O口,也
44、給電路的焊接帶來(lái)一定的困難,因此不選用這種方案作為顯示模塊。</p><p> 經(jīng)過(guò)兩種方案的比較,最后選擇方案一:LED的點(diǎn)陣顯示。</p><p> 2.4.2 LED驅(qū)動(dòng)模塊的選擇</p><p> 方案一:采用靜態(tài)鎖存方式,將每一個(gè)LED發(fā)光管的一端接至單片機(jī)的一個(gè)I/O口,另一端通過(guò)電阻接電源。這種方法可以直接驅(qū)動(dòng)LED,原理簡(jiǎn)單,驅(qū)動(dòng)能力強(qiáng),LE
45、D的亮度也可以通過(guò)限流電阻調(diào)節(jié),非常方便,但此種方法太浪費(fèi)單片機(jī)的I/O口,只適合于較小的系統(tǒng)。</p><p> 方案二:采用動(dòng)態(tài)掃描方式,通過(guò)三極管驅(qū)動(dòng)并聯(lián)在一起的LED發(fā)光管的一端(共陰極或共2端),LED發(fā)光管的另一腳接通用I/O口,控制其亮滅。該方法能驅(qū)動(dòng)較多的LED,控制方式較靈活,而且節(jié)省單片機(jī)的資源[10]。</p><p> 比較以上兩種方案,系統(tǒng)設(shè)計(jì)中采用方案二。&
46、lt;/p><p> 2.4.3 主要芯片74LS138的介紹</p><p> 譯碼器是組合邏輯電路的一個(gè)重要的器件,芯片74LS138為 3線8線譯碼器, 74LS138譯碼器的引腳(管腳)如下圖2.5所示。</p><p> 圖2.5 74LS138的引腳圖</p><p> 所謂譯碼,就是將每一組代碼的含意翻譯出來(lái)的過(guò)程。譯碼
47、是編碼的逆過(guò)程。廣泛被使用的譯碼器是74LS138譯碼器,因此該設(shè)計(jì)中采用74LS138且其作用也就是將一組碼轉(zhuǎn)換為想要的確定的信息。</p><p> 74LS138為3線~8線譯碼器,共有54/74S138和54/74LS138 兩種線路結(jié)構(gòu)型式。其工作原理:</p><p> 當(dāng)一個(gè)選通端(E3)為高電平,另兩個(gè)選通端(E1和E2)為低電平時(shí),可將地址端(A、B、C)的二進(jìn)制編碼
48、在一個(gè)對(duì)應(yīng)的輸出端以低電平的方式譯出。利用E1、E2和E3可級(jí)聯(lián)擴(kuò)展成一個(gè)24線的譯碼器;若外接一個(gè)反相器還可以級(jí)聯(lián)擴(kuò)展成為32線譯碼器。若將選通端中的一個(gè)作為數(shù)據(jù)的輸入端時(shí),74LS138還可作數(shù)據(jù)分配器。假設(shè)地址端的值為001,那么則說(shuō)明其/Y1輸出口是有效的,且其輸出值為10111111。假設(shè)地址端的值為010,那么則說(shuō)明其/Y2輸出口是有效的,且其輸出值為11011111。假設(shè)地址端的值為011,那么則說(shuō)明其/Y2輸出口是有效的
49、,且其輸出值為11101111。</p><p> 在該畢業(yè)設(shè)計(jì)中,由于單片機(jī)中的P2口只有八個(gè)數(shù)據(jù)線,顯然不夠三十二個(gè)數(shù)據(jù)使用。因此,74LS138譯碼器在此是用于擴(kuò)展數(shù)據(jù)的輸入端的。4個(gè)74LS138譯碼器正好一共有三十二個(gè)輸出端口,于是就對(duì)應(yīng)了LED顯示屏中的三十二個(gè)列選端。滿足了16*32點(diǎn)陣式LED顯示屏的列需求。</p><p> 74LS138譯碼器引腳功能如表2.2所示
50、。</p><p> 表2.2 74LS138譯碼器功能表</p><p> 2.5 16*16 LED點(diǎn)陣顯示制作</p><p> 我們以Version1.0字模精靈為例,每一個(gè)漢字由一個(gè)16行16列的點(diǎn)陣組成顯示。即國(guó)標(biāo)漢字庫(kù)中的每一個(gè)字均由256點(diǎn)陣來(lái)表示。</p><p> 2.5.1 16*16 LED點(diǎn)陣的內(nèi)部結(jié)構(gòu)
51、及工作原理</p><p> 我們可以把每一個(gè)點(diǎn)理解為一個(gè)像素,而把每一個(gè)字的字形理解為一幅圖像。事實(shí)上這個(gè)漢字屏幕不僅可以顯示漢字,也可以顯示在256像素范圍內(nèi)的任何圖形。這里我們以“尚”字說(shuō)明,如圖2.6所示。</p><p> 圖2.6 “尚”字顯示圖</p><p> 用8位的80C51單片機(jī)控制,由于單片機(jī)的總線為8位,一個(gè)字需要拆分為2個(gè)部分。在
52、此我們把它拆分為上部和下部,上部由8*16點(diǎn)陣組成,下部也由8*16點(diǎn)陣組成。</p><p> 在本例中單片機(jī)首先顯示的是左上角的第一列的上半部分,即第0列的P00~P07口。方向?yàn)镻00到P07,顯示漢字“學(xué)”時(shí),由上往下排列,為P00亮,P01滅,P02滅,P03滅,P04滅,P05滅,P 06滅,P 07 滅。即二進(jìn)制10000000,轉(zhuǎn)換為16進(jìn)制為 80H。</p><p>
53、 第一列的上半部完成后,繼續(xù)掃描第一列的下半部,為了接線的方便,我們?nèi)栽O(shè)計(jì)成由上往下掃描,從上圖可以看到,這一列全部為不亮,即為00000000,16進(jìn)制則為00H。 </p><p> 然后單片機(jī)轉(zhuǎn)向第二列的上半部,P01點(diǎn)亮,為01000000,即16進(jìn)制40h.這一列完成后繼續(xù)進(jìn)行下半部分的掃描,P20點(diǎn)亮,為二進(jìn)制00000001,即16進(jìn)制01H。依照這個(gè)方法,繼續(xù)進(jìn)行下面的掃描,一共掃描32個(gè)8位
54、,可以得出漢字“尚”的掃描代碼為:</p><p> 080H,000H, 040H,001H, 067H,0FFH,034H,004H</p><p> 01CH,008H, 015H,0FCH,007H,030H,0FDH,050H</p><p> 005H,090H, 00DH,050H, 017H,0F8H,064H,012H</p>
55、<p> 02CH,009H, 017H,0FEH, 020H,002H,040H,001H</p><p> 由這個(gè)原理可以看出,無(wú)論顯示何種字體或圖像,都可以用這個(gè)方法來(lái)分析出它的掃描代碼從而顯示在屏幕上。不過(guò)現(xiàn)在有很多現(xiàn)成的漢字字模生成軟件,就不必去畫(huà)表格算代碼了。</p><p> 打開(kāi)字模,設(shè)定一下輸出方式, 輸入漢字后,再單擊“取?!薄JM(jìn)制數(shù)據(jù)的漢字代碼即可
56、自動(dòng)生成,把我們所需要漢字代碼復(fù)制到我們的C程序中即可,如下圖2.7所示。</p><p> 圖2.7 漢字字模生成圖</p><p> 2.6 硬件系統(tǒng)的整體設(shè)計(jì)圖與原理分析</p><p> 硬件系統(tǒng)的整體設(shè)計(jì)圖如下圖2.8所示。</p><p> 圖2.8 硬件系統(tǒng)的整體設(shè)計(jì)圖</p><p>&l
57、t;b> 原理分析:</b></p><p> Proteus 7.4軟件中只有8*8和5*7等LED點(diǎn)陣,所以需要由小的LED屏拼接成一個(gè)大的LED顯示屏。上圖的LED顯示部分是由8個(gè)8*8的點(diǎn)陣構(gòu)成整體的16*32點(diǎn)陣屏,可以同時(shí)顯示兩個(gè)漢字(或4個(gè)英文字母)。要注意的是:在Proteus7.4軟件中,由于點(diǎn)陣塊數(shù)太多,所以其接線比較的復(fù)雜。此處采用以上接線方式,把8個(gè)LED點(diǎn)陣屏以“一
58、共兩行,每行4個(gè)”的方式緊湊連接在一起,隱藏了那些錯(cuò)綜復(fù)雜的連線,使我們?cè)谝曈X(jué)上覺(jué)得更清新,更一目了然。</p><p> 原理圖中,拼接后的點(diǎn)陣式LED顯示屏采用的是逐列掃描的工作方式。將事先已經(jīng)編寫(xiě)好的C語(yǔ)言程序輸入到單片機(jī)中,80C51單片機(jī)的P2口的P2.0口至P2.2口連接4個(gè)74LS138(3線~8線)譯碼器的輸入端,再由4組8個(gè)相應(yīng)的輸出端,與連接LED顯示屏對(duì)應(yīng)的列端相連,用來(lái)選中所要顯示的字符
59、的列。單片機(jī)的P0口負(fù)責(zé)輸入所要顯示的第一個(gè)字的代碼信息,P1口負(fù)責(zé)輸入所要顯示的第二個(gè)字的代碼信息。然后又由P0口負(fù)責(zé)輸入所要顯示的第二個(gè)字的代碼信息,P1口負(fù)責(zé)輸入所要顯示的第三個(gè)字的代碼信息,這樣在我們的視覺(jué)上就感覺(jué)字是在連續(xù)著在向左移動(dòng)了。這樣依次類(lèi)推,所有的字都能連續(xù)的左移著顯示出來(lái)。另外,在對(duì)單片機(jī)進(jìn)行校驗(yàn)時(shí),P0口須接上10K左右的上拉電阻,就是上圖中的RP1電阻。</p><p> 對(duì)于74LS
60、138譯碼器U2來(lái)說(shuō),其中E1端必須為高電平才能有效,也就是說(shuō)此時(shí)譯碼器才能正常工作。E2和E3端是低電平有效,用來(lái)接地端。其余的3個(gè)譯碼器的原理都是這樣。 </p><p><b> 2.7 小結(jié)</b></p><p> 本章節(jié)主要介紹了設(shè)計(jì)中硬件電路用到的單片機(jī)80C51芯片的總體結(jié)構(gòu)和各個(gè)重要引腳的功能、顯示電路中主要器件74LS138譯碼器的各個(gè)引腳及
61、其功能、以及整體設(shè)計(jì)結(jié)構(gòu)框圖的講解和具體實(shí)現(xiàn)字符的連續(xù)左移顯示的詳細(xì)分析。</p><p> 3 系統(tǒng)的軟件部分設(shè)計(jì)</p><p> 應(yīng)用系統(tǒng)中的應(yīng)用軟件是根據(jù)系統(tǒng)功能要求而設(shè)計(jì)的,能可靠地實(shí)現(xiàn)系統(tǒng)的各種功能。</p><p> 3.1 程序設(shè)計(jì)思路與結(jié)構(gòu)</p><p> 系統(tǒng)采用模塊化結(jié)構(gòu),包括主程序、延時(shí)程序、顯示子程序[
62、11]。</p><p> 3.1.1 程序設(shè)計(jì)思路</p><p> 計(jì)算機(jī)按照給定的程序,逐條執(zhí)行指令,以完成某項(xiàng)規(guī)定的任務(wù)。因此,使用計(jì)算機(jī)必須編寫(xiě)出計(jì)算機(jī)能執(zhí)行的程序,用簡(jiǎn)短的C語(yǔ)言程序進(jìn)行設(shè)計(jì),實(shí)現(xiàn)與計(jì)算機(jī)的通訊,能方便改動(dòng)顯示的內(nèi)容,使顯示內(nèi)容能夠一個(gè)接一個(gè)的左移滾動(dòng)慢慢的顯示。由單片機(jī)80C51的P2口輸出進(jìn)行片選。片選1有效時(shí),將所要顯示的漢字的段碼值送給P0,P1。
63、驅(qū)動(dòng)相應(yīng)段點(diǎn)亮。直到送完16個(gè)段碼就可以顯示一個(gè)漢字了。</p><p> 3.1.2 程序設(shè)計(jì)流程圖</p><p> 系統(tǒng)程序主要由開(kāi)始、初始化、主程序、字庫(kù)等組成。其中主程序和子程序的流程圖如圖3.1和圖3.2所示。</p><p> 圖3.1 主程序流程圖</p><p> 對(duì)圖3.1主程序流程圖的簡(jiǎn)要分析如下:</
64、p><p> 首先“開(kāi)始”,然后對(duì)整個(gè)系統(tǒng)進(jìn)行初始化,之后調(diào)用相應(yīng)的顯示程序,之后開(kāi)始調(diào)整一下數(shù)據(jù)的指針,判斷此時(shí)需要顯示的字符是否已經(jīng)顯示完畢。如果已經(jīng)顯示完畢就返回到系統(tǒng)“初始化”的時(shí)刻繼續(xù)進(jìn)行接下來(lái)的流程,如果沒(méi)有顯示完畢則返回到“調(diào)用顯示程序”的時(shí)刻繼續(xù)接著的流程。</p><p> 圖3.2 顯示程序流程圖</p><p> 對(duì)圖3.2顯示程序流程圖的
65、簡(jiǎn)要分析如下:</p><p> 首先開(kāi)始,之后設(shè)定顯示一幀字符所用的時(shí)間,然后設(shè)定片選指針以及數(shù)據(jù)指針,然后查找相應(yīng)的漢字或字符的上部數(shù)據(jù)及顯示,接著查找查相應(yīng)的漢字或字符的下部數(shù)據(jù)及顯示,然后對(duì)整個(gè)系統(tǒng)延時(shí)1ms,之后關(guān)閉之前顯示的字符內(nèi)容并調(diào)整相關(guān)數(shù)據(jù)的指針,此時(shí)判斷需要顯示的字符是否顯示完畢。若沒(méi)有顯示完畢,則返回到“設(shè)片選及數(shù)據(jù)指針”處進(jìn)行重新工作流程;若已經(jīng)顯示完畢,則判斷此時(shí)一幀的時(shí)間是否完畢。如
66、果時(shí)間沒(méi)有完畢,則返回至“設(shè)定一幀顯示時(shí)間”處重新設(shè)定該時(shí)間;反之整個(gè)系統(tǒng)程序結(jié)束完成。</p><p> 3.2 模塊程序設(shè)計(jì)</p><p> 該設(shè)計(jì)中主要由系統(tǒng)初始化、LED動(dòng)態(tài)顯示、漢字顯示程序設(shè)計(jì)以及顯示設(shè)計(jì)幾個(gè)部分組成。</p><p> 3.2.1 系統(tǒng)初始化</p><p> 將事先已經(jīng)編寫(xiě)好的C語(yǔ)言程序輸入到單片
67、機(jī)中,80C51單片機(jī)的P2口的P2.0口至P2.2口連接4個(gè)74LS138(3線~8線)譯碼器的輸入端,再由4組8個(gè)相應(yīng)的輸出端,與連接LED顯示屏對(duì)應(yīng)的的列端相連,用來(lái)選中所要顯示的字符的列。</p><p> 對(duì)于74LS138譯碼器U2來(lái)說(shuō),其中E1端必須為高電平才能有效,也就是說(shuō)此時(shí)譯碼器才能正常工作。E2和E3端是低電平有效,用來(lái)接地端。其余的3個(gè)譯碼器的原理都是這樣。 </p>&l
68、t;p> 3.2.2 LED動(dòng)態(tài)顯示</p><p> 此次設(shè)計(jì)理論顯示結(jié)果為在顯示屏上,漢字按照從右向左的順序一個(gè)個(gè)顯示。設(shè)計(jì)時(shí)可采用如下方法:首先將LED顯示屏對(duì)應(yīng)的顯示緩沖區(qū)全部清零,即 LED顯示空白,然后通過(guò)延時(shí)程序來(lái)設(shè)定各個(gè)字符的動(dòng)態(tài)顯示時(shí)間,顯示緩沖區(qū)依次加入一個(gè)漢字點(diǎn)陣數(shù)據(jù)并進(jìn)行掃描顯示,這樣就可達(dá)到動(dòng)態(tài)顯示的效果[12]。 </p><p> 單片機(jī)的P0口
69、負(fù)責(zé)輸入所要顯示的第一個(gè)字的代碼信息,P1口負(fù)責(zé)輸入所要顯示的第二個(gè)字的代碼信息。然后又由P0口負(fù)責(zé)輸入所要顯示的第二個(gè)字的代碼信息,同時(shí)P1口來(lái)負(fù)責(zé)輸入所要顯示的第三個(gè)字的代碼信息,這樣在我們的視覺(jué)上就感覺(jué)字是在連續(xù)著在向左移動(dòng)了。這樣依次類(lèi)推,所有的字都能連續(xù)的左移著顯示出來(lái)。</p><p> 3.2.3 漢字顯示程序設(shè)計(jì)</p><p> 打開(kāi)“字模提取伴侶”軟件,設(shè)定一下參
70、數(shù)設(shè)置,即:選擇C51格式,字節(jié)倒序,冗余格式,縱向取模。 這樣輸入單個(gè)的漢字后,再單擊“取?!?。此時(shí)十六進(jìn)制數(shù)據(jù)的漢字代碼即可自動(dòng)生成,把我們所需要漢字代碼復(fù)制到我們的C語(yǔ)言程序中就可以了[13]。</p><p> 從字模提取伴侶中得到需要顯示漢字的代碼值。如“余境成”的代碼為:</p><p> unsigned char code ziku[]={ //字符碼的存放格式
71、為:從左到右共16列,并按列的上下部分依次存放 //一組即為一列</p><p> /*---轉(zhuǎn)換字符 余 ---*/</p><p> 0x01,0x00,0x01,0x00,0x02,0x80,0x04,0x40,0x08,0x20,0x10,0x10,0x2F,0xEE,0xC1,0x04,</p><p> 0x01,0x10,0x3F,0xF8,0x
72、01,0x00,0x09,0x20,0x19,0x18,0x21,0x0C,0x45,0x04,0x02,0x00,</p><p> /*---轉(zhuǎn)換字符 境 ---*/</p><p> 0x20,0x80,0x20,0x48,0x27,0xFC,0x21,0x10,0x20,0xA4,0xFF,0xFE,0x20,0x08,0x23,0xFC,</p><p&g
73、t; 0x22,0x08,0x23,0xF8,0x22,0x08,0x3B,0xF8,0xE1,0x20,0x41,0x22,0x02,0x22,0x0C,0x1E,</p><p> /*---轉(zhuǎn)換字符 成 ---*/</p><p> 0x00,0x80,0x00,0xA0,0x00,0x90,0x3F,0xFC,0x20,0x80,0x20,0x80,0x20,0x84,0x3
74、E,0x44,</p><p> 0x22,0x48,0x22,0x48,0x22,0x30,0x2A,0x20,0x24,0x62,0x40,0x92,0x81,0x0A,0x00,0x06};</p><p> 3.2.4 顯示設(shè)計(jì)</p><p><b> 漢字顯示的原理:</b></p><p> 漢字
75、的顯示主要是通過(guò)將需要顯示的漢字的段碼值送入顯示模塊而完成的。首先從字模軟件中得到需要顯示漢字的段碼值。</p><p><b> while (1)</b></p><p><b> {</b></p><p> for (i=0;i<8;i++) //顯示左半邊屏幕</p><p&
76、gt;<b> {</b></p><p> P0=*(p+offset+2*i);</p><p> P2=i|0x08; //P2.4=0,P2.3=1 選中U2, 輸出掃描碼給U6</p><p><b> delay();</b></p><p> P0=*(p+offset
77、+2*i+1);</p><p> P2=i|0x10; //P2.4=1,P2.3=0 選中U3, 輸出掃描碼給U7</p><p><b> delay();</b></p><p><b> }</b></p><p> for (i=8;i<16;i++) //顯示
78、右半邊屏幕</p><p><b> {</b></p><p> P0=*(p+offset+2*i);</p><p> P2=(i-8)|0x20; //P2.5=1 P2.4=0, P2.3=0 選中U4,輸出掃描碼U8</p><p><b> delay();</b><
79、/p><p> P0=*(p+offset+2*i+1);</p><p> P2=(i-8)|0x40; //P2.6=1 P2.5=0, P2.4=0 選中U5,輸出掃描碼U9</p><p><b> delay();</b></p><p><b> }</b></p>
80、<p><b> }</b></p><p><b> }</b></p><p><b> 3.3 小結(jié)</b></p><p> 本章主要介紹了軟件設(shè)計(jì)中的主程序和顯示程序的流程圖以及對(duì)其內(nèi)容的簡(jiǎn)要介紹,以及相關(guān)的軟件程序,并最終達(dá)到所要求的LED顯示結(jié)果。</p>
81、;<p><b> 4 系統(tǒng)仿真</b></p><p> Proteus內(nèi)容全面包括其能實(shí)驗(yàn)的內(nèi)容包括軟件部分的匯編、C51 等語(yǔ)言的調(diào)試過(guò)程,也包括硬件接口電路中的大部分類(lèi)型。對(duì)同一類(lèi)功能的接口電路,可以采用不同的硬件來(lái)搭建完成,因此采用Proteus 仿真軟件進(jìn)行實(shí)驗(yàn)教學(xué),克服了用單片機(jī)實(shí)驗(yàn)教學(xué)板教學(xué)中硬件電路固定、學(xué)生不能更改、實(shí)驗(yàn)內(nèi)容固定等方面的局限性,可以擴(kuò)展
82、學(xué)生的思路和提高學(xué)生的學(xué)習(xí)興趣。</p><p> 4.1 仿真環(huán)境介紹</p><p> Proteus是目前最好的模擬單片機(jī)外圍器件的工具,它可以仿真51系列、AVR,PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤(pán),馬達(dá),LED,AD/DA,部分SPI器件,部分IIC器件)[14]。當(dāng)然,軟件仿真精度有限,而且不可能所有的器件都找得到相應(yīng)的仿真模型,用開(kāi)發(fā)板和仿
83、真器當(dāng)然是最好選擇,可是對(duì)于單片機(jī)愛(ài)好者,或者簡(jiǎn)單的開(kāi)發(fā)應(yīng)該是比較好的選擇。Proteus與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒(méi)有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時(shí),關(guān)心的不再是某些語(yǔ)句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程的角度直接看程序運(yùn)行和電路工作的過(guò)程和結(jié)果。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,是彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象。</
84、p><p> KeilC51是美國(guó)KeilC Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。</p><p> KeilC5軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能
85、體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。</p><p> 4.2 仿真過(guò)程與結(jié)果</p><p> 利用以上兩種軟件,就可以進(jìn)行仿真了。這里以一個(gè)16*32點(diǎn)陣漢字顯示為例說(shuō)明。</p><p> 4.2.1 繪制電路圖</p><p> 運(yùn)
86、行PROTEUS的ISIS程序后,進(jìn)入該仿真軟件的主界面。在工作前,要設(shè)置VIEW菜單下的捕捉對(duì)齊和SYSTEAM下的顏色、圖形界面大小等項(xiàng)目。通過(guò)工具欄中的P (從庫(kù)中選擇元件命令)命令,在PICK DEVICES窗口中選擇電路所需的元件,放置元件并調(diào)整其相對(duì)位置,元件參數(shù)設(shè)置,元器件間連線,將電路圖繪制完畢。</p><p> 4.2.2 HEX文件的生成</p><p> 利用
87、KEIL51生成HEX文件。具體方法如下:</p><p> (1) 打開(kāi)單片機(jī)軟件開(kāi)發(fā)系統(tǒng)KEIL uVision,單擊“uVision”菜單中的“PROJECT”,在此下拉菜單中單擊“NEW PROJECT”后。彈出“CREAT NEW PROJECT”對(duì)話框。鍵入新建項(xiàng)目名稱(chēng)。</p><p> (2) 鍵入新建項(xiàng)目名并單擊“確定后”,在彈出的“SELECT DEVICE”對(duì)
88、話框中選擇合適的單片機(jī)型號(hào),如80C51。</p><p> (3) 單擊“uVision”菜單中的“FILE”,在此下拉菜單中選擇“NEW”后,打開(kāi)一個(gè)空的文本編輯口,在此窗口總鍵入程序,創(chuàng)建新的源程序“一個(gè)16*16點(diǎn)陣漢字顯示.C”(如是匯編語(yǔ)言程序的話為“一個(gè)16*16點(diǎn)陣漢字顯示.ASM)文件。</p><p> (4) 在左邊的“PROJECT”窗口的“FILE”頁(yè)中單
89、擊文件組,再單擊鼠標(biāo)右鍵后,在彈出的窗口中選中“ADD FILES TO GROUP” “SOURCE GROUP1”選項(xiàng),將“一個(gè)16*16點(diǎn)陣漢字顯示.C”程序?qū)氲健癝OURCE GROUP 1”中。</p><p> (5) 在“PROJECT”下拉菜單中,選擇“OPTIONS FOR TARGET”對(duì)話框,在此對(duì)話框中“OUTPUT”選項(xiàng)卡中的“CREAT HEX FILE”選項(xiàng)。</p>
90、;<p> (6) 在“PROJECT”下拉菜單中,選擇“REBUILD ALL TARGET FILES”項(xiàng)。若程序編譯成功,將生產(chǎn)“一個(gè)16*16點(diǎn)陣漢字顯示.HEX”文件。</p><p> 4.2.3 調(diào)試與結(jié)果</p><p> 在PROTEUS ISIS編輯窗口中,單擊鼠標(biāo)右鍵選中單片機(jī)80C51并單擊鼠標(biāo)左鍵,彈出“EDIT COMPONET”對(duì)話框,
91、在此對(duì)話框的“CLOCK FREQUENCY”欄中設(shè)置單片機(jī)晶振頻率為12MHz,在“PROGRAM FILE”欄中單擊瀏覽選中KEIL生成的HEX文件[15]。單擊運(yùn)行,就可以看到仿真的結(jié)果了。本設(shè)計(jì)中顯示的是“2011歡迎您!”的字樣,下圖4.1為顯示“2”字樣。</p><p> 圖4.1 16*32 LED點(diǎn)陣仿真結(jié)果</p><p> 其余的漢字依次仿真結(jié)果如圖4.3所示。
92、</p><p> 圖4.2 動(dòng)態(tài)顯示所有漢字</p><p> 這樣,每一個(gè)字依次向左滾動(dòng)顯示的效果就出來(lái)了。</p><p><b> 4.3 小結(jié)</b></p><p> 采用PROTEUS進(jìn)行單片機(jī)仿真,可以大大縮短單片機(jī)的開(kāi)發(fā)周期。它不僅能仿真單片機(jī)CPU 的工作情況,也能仿真單片機(jī)外圍電路或沒(méi)有
93、單片機(jī)參與的其它電路的工作情況。本系統(tǒng)仿真結(jié)果,滿足設(shè)計(jì)需求。實(shí)際操作靈活,使用方便。</p><p><b> 結(jié)束語(yǔ)</b></p><p> LED點(diǎn)陣顯示應(yīng)用很廣,在市場(chǎng)上已有比較成熟的產(chǎn)品,但價(jià)格比較高,在一些應(yīng)用中性?xún)r(jià)比不高。故本次設(shè)計(jì)的LED點(diǎn)陣顯示控制系統(tǒng)是以單片機(jī)為基礎(chǔ),采用優(yōu)越的Flash存儲(chǔ)器為數(shù)據(jù)存儲(chǔ)器,利用接口電路實(shí)現(xiàn)與PC機(jī)的有效連接并
94、進(jìn)行數(shù)據(jù)的傳輸,用簡(jiǎn)短的匯編程序使LED點(diǎn)陣顯示實(shí)現(xiàn)了漢字滾動(dòng)顯示。其特點(diǎn):</p><p> (1) 顯示內(nèi)容能從左到右滾動(dòng)顯示。</p><p> (2) 顯示內(nèi)容不限,內(nèi)容可隨時(shí)改動(dòng)。</p><p> (3) 系統(tǒng)顯示誤差小,性能穩(wěn)定。</p><p> (4) 硬件結(jié)構(gòu)簡(jiǎn)單,顯示美觀,應(yīng)用靈活。</p>
95、<p><b> 需要改進(jìn)和不足:</b></p><p> (1) 由于制作倉(cāng)促,本次設(shè)計(jì)只是用軟件設(shè)計(jì)和測(cè)試,并沒(méi)有制作出實(shí)體。</p><p> (2) 如果要投入生產(chǎn)還需要改進(jìn)顯示屏、顯示方式等。</p><p> (3) 由于時(shí)間的原因制作的作品比較粗糙,還有待改進(jìn)。</p><p>
96、<b> 致 謝</b></p><p> 首先,要感謝我的指導(dǎo)老師, 本次課程設(shè)計(jì)是在老師的親切關(guān)懷和悉心的指導(dǎo)下完成的。在此我謹(jǐn)致以崇高的敬意和衷心的感謝!每當(dāng)遇到自己不能解決的問(wèn)題時(shí),老師總是不厭其煩地開(kāi)導(dǎo)我,給予深刻的意見(jiàn)和指導(dǎo),從課題確定到制作大綱,從理論分析到程序設(shè)計(jì),無(wú)不體現(xiàn)了老師對(duì)我的關(guān)懷。老師對(duì)待每一項(xiàng)工作都嚴(yán)謹(jǐn)細(xì)致、一絲不茍,而這正是我以后工作、學(xué)習(xí)中的榜樣;同時(shí),
97、我還要感謝大學(xué)期間各位任課老師在學(xué)習(xí)上給予我的指導(dǎo)和幫助,是他們?cè)趦赡甑谋究茖W(xué)習(xí)中指導(dǎo)我們學(xué)習(xí),教給我們知識(shí)的同時(shí),最重要的是教給了我們?cè)S多做人的道理,將為我今后的工作和生活產(chǎn)生久遠(yuǎn)的影響。最后,感謝在一起度過(guò)愉快大學(xué)生活的各位同學(xué),正是由于你們的幫助和鼓勵(lì),我才能夠突破一次次的障礙、克服一次次的困難,順利的完成這次畢業(yè)設(shè)計(jì)。在論文即將完成之際,我的心情無(wú)法平靜,從開(kāi)始進(jìn)入課題到論文的順利完成,有許多可敬的師長(zhǎng)、同學(xué)、朋友給了我很大的幫
98、助,在這里請(qǐng)接受我誠(chéng)摯的謝意。 </p><p><b> 謝謝大家!</b></p><p><b> 參 考 文 獻(xiàn)</b></p><p> [1] 胡健, 劉玉賓. 定時(shí)/計(jì)數(shù)器,單片機(jī)原理與接口技術(shù)[M]. 北京: 機(jī)械工業(yè)出版社, 2005.</p><p> [2] 向繼文,
99、廖立新. 基于80C51的LED系統(tǒng)設(shè)計(jì)[J]. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新, 2007, 20 (2): 62~63.</p><p> [3] 范立南. 單片機(jī)原理及應(yīng)用教程[M].北京: 北京大學(xué)出社, 2006.</p><p> [4] 劉盛雄, 周奇, 韋云隆. 基于單片機(jī)的LED顯示設(shè)計(jì)與制作[J]. 重慶工學(xué)院學(xué)報(bào), 2006, 20 (8): 90~92.</p>
100、<p> [5] 辛友順, 胡永生. 初步介紹單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M]. 福州: 福建科學(xué)技術(shù)出版社, 2005.</p><p> [6] 張齊. 顯示技術(shù)及單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)技術(shù)[M]. 北京: 電子工業(yè)出版社, 2004.</p><p> [7] 李建忠. 單片機(jī)原理及應(yīng)用[M]. 西安: 西安電子科技大學(xué)出版社, 2002. </p>&l
101、t;p> [8] 韓建國(guó), 廖俊必. 單片機(jī)原理及應(yīng)用[M]. 北京: 高等教育出版社, 2007.</p><p> [9] 劉剛, 朱杰斌, 劉兆峰. 單片機(jī)原理及應(yīng)用[M]. 北京: 中國(guó)林業(yè)出版社, 2006.</p><p> [10] 蔣立平. 數(shù)字電路[M]. 南京: 南京理工大學(xué)出版社, 2001.</p><p> [11] 王建宇,
102、 戴躍偉, 侯曉霞. 微型計(jì)算機(jī)原理及應(yīng)用[M]. 北京: 化學(xué)工業(yè)出版社, 2001.</p><p> [12] KEN MARTIN. 數(shù)字集成電路與設(shè)計(jì)[M]. 北京: 電子工業(yè)出版社, 2002.</p><p> [13] 王爾乾, 楊士強(qiáng). 數(shù)字邏輯與數(shù)字集成電路[M]. 北京: 清華大學(xué)出版社, 2002. </p><p> [14] 郝建國(guó)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于51單片機(jī)的led滾動(dòng)顯示系統(tǒng)職業(yè)學(xué)院畢業(yè)論文
- 畢業(yè)論文---基于51單片機(jī)的液晶滾動(dòng)顯示
- 畢業(yè)論文---基于51單片機(jī)的漢字式lcd滾動(dòng)顯示
- 基于51單片機(jī)的led點(diǎn)陣顯示屏-畢業(yè)論文
- 電子畢業(yè)論文--基于51單片機(jī)的漢字式lcd滾動(dòng)顯示
- 基于單片機(jī)led滾動(dòng)漢字顯示器設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)led滾動(dòng)顯示系統(tǒng)設(shè)計(jì)
- 單片機(jī)畢業(yè)論文--基于單片機(jī)的led顯示屏設(shè)計(jì)
- 基于51單片機(jī)的數(shù)字lcd顯示畢業(yè)論文
- 基于單片機(jī)的led顯示屏畢業(yè)論文
- 畢業(yè)論文--基于51單片機(jī)的led點(diǎn)陣顯示屏系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于51單片機(jī)led流水燈設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文外文翻譯-基于at89c51單片機(jī)的led顯示控制系統(tǒng)
- 基于單片機(jī)的led顯示屏設(shè)計(jì)畢業(yè)論文
- 基于單片機(jī)控制的led點(diǎn)陣顯示屏系統(tǒng)【畢業(yè)論文】
- 基于51單片機(jī)的數(shù)字led顯示(based on 51 scm led digital display)
- 51單片機(jī)畢業(yè)論文---基于單片機(jī)的進(jìn)制換算
- 基于單片機(jī)led電子顯示屏的設(shè)計(jì)【畢業(yè)論文】
- 基于51單片機(jī)的led點(diǎn)陣顯示屏
- 51單片機(jī)led1616點(diǎn)陣滾動(dòng)顯示c程序
評(píng)論
0/150
提交評(píng)論