




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、畢 業(yè) 論 文 論文題目 系 別 電子信息工程系 專 業(yè) 電子信息工程 班 級 學 號 學生姓名 指導教師(簽名) 完成時間 年 月摘要隨著社會經(jīng)濟的發(fā)展,廣告已深入廣大人民群眾的生活,也為許多商家和公益團體所充分利用,LED點陣廣告牌更是深得人們的喜愛。為了可以滿足客戶所要求的廣告宣傳,本設計設計了一個16*64的LED點陣廣告牌,本廣告牌可以實現(xiàn)漢字和圖片的顯示。本設計中以AT89S52單片機為主控芯片的16*64點陣LED廣告牌,單片機通過讀取字模并作相應的處理,然后以不同的顯示方式顯示到點陣顯示屏上,實現(xiàn)廣告牌內(nèi)容顯示形式的多樣化。另外還得用八個74HC595驅(qū)動芯片和一個74HC15
2、4驅(qū)動芯片來驅(qū)動16個8*8點陣來實現(xiàn)文字和圖片的顯示,并能實現(xiàn)文字的左移、右移、上移和下移以及圖像的放大和縮小。74HC154作為行驅(qū)動,選通行即該行導通,然后由74HC595送列的數(shù)據(jù)控制該行列的亮滅。通過軟件可以編程更新廣告牌的內(nèi)容,滿足不同時刻不同客戶的廣告需求。本廣告牌可以為客戶帶來商業(yè)利益,為群眾帶來信息,還可以作為公益宣傳廣告為社會公益事業(yè)作出貢獻。關鍵詞:單片機; 8*8點陣; LED點陣廣告牌; 級聯(lián)·The Design Of Taxi Billboard Based On Single Chip MicrocomputerAbstractWith the dev
3、elopment of social economy, advertising has been deep into the people's life. It is made full use of by many businesses and nonprofit groups. The LED lattice billboards are adored by people. In order to meet the needs of customer about the advertising, this design has designed a 16 * 64 lattice
4、LED billboards. The billboards can realize the display of Chinese characters and pictures. The AT89S52 single chip microcomputer is as the main control chip in the design of 16 * 64 lattice LED billboard. Single-chip microcomputer reads and fetches matrix and accordingly respond to treatment, then d
5、isplayed in a different way according to the dot matrix display screen, realizing the form diversification of billboard content displaying. Eight 74 hc595 drive chips and a 74 hc154 drive chip are also needed in order to drive 16 8 * 8 dot matrix to realize the displaying of words and images. Meanwh
6、ile the text can shift to the left, right, up and down as well as the images zoom in and zoom out. The 74 hc154 as line drive, pass the bank conduction through software programming can update the content of the billboard.It can meet different customers in different time.The billboards can bring many
7、 benefits just as follows: bringing business benefits to customers, bringing the information to public and making contribution to public welfare undertakings for the society by being used as a public welfare advertisement.Key words: single chip microcomputer 8*8 lattice LED lattice billboard cascade
8、目錄第一章 前言11.1意義11.2國內(nèi)外發(fā)展趨勢1第二章 設計方案論證22.1系統(tǒng)要求22.2主控芯片的選取方案論證22.3 顯示屏的顯示方式論證32.4電源的選取方案論證32.5設計方案總結3第三章 系統(tǒng)硬件電路的設計43.1硬件電路要求43.2單片機模塊43.3點陣模塊53.4驅(qū)動芯片模塊113.5單片機最小系統(tǒng)模塊14第四章 軟件設計154.1主程序設計154.2 74HC595初始化子程序設計174.3 LED點陣顯示屏子程序設計17第五章 系統(tǒng)調(diào)試205.1 LED點陣顯示屏的調(diào)試205.2單片機最小系統(tǒng)的調(diào)試205.3軟件的調(diào)試205.4軟硬件聯(lián)合調(diào)試205.5系統(tǒng)調(diào)試總結21第
9、六章 結束語226.1設計總結226.2心得體會22參考文獻23致謝24第一章 前言1.1意義我們可以發(fā)現(xiàn)廣告隨處可見,廣告能帶給人們利益,而有的廣告牌很容易被人忽視,為了更好的吸引廣大群眾的眼球,達到更好的廣告效果人們想到了點陣廣告牌。實現(xiàn)一件物品的價值除了要保證它的質(zhì)量和實用性外,還得讓越多的人知道,才越能實現(xiàn)它的價值。于是,很多的商家,企業(yè)或公司等都不惜花大價錢去做廣告宣傳,事實證明廣告確實能為人們帶來可觀的效益。既然要做廣告就應找好的廣告方式做好的廣告宣傳,如做LED點陣廣告牌就是一個不錯的選擇?,F(xiàn)今,LED點陣廣告牌已經(jīng)遍及城市甚至農(nóng)村各地,該類廣告牌已經(jīng)得到了十分廣泛的應用了。出租
10、車在城市里是很多的,而且出租車是經(jīng)常開動的,這么看來在出租車上做廣告,廣告的內(nèi)容會得到極好宣傳。在出租車上做LED點陣廣告,可視的距離比較遠,可讓廣大的人民群眾看到,信息得到很好的傳播因而可以從中獲得利益。此類廣告牌也適用于其它的一些車輛,比如公交車、班車、貨車等,應用范圍廣。本設計的廣告牌類型是屬于電子類廣告的,其使用的范圍是極為廣泛的,廣告效果也極好。不用花費很多錢就可以做一個電子廣告,廣告的宣傳范圍還很廣,廣告的形式還可以多樣化,客戶對LED點陣廣告牌的需求量也很高。廣告牌的內(nèi)容還可以根據(jù)需要花點時間便可以更改,更改起來簡單而且也不麻煩。LED點陣廣告牌看起來清晰而又美觀,廣告內(nèi)容一目了
11、然,可以吸引廣大人民群眾的眼球,特別是在晚上看起來更加的亮麗。1.2國內(nèi)外發(fā)展趨勢 LED點陣顯示屏具有發(fā)光率高、使用壽命長、組態(tài)靈活、色彩豐富以及對室內(nèi)室外環(huán)境適應能力強等優(yōu)點,在國內(nèi)外得到了廣泛的應用1。在國內(nèi),可以看到LED點陣顯示屏無處不在,特別是在城市里,走在城市的大街小巷里幾乎達到了一抬眼就會有LED點陣顯示屏映入眼簾的狀態(tài)。我國的LED顯示屏在不斷的改造創(chuàng)新,它的發(fā)展趨勢更是有目共睹的,它的優(yōu)點也是處于增加的狀態(tài)或者說是得到加強的。總之我國對LED顯示屏的需求量是在不斷的增加的,它的市場越來越廣泛生產(chǎn)規(guī)模也就越來越大。它的發(fā)展趨勢是十分好的,而且會越來越強大,越來越為廣大人民所使
12、用。它會變得更加的實用而耀眼,它正向著更高亮度、更多色彩、更加的標準化、規(guī)范化和結構更多樣化的趨勢迅速發(fā)展。而LED顯示在國外的發(fā)展趨勢也是不言而喻的,它不僅適用壽命長而且適合在室內(nèi)適用也適合在室外適用,可以充分利用它在室內(nèi)室外所擁有的價值。它在國外的競爭會越來越激烈,在國外的需求也是急劇上升的,而是用的范圍也在不斷的擴大。總之LED在國內(nèi)外都具有很好的發(fā)展前景,存在很大的發(fā)展空間,要充分的發(fā)揮它的作用,使得它達到最高的使用價值。無論何時都要高度的重視它的發(fā)展前景,時刻關注它的市場需求,不斷的加強技術含量,相信它會得到更加廣泛的應用。第二章 設計方案論證2.1系統(tǒng)要求近幾年來,單片機的發(fā)展十分
13、迅速,它已滲透到諸多學科的領域,以及人們生活的各個方面2。本設計采用AT89S52為主控芯片的16*64LED點陣廣告牌,該廣告牌的色彩艷麗、顯示方式多樣化、亮度適中、壽命很長、可視的距離遠,驅(qū)動簡單方面等優(yōu)點。硬件部分主要由一個AT89S52單片機、16個8*8點陣、八片74HC595芯片和一片74HC154芯片等組成。16*64點陣廣告牌的功能:要求廣告的各點亮度盡量做到更好,文字的要能清楚的顯示出來而且穩(wěn)定。廣告除了能顯示文字外還能顯示圖片,可以將圖片先放大再縮小,廣告文字的顯示模式有左移、右移、上移和下移四種。開始設計前簡單的畫出設計電路的硬件原理圖框圖如圖2-1所示:52單片機 復位
14、電路LED點陣顯示屏行驅(qū)動列驅(qū)動電源圖2-1 電路硬件原理圖框圖2.2主控芯片的選取方案論證方案一:采用可編程邏輯器件(簡稱為PLD)系統(tǒng)來實現(xiàn)LED點陣內(nèi)容的顯示,可以充分的利用器件里豐富的I/O口資源來驅(qū)動LED點陣的行和列。但若采用中大規(guī)模的PLD,設計多個接口電路,開發(fā)周期長,不易于進一步擴展,同時系統(tǒng)的成本會急劇上升3。方案二:采用AT89S52單片機系統(tǒng)來實現(xiàn),52單片機體積小,可靠性高,適用范圍廣,使用方式靈活而簡單,價格便宜。另一方面52單片機簡單易學,對于數(shù)據(jù)的處理也速度比較快,因此是很多設計的優(yōu)先選擇。雖然本設計采用的需要使用到單片機很多的外部接口而單片機外部接口明顯不夠用
15、,但使用74HC595芯片可以節(jié)省I/O口達到驅(qū)動更加多的LED,控制靈活方面再加上安裝和調(diào)試的工作也比較的簡單方便,使得本設計和制作過程的難度得以降低。綜上比較考慮,毅然選擇了方案二來完成本設計。2.3 顯示屏的顯示方式論證方案一:采用靜態(tài)方式,這種方式就是直接把所有的發(fā)光二極管的一極跟單片機的I/O口連接,所有發(fā)光二極管的另外一極就通過電阻然后接到電源上。這種方法可以直接驅(qū)動LED,原理也很簡單且具有很強的驅(qū)動能力,對于LED的點亮方式則可通過限流電阻來進行調(diào)節(jié),十分方便,但這種方法的缺點就是很浪費單片機的I/O口不能驅(qū)動很多的LED,它適用于那些相對來說比較小的系統(tǒng)。方案二:采用動態(tài)掃描
16、的方式,這一種方式也就是先把LED并聯(lián)在一起然后跟驅(qū)動芯片的輸出引腳相連接,而LED發(fā)光二極管的另外一端就跟單片機的通用I/O口相連接,控制選通行所對應列LED燈的亮滅。采用這種掃描方案,能夠達到驅(qū)動比較多的LED的功能要求,控制起來也很靈活,還有一個優(yōu)點就是占用較少的單片機的I/O口。動態(tài)掃描就是一行接一行的去點亮發(fā)光二極管,那樣僅僅使用一套驅(qū)動器就可以驅(qū)動很多行的同名列。根據(jù)對方案一和方案二進行比較,經(jīng)過綜合考慮可以發(fā)現(xiàn),動態(tài)掃描方式占有較多的優(yōu)勢。而本設計做的是16*64LED點陣廣告牌,若采用靜態(tài)顯示I/O口是明顯不足的,所以本設計最后選擇的方案是方案二。2.4電源的選取方案論證方案一
17、:采用普通的干電池作為系統(tǒng)的供電電源,使用這一方案使得電壓穩(wěn)定也方便攜帶,但它工作的時間比較短顯然不利于屏幕的顯示,而且使用干電池是需要經(jīng)常的更換的,這樣就會造成了對環(huán)境的污染,不利于環(huán)保。方案二:采用自制的直流穩(wěn)壓電源來作為系統(tǒng)的供電電源,使用這一方案電壓穩(wěn)定而且還能持續(xù)的工作,既可以用于大屏幕的顯示,又不會造成污染的環(huán)境,因此本設計中采用了方案二。2.5設計方案總結要實現(xiàn)一個功能要求會有不同的方式,只有通過多方面的綜合考慮才能從中選取出最優(yōu)的設計方案。通過方案論證本設計最終的設計方案就是用AT89S52為主控芯片,芯片74HC595來驅(qū)動LED顯示屏的列,芯片74HC154來驅(qū)動點陣顯示屏
18、的行,而顯示方式采用的是動態(tài)掃描,以自制的直流穩(wěn)壓源作為系統(tǒng)的供電電源。第三章 系統(tǒng)硬件電路的設計3.1硬件電路要求硬件電路能完成以下功能:16*64LED點陣顯示屏可以顯示任何漢字,可以實現(xiàn)漢字的左移、右移、上移和下移,還可以實現(xiàn)圖像的顯示及圖像的放大和縮小。通過軟件方面的設計可以實現(xiàn)點陣廣告牌內(nèi)容的隨時更新,更新起來簡單方便。3.2單片機模塊單片機具有高性價比、高速度、小體積、可重復編程和方便功能擴展、通用靈活等優(yōu)點4。單片機所具有的優(yōu)點決定了它使用范圍的廣度,其價格又便宜是很多系統(tǒng)設計的優(yōu)先選擇。在本設計中,是以AT89S52為主控芯片的LED點陣廣告牌,單片機的端口通過與驅(qū)動器相連來顯
19、示數(shù)據(jù)。單片機的P3.0口接74HC595的11號引腳(SH-CP)移位寄存器時鐘輸入;P3.1口接74HC595的12號引腳(ST-CP)存儲寄存器時鐘輸入;P3.2口接74HC595的14號引腳(DS)串行數(shù)據(jù)輸入;P3.3口、P3.4口、P3.5口和P3.6口分別接74HC154的A、B、C、D四個地址輸入引腳,控制電路的十六路輸出,送出行選信號;P3.7接74HC154的G1、G2作為輸出使能端,低電平有效。單片機模塊電路原理圖如圖3-1所示:圖3-1單片機模塊原理圖AT89S52為ATMEL所產(chǎn)的一種低功耗、高性能CMOS08位微控制器,其內(nèi)部程序存儲器(ROM)為8KB,內(nèi)部數(shù)據(jù)存
20、儲器(RAM)為256字節(jié)5。單片機里有32個I/O口,分為P0口、P1口、P2口和P3口,然后每一個I/O口都是8位的。本設計中主要用到的I/O就是P3口,其中74HC595占用了單片機三個I/O口,75HC154占用了5個I/O口。P3口具有內(nèi)部上拉電阻8位雙向I/O口,輸出緩沖器可以驅(qū)動4個TTL邏輯電平,還可以接受一些控制信號5。P3口引腳號第二功能如表3-1所示:表3-1引腳號第二功能表引腳號第二功能P3.0RXD串行輸入P3.1TXD串行輸出P3.2INT0外部中斷0P3.3INT0外部中斷0P3.4T0定時器/計數(shù)器外部輸入0P3.5T1定時器/計數(shù)器外部輸入1P3.6WR外部數(shù)
21、據(jù)存儲器寫選通P3.7RD外部數(shù)據(jù)存儲器寫選通3.3點陣模塊 LED點陣顯示原理本設計采用的是動態(tài)掃描,也就是每一次都只選通一行循環(huán)選通行,如對16*64點陣的十六行進行循環(huán)點亮,采用這樣掃描驅(qū)動電路的優(yōu)點就是能夠用一套列驅(qū)動器來實現(xiàn)很多行的同名列。采用動態(tài)掃描,在行驅(qū)動和列驅(qū)動的作用下,一行一行的將需要顯示的數(shù)據(jù)送到LED點陣顯示屏上。一行一行的進行掃描循環(huán)掃描十六次就能得到一整屏的字幕,但只有在掃描到某一行時,該行才會有LED燈被點亮,而人眼卻能看到一整屏字幕是同時點亮的。其中的原理就是人們常說的視覺惰性,也就是只要一整屏字幕從開始循環(huán)到結束的時間在20ms(50Hz)內(nèi),人眼看上去就不會
22、感覺得到有閃爍。實驗證明臨界閃爍頻率大約為24Hz,因此采用每秒24幅畫面的電影,在人眼看起來就是連續(xù)活動的圖像6。那么對于16*64LED點陣,一共有十六行,則每行掃描時間不能超過20ms/16=1.25ms,這樣才能看到一整屏完整的漢字或字符圖像。3.3.2 16*64點陣顯示屏本設計的LED點陣廣告牌是使用16個8*8共陽點陣組成的16*64點陣顯示屏,主要用來顯示漢字實現(xiàn)廣告效果,其次也將圖片顯示到LED點陣顯示屏上。16個點陣組成2*8點陣即有兩排點陣,每排八個,可以看成A、B兩大行和18八大列,2*8點陣排列框圖如圖3-2所示:圖3-2 2*8點陣排列框圖第1列的兩塊點陣的16、1
23、5、11、6、10、4、3、13號引腳分別對應第一片74HC595的Q0、Q1、Q2、Q3、Q4、Q5、Q6和Q7號引腳,第2列的兩塊點陣的16、15、11、6、10、4、3、13號引腳則分別對應第二片74HC595的Q0-Q7號引腳,以此類推,八片74HC595剛好能驅(qū)動16*64LED點陣的列;這樣74HC595鎖存的8位數(shù)據(jù)就可以并行輸出到點陣上顯示。而第A行的所有的8*8LED點陣的9、14、8、12、1、7、2、5號引腳就都和74HC154的Y0-Y7相連接;第B行的所有8*8LED點陣的9、14、8、12、1、7、2、5號引腳就都和74HC154的Y8-Y15相連接;這樣就實現(xiàn)了L
24、ED點陣的列驅(qū)動和行驅(qū)動,而Y0-Y15決定了每一小行的64個LED是否選通,從而實現(xiàn)了控制LED的亮滅。16個8*8點陣組成的16*64點陣在電路中的原理圖如圖3-3所示:圖3-3 16*64點陣電路原理圖3.3.3 8*8點陣內(nèi)部結構本設計的16*64點陣廣告牌是由多個8*8點陣組成的,因此要深入了解8*8點陣的內(nèi)部結構。LED點陣是由發(fā)光二極管組成的,64個發(fā)光二極管通過一定的連接方式連接起來組成一個8*8點陣。LED點陣可以分為共陽型的點陣和共陰型的點陣,而它們的區(qū)別就在于LED燈的連接方式不同。共陽型8*8點陣里每一行中的8個LED發(fā)光二級管的陽極都連接在一起,每一列中的8個LED發(fā)
25、光二極管的陰極都連接在一起。要點亮一個發(fā)光二極管則要求發(fā)光二極管陽極的電平比陰極的電平高,那么如果要點亮某一行的所有發(fā)光二極管,則要將該行接高電平,該行所對應的列全部接低電平就可以實現(xiàn)了。換句話說也就是,通過行和列可以控制任何一個發(fā)光二極管的亮滅,那么要顯示出漢字或字符也就不是什么難事了。共陽8*8點陣顯示器內(nèi)部結構圖如圖3-4所示:圖3-4共陽8*8點陣顯示器內(nèi)部結構圖由圖3-4可以看到一個8*8點陣也就只有64個發(fā)光二極管,如果想要顯示一個漢字,實現(xiàn)起來會有點困難,字型看起來也不是那么像。一個字符兩個字節(jié)而每一個字節(jié)八位,那么用一個16*16點陣就剛好可以得到很好的漢字顯示效果。在一定的范
26、圍內(nèi),二極管的數(shù)目越多也就相當于像素點越多,那么可以顯示的漢字或圖片就越多。3.3.4 16*16點陣內(nèi)部結構及顯示原理在了解16*64點陣顯示屏之前,要先弄清楚16*16點陣是怎么連接在一起的,再弄懂行控線和列控線的作用。每一個16*16點陣都是由四個8*8點陣來組成的,每行有兩個8*8點陣,每一列也有兩個8*8點陣。其中16*16點陣顯示屏內(nèi)部結構框圖如圖3-5所示:圖3-5 16*16點陣顯示屏內(nèi)部結構框圖如圖3-5,A、B、C、D表示四個8*8點陣,把四個8*8點陣連在一起的方法就是將A這個點陣的9、14、8、12、1、7、2、5八個控制行的引腳跟B點陣的八個行控制引腳相連接,同理將C
27、和D這兩個點陣的行控制引腳對應相連接在一起,這樣A和B還有C和D的行就形成為行控線。將A點陣的16、15、11、6、10、4、3、13八個控制列的引腳跟C點陣八個控制列的引腳相連接,同理將B和D這兩個點陣的控制列的引腳對應相連接在一起,這樣A和C還有B和D的列就成為列控線。同理,本設計的16*64點陣顯示屏里16個8*8點陣通過級聯(lián)在一起形成控制行和控制列的線。在UCDOS中文宋體字庫中每一個字都是由16*16點陣組成顯示的,在國家標準漢字庫里是用256點陣來表示出一個漢字。任何一個漢字都是由點來組成的,將每一個點都看做是一個像素,那么一個字就可以看做是一幅圖像。一個16*16點陣總共有256
28、個LED發(fā)光二極管(即256個像素點),在256像素范圍內(nèi)的所有圖形都可以顯示在16*16點陣顯示屏上。本設計中有共有四個16*16點陣,可以顯示想要顯示的內(nèi)容,而這里顯示的是“歡迎光臨”四個字。實現(xiàn)了這四個字的上移、下移、左移和右移,還實現(xiàn)了四個圖形實現(xiàn)圖形的放大和縮小。16*16點陣要顯示出“歡”字,通過點亮一些點來繪出“歡”字的字型,用16*16點陣顯示“歡”字如圖3-6所示: 圖3-6 16*16點陣顯示“歡”字圖3-6中的A-P表示16*16點陣的第一行到第十六行,而0-15就表示點陣的第一列到第十六列。本設計是由AT89S52為主控制芯片的,52單片機的是8位的總線,這么看來一個字
29、就應該分作兩個部分。根據(jù)漢字在取模軟件里的取模方式,通常情況下把字拆分為上面部分和下面部分,那么上部和下部都是一個8*16點陣。在取模的時候通過利用字模軟件可以得到“歡”字的掃描代碼為:0xFF,0xFE,0xFF,0xFE,0xC0,0xFE,0x5F,0x80, 0x5E,0xDF,0xAD,0xED,0xEB,0xFD,0xF7,0xFD,0xE7,0xFD,0xE7,0xF9,0xDB,0xFA,0xDB,0xF6, 0x7D,0xE7,0x9E,0x8F,0xE3,0xDF,0xFF,0xFF對于第一行,在掃描的時候是先選通A行,再由列的數(shù)據(jù)決定A行哪一列的LED管點亮。對于“歡”字
30、A行亮的是第八列的LED,由于掃描的時候是低位在前所以可獲得代碼第一行的二進制代碼為1111 0111 1111 1111,轉(zhuǎn)換為十六進制就是0xFE,0xFF,以此類推可以算出“歡”字的代碼。在本設計中是通過行掃描,掃描出LED點陣上哪些點會被點亮,被點亮的點就會構成一個漢字或字符,我們就可以看到漢字或字符顯示到LED點陣顯示屏上了。 字模生成原理在本設計中將漢字顯示到點陣顯示屏上,漢字需要使用漢字字模來表示出來然后通過軟件方面實現(xiàn)漢字的顯示。提取漢字字模前需要了解什么是漢字字模,可以根據(jù)LED燈的亮滅寫出漢字的字模。一個16*64LED點陣顯示屏就有1024個發(fā)光二極管,點亮其中的任何一個
31、LED管,那么該LED燈對應的點就用0來表示,反之滅的LED燈對應的點就用1來進行表示。圖3-6里的“歡”字,根據(jù)二極管是否被點亮,可以寫出該字第一行相應的二進制為1111 1111 1111 1110,然后再轉(zhuǎn)換成十六進制,也就是0xFF,0xFE。以此類推可以算出整個“歡”字的代碼,但現(xiàn)在有漢字字模提取軟件,就沒有必要去一個個的算。LED點陣顯示屏是以“點位點亮”的方式顯示,因此在顯示漢字時必須通過某些技術手段獲得反應漢字字型點陣數(shù)據(jù)的漢字字模7。PCtoLCD2002完美版是常用的字模提取軟件,在使用自摸提取軟件的時候可以根據(jù)需要來對取模方式進行設置??梢赃M行設置的內(nèi)容如圖3-7:圖3-
32、7取模方式的設置本設計中使用的是共陽點陣,取碼的點陣格式的設置為陽碼,取模走向是逆向即低位在前,取模方式是行列式,輸出數(shù)制為十六進制數(shù)。由于設計中使用的是52單片機所以自定義格式設置為,C51格式。還可以對點陣的高、寬進行設置,點陣的大小可以是8*8點陣也可以是16*16點陣等,根據(jù)我們的需要來設置。而至于本設計點陣的高和寬則都應設置為16,那么一個16*64點陣就可以同時顯示四個漢字或字符了。把需要的漢字輸入到取模軟件上,然后自動生成字模,即可得到所需的漢字的代碼,把代碼復制到程序里,經(jīng)過處理就可以顯示到LED點陣上了。 LED點陣顯示圖像的原理以及實現(xiàn)圖像的放大和縮小根據(jù)所學知識以及上訴所
33、示的內(nèi)容可以知道LED點陣漢字顯示屏,并不是只能顯示漢字的,它也可以顯示在點陣像素范圍內(nèi)的圖形。因此圖像的顯示原理與漢字的顯示原理可以說是完全一樣的。在點陣字模提取軟件里可以建立16*16點陣的文件,然后根據(jù)需要顯示的圖形點亮相應的點即可生成想要的圖像的代碼。復制到程序里,經(jīng)過處理即可顯示到LED點陣上,通過軟件方面可以實現(xiàn)圖像的放大和縮小。其實就是按照一定的比例放大圖像,放大兩次,則就有三個不同大小的圖像。在字模提取軟件里建立16*16的文件手動點亮相應的LED二極管勾勒出所需要顯示的圖像,生成字模,可以得到三個不同大小的圖像的字模,存儲到單片機里,輪流通過74HC595傳送到LED點陣上顯
34、示。顯示的順序為先顯示小圖片、中圖片、大圖片然后再到中圖片、小圖片于是就有圖像在放大和縮小的效果。對于16*64點陣每一次顯示的都是四張一摸一樣的圖片。 LED點陣漢字的左移、右移、上移和下移的原理LED點陣漢字的移動原理其實就是通過控制選送的代碼來實現(xiàn)的,送什么LED點陣就顯示什么。對于漢字左移也就是顯示的漢字字模是一列一列的往左移,字模每往左移動一列,經(jīng)過16次循環(huán)行掃描就可以顯示出一整屏的字幕,則就可以看到漢字的某些部分或一整個漢字,也可以看看成將一個漢字分成16列,一列一列的往左送代碼。至于怎么計算出發(fā)送到LED點陣上的數(shù)據(jù),則通過軟件方面來實現(xiàn),利用了一個左移的函數(shù)靈活的計算出字模每
35、移動一列后顯示在LED點陣上的一整屏字幕的代碼,也就達到了字模左移的目的。至于右移的原理和左移的原理是相類似的,只是移動的方式不一樣送的代碼也就不一樣,軟件上運用的函數(shù)就變成為右移函數(shù)。對于本設計中的16*64點陣,要實現(xiàn)其字幕左移、右移也就不難了,總的概況就是先選通行,再送列的數(shù)據(jù)。在左移之前先給點陣送四個空的字符,然后“歡迎光臨”四個字,最后再送四個空的字符,它們的代碼排在一起,字模一列一列的往左移直到前面的四個空字符退出點陣,則“歡迎光臨”全部進入到LED點陣顯示屏上,后面的空字符則慢慢的一列一列煩人進入LED點陣顯示屏上,于是就形成了漢字左移的動態(tài)效果,而右移的原理也是類似的。LED點
36、陣顯示屏的上移和下移原理相對左移和右移來說也就是大同小異,但實現(xiàn)起來要比左移右移簡單些。首先LED點陣是采用行掃描的,循環(huán)掃描十六次就得到一整屏的字幕,那么如果先送四個空字符,再送調(diào)整過的“歡迎光臨”四個字符最后送四個空的字符,那么加起來就有48行代碼??梢詫⑶八膫€空字符、“歡迎光臨”四個字的字符和后四個空字符的的代碼排列起來,就相當于三個16*64LED點陣排列在一起。第一次掃描從第0行開始掃描,循環(huán)掃描16次,就掃描到第15行,顯示的是空的字符,第二次從第1行開始掃描,循環(huán)掃描16次就掃描到了第16行,由圖就明顯的看到了“歡迎光臨”四個字的第一行也就圖中的第16行顯示在LED點陣的最后一行
37、上了,以此類推,就形成了字幕上移的效果了。LED點陣的下移原理和上移的原理相同,只是它先從第32行開始掃描,循環(huán)掃描16次,先送出后面的空字符,然后再從31行開始掃描,循環(huán)16次得到一整屏字幕,這時“歡迎光臨”四個字的最后一行就顯示在LED點陣顯示屏的第一行上了,以此類推,循環(huán)32次,“歡迎光臨”就從上往下移出去,形成了漢字下移的動態(tài)效果。3.4驅(qū)動芯片模塊行驅(qū)動芯片74HC154若要正向點亮一個LED,至少也得10-20mA,如果電流不夠大則LED不夠亮,而單片機的輸出電流大概1-2mA8。因此要用到驅(qū)動電路,而使用的74HC154譯碼器提供的吸收電流不能驅(qū)動64個LED同時點亮,因此要在7
38、4HC154每一路輸出端與16*64點陣顯示器對應的每一行之間用一個三極管來將電流信號放大,這樣,74HC154某一輸出腳為低電平時對應的三極管發(fā)射極為高電平,從而使點陣顯示器的對應行也為高電平,本設計選用的三極管是8550。當74HC154的G1和G2為低電平時A、B、C、D四腳輸入有效,那么A、B、C、D四腳輸入共同控制著16種不同的輸入狀態(tài)用0000-1111來表示。每一種輸入狀態(tài)都單獨控制一路輸出,分別對應LED點陣的列。A、B、C、D作為地址數(shù)據(jù)輸入線,接P3.3,P3.4,P3.5,P3.6,74HC154的16行經(jīng)S9012放大后加載到點陣的行上。其電路原理圖如圖3-8所:圖3-
39、8 74HC154電路原理圖 74HC154芯片介紹74HC154是一款高速CMOS器件,74HC154引腳兼容低功耗肖特基TTL(LSTTL)系列9。74HC154芯片是一個譯碼器,它有四路4位的二進制地址輸入和16路輸出但每一次都只能有一路輸出。還有兩個使能輸入端G1和G2,但這兩個使能輸入端必須為低電平,四路地址輸入才會生效才能控制16路的輸出。74HC154的芯片引腳結構如圖3-9所示:圖3-9 74HC154芯片的引腳結構圖由圖3-9可以看到74HC154有24個引腳有兩個電源類控制引腳12腳GND和24腳VCC;16個地址輸出端1-11引腳即Y0-Y10低電平有效和13-17即Y1
40、1-Y17低電平有效;兩個使能輸入端18-19引腳低電平有效;四個地址輸入端20-23引腳。74HC154地址/全能輸入對應輸出表如表3-2:表3-2 74HC154地址/全能輸入對應輸出INPUTSELECTEOOUTPUT(L)G1G2DCBALLLLLLLLLLLLLLLLLLHHLHLHY0Y1Y2Y3LLLLLLLLLLLLHHHHLLHHLHLHY4Y5Y6Y7LLLLLLLLHHHHLLLLLLHHLHLHY8Y9Y10Y11LLLLLLLLHHHHHHHHLLHHLHLHY12Y13Y14Y15XHHXXXXXXXXXNONENONE表3-2中的H代表高電平,L代表低電平,X代
41、表任意電平,由表可以獲得信息兩個使能輸入G1、G2都必須為低電平,四個地址輸入A、B、C、D才是有效的,否則無效。只有A、B、C、D四個地址輸入有效才可以控制芯片的16路輸出。列驅(qū)動芯片74HC595單片機只有32個I/O口,對于16*64點陣顯示屏如果采用靜態(tài)掃描的方式I/O口明顯是不足的,因此本設計采用了動態(tài)掃描。那也就需要用到74HC595芯片來驅(qū)動LED點陣顯示屏的列。采用動態(tài)掃描,也就是一行一行的進行掃描的,每掃描一行就有64個發(fā)光二極管,也就是說有64位點陣數(shù)據(jù)從單片機的I/O口串行輸出。第一片74HC595的DS串行輸入引腳與單片機的I/O口相連,在移位寄存器的作用下單片機每傳送
42、一位數(shù)據(jù)DS引腳當時的電平就會向左移動一位。雖然單片機是輸出的是八位,但是取值的時候都是取最高位傳送給74HC595的。傳送滿八次,第一片的74HC595就有8位LED點陣數(shù)據(jù),并在存儲器的作用下將數(shù)據(jù)鎖存,當單片機繼續(xù)傳送數(shù)據(jù)時,第一片595里的電平就會左移將數(shù)據(jù)傳送到第二片595里,以此類推,那么經(jīng)過64次的移位或者說經(jīng)過64個移位時鐘就可以將某一行的LED點陣數(shù)據(jù)全部移送到74HC595里并鎖存。在行驅(qū)動的作用下選通該行,而列的數(shù)據(jù)則會在使能信號G的作用下(低電平有效),將595里的列的數(shù)據(jù)并行輸出給LED點陣的列線,這樣就可以得到該行LED二極管的亮滅了。而要想在16*64LED點陣上
43、顯示一整屏完整的字幕,就需要掃描16行,從第一行一行一行的掃描到第十六行。掃描第一行時,通過行驅(qū)動先選通第一行,再由列驅(qū)動來送第一行的數(shù)據(jù),得到第一行LED的亮滅;緊接著第一行就熄滅而選通第二行,再送第二行LED點陣數(shù)據(jù)得到第二行LED的亮滅,到第三行第四行一直到16行掃描完畢就可以看到一整屏完整的字幕了。以此類推,當?shù)谑袙呙柽^后再回到第一行,這樣只要掃描的速度足夠高,就可以形成一幅完整的文字或圖像10。其中驅(qū)動芯片74HC595的原理圖如圖3-10所示:圖3-10 驅(qū)動芯片74HC595的原理圖由圖3-10可以知道,八片74HC595驅(qū)動芯片是級聯(lián)在一起的,它們一起控制著LED點陣的列的
44、數(shù)據(jù)也就是列的亮滅。第一片的DS串行輸入與單片機的P3.2口相連接,用于提供串行的數(shù)據(jù)。八片74HC595芯片的11號引腳SH-CP都是和單片機P3.0口相連,用作移位時鐘脈沖,12號引腳ST-CP都是和單片機的P3.1口相連接用作存儲器的時鐘脈沖。然后某一595芯片的9號引腳即串行輸出與它后面的一片595芯片14號引腳即串行輸入相連接,只有最后一片595芯片它的9號引腳是沒有用到的。3.4.4 74HC595芯片的介紹74HC595是具有8位移位寄存器和一個存儲器,三態(tài)輸出功能,移位寄存器和存儲器是分別的時鐘11。數(shù)據(jù)是通過串行的方式輸入到74HC595中的,然后在使能信號OE低電平的作用下
45、,存儲寄存器中的數(shù)據(jù)才能并行輸出到總線上。74HC595驅(qū)動芯片的引腳結構圖如圖3-11所示:圖3-11 74HC595芯片的引腳結構圖由圖3-11可以看到74HC595有16個引腳,兩個電源類引腳即8號引腳GND和16號引腳VCC,Q0-Q7八個數(shù)據(jù)輸出引腳作為8位并行數(shù)據(jù)的輸出,兩個時鐘輸入引腳即11號腳SHCP和12號腳HTCP,一個使能輸出引腳13號腳OE低電平有效,一個主復位引腳10號腳MR低電平有效。3.5單片機最小系統(tǒng)模塊單片機最小系統(tǒng)是非常重要的一個模塊,它是決定了單片機能否正常運行,是單片機電路中必須要有的。單片機最小系統(tǒng)由電源、晶振電路和復位電路三部分組成12。單片機最小系
46、統(tǒng)模塊如圖3-12所示:圖3-12單片機最小系統(tǒng)原理圖第四章 軟件設計單片機C51語言既具有匯編語言對操作硬件的功能,又兼有高級編程語言的許多優(yōu)點,在單片機程序設計中,單片機C51語言得到了廣泛的應用4。本設計的很多功能需要通過軟件方面來實現(xiàn)LED點陣廣告牌內(nèi)容的顯示方式。也就是說只有硬件部分沒有軟件部分就不能實現(xiàn)廣告牌內(nèi)容的顯示以及多種顯示方式。程序流程圖的設計框圖如圖4-1所示:主程序流程圖595初始化子程序流程圖LED點陣顯示子程序流程圖圖4-1程序流程圖設計框圖4.1主程序設計本設計中廣告的內(nèi)容可以實現(xiàn)漢字的左移、右移、上移、下移和圖片的放大、縮小,它需要通過軟件方面來實現(xiàn)。其中主程序
47、的流程圖如圖4-2所示:開始系統(tǒng)初始化行掃描16行?漢字左移漢字右移漢字上移漢字下移圖片放大兩次?圖片縮小兩次?是否否是是否圖4-2主程序流程圖4.2 74HC595初始化子程序設計74HC595的數(shù)據(jù)是串行輸入并行輸出的,而單片機的數(shù)據(jù)總線是8位的。595每次都是取8位二進制的最高位輸入,每有一位數(shù)據(jù)輸入到595里,595里的數(shù)據(jù)都會在原來的基礎上左移一位13。74HC595的初始化子程序流程圖如圖4-3所示:DS數(shù)據(jù)串行輸入循環(huán)8次?Dat左移一位取dat最高位開始否是圖4-3 74HC595的初始化子程序流程圖74HC595的初始化程序代碼為:void hc595(unsigned ch
48、ar dat)/74HC595初始化程序unsigned char i;for(i=0;i<8;i+)DS=dat&0x80;SH_CP=1;SH_CP=0; dat<<=1;4.3 LED點陣顯示屏子程序設計返回要在LED點陣顯示屏上得到一整屏的字幕就要通過行驅(qū)動和列驅(qū)動共同控制,將數(shù)據(jù)送到點陣顯示屏上顯示。LED點陣顯示屏子程序流程圖如圖4-4所示:開始一整屏字幕154行掃描,hang595送列數(shù)據(jù)Hang+Hang=16?初始化是返回否圖4-4LED點陣顯示子程序流程圖設計中是采用行掃描的,每掃描一行就送這一行對應的列的數(shù)據(jù),循環(huán)掃描完十六行就得到一整屏的字幕顯
49、示到LED點陣上。但如果要實現(xiàn)字幕的左移、右移、上移和下移是需要經(jīng)過軟件的編程來實現(xiàn)的。左移部分的程序代碼為:void left1(uint num)/左移處理 signed char s; for(s=0;s<=4;s+) buffer8-2*s=displaynum+32*s+1+2*discrow; buffer9-2*s=displaynum+32*s+2*discrow; void left2()/向左移動 uchar i=Mov_left,s; uchar inc,tempyid,temp1; if(i<8)inc=1; else inc=0; for(s=0+inc;
50、s<8+inc;s+) if(i<8) tempyid=i; else tempyid=i-8; temp1=buffers+1>>tempyid|buffers<<8-tempyid; hc595(temp1); void zuoyi()/漢字左移 while(zi_mo_left<255) for(discrow=0;discrow<16;discrow+) left1(zi_mo_left); left2(); oe=1; HC154(discrow); delay1(1); oe=0; ST_CP=1; ST_CP=0; Mov_left
51、+; if(Mov_left>=16) Mov_left=0;zi_mo_left+=32; 第五章 系統(tǒng)調(diào)試在完成硬件的制作之后,需要知道已做好的系統(tǒng)是否達到我們預期的功能要求,那就離不開調(diào)試。調(diào)試主要就是硬件調(diào)試和軟件調(diào)試。在硬件調(diào)試的過程應該分模塊,逐個進行調(diào)試,而且要在保證軟件正確的情況下去對硬件進行測試,這樣就才容易找到錯誤的所在。對于軟件的調(diào)試主要是把用C語言編寫好的程序復制到Keil uVision3軟件進行編譯,不斷的修改錯誤的地方直到編譯成功。我們常用的編程語言就是C語言匯編和匯編語言,在編寫的時候需要有先驗的知識主體,了解單片機的概念14。硬件的調(diào)試主要分為LED點陣
52、顯示屏的調(diào)試和單片機最小系統(tǒng)的調(diào)試。5.1 LED點陣顯示屏的調(diào)試16*64點陣顯示屏做好后,可能會因為各種原因使得它并不能正常工作,那么就要進行調(diào)試。有時在焊接的時候不夠認真導致焊接錯誤出現(xiàn)短路的現(xiàn)象,因此要用萬用表進行檢測。用自制的穩(wěn)壓直流電源給點陣顯示屏提供充足的電源,然后觀察點陣顯示屏的LED管的亮滅情況,是否能將點陣顯示屏全部點亮。如果有些LED不亮,就要找出問題所在然后有針對性的進行修改,一直到點陣顯示屏能正常工作就調(diào)試成功。5.2單片機最小系統(tǒng)的調(diào)試單片機最小系統(tǒng)是一個重要的模塊,所以如果單片機最小系統(tǒng)模塊沒有或出現(xiàn)差錯都會導致單片機整個系統(tǒng)出現(xiàn)問題。也因此單片機最小系統(tǒng)的調(diào)試也
53、是十分重要的,首先要用萬用表檢測自制穩(wěn)壓直流電源電壓是否正常,保證供電沒有問題。然后再用萬用表檢測復位電路中,最后還要用示波器來檢測晶振電路是否正常,通過一步一步的檢測就能發(fā)現(xiàn)問題,并很好的解決問題,使得最小系統(tǒng)能正常的運作就算調(diào)試成功。5.3軟件的調(diào)試對于軟件的調(diào)試主要是在Keil 5環(huán)境下編寫程序15,它是由美國Keil Software公司開發(fā)的,是屬于C語言的軟件開發(fā)系統(tǒng)。在Keil uVision3軟件上對項目文件進行編譯,編譯有錯誤就要不斷的修改錯誤的地方直到編譯沒有錯誤。然后通過燒錄器將通過編譯器擴展名為.HEX的可執(zhí)行文件燒寫到單片機內(nèi),進行軟硬件聯(lián)合調(diào)試。5.4軟硬件聯(lián)合調(diào)試
54、在硬件和軟件都分別調(diào)試成功后,把它們結合在一起卻不一定能正常工作,也有可能達不到本設計所要求的功能,所以軟硬件聯(lián)合調(diào)試是一個設計完成后必不可缺的部分,是一件作品能否順利完成的重要環(huán)節(jié)。首先把軟件部分的程序燒寫到52單片機上,然后提供直流穩(wěn)壓電源,開啟啟動按鈕,觀察LED點陣顯示屏所顯示內(nèi)容,是否符合本設計的要求,它左移、右移、上移、下移和圖片的放大、縮小功能是否實現(xiàn)了。開始的時候LED點陣顯示屏上出現(xiàn)一些拖影的現(xiàn)象也就是有的點不該亮的也亮了,使得點陣的顯示效果極差。這時就想到了可能是程序的干擾,對程序進行修改,增加了延時的程序,再重新把程序燒寫到單片機上,重新啟動按鈕,繼續(xù)觀察LED點陣顯示屏
55、,發(fā)現(xiàn)LED點陣顯示屏的顯示效果明顯好多了。再繼續(xù)整延時程序,重復上面的工作,一直到LED點陣顯示屏的顯示效果達到最佳的狀態(tài)就算調(diào)試成功。然后觀察LED點陣顯示屏的左移功能是否實現(xiàn)了,起初它并不能達到左移的效果,經(jīng)過思考對結合實際對左移程序進行了處理,最終實現(xiàn)了左移。同理對其它的功能要求一一進行觀察,有問題出現(xiàn)就細心尋找問題所在,并找出解決問題的方式。不斷的反復修改,到最后軟硬件聯(lián)合調(diào)試達到所需的功能要求,則調(diào)試成功。5.5系統(tǒng)調(diào)試總結一個設計完成了硬件電路的部分后,還不能結束設計的工作,調(diào)試的工作是十分重要的。在進行調(diào)試的過程中,要認真仔細,有針對性的去修改存在的問題,對于一個LED點陣顯示屏的調(diào)試,最主要的是軟硬件聯(lián)合調(diào)試。一般只要電路沒有錯誤,焊接時仔細認真,硬件又完好那么LED點陣顯示屏都是能正常工作的。但要實現(xiàn)LED顯示屏顯示的內(nèi)容,顯示的模式功能是需要不停的修修改改的才能達到要求。經(jīng)過各種調(diào)試,最后本設計的16*64點陣能夠顯示漢字的左移、右移、上移、下移和圖片的放大、縮小,調(diào)試成功,作品也就算順利的完成了。第六章
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 空氣電極催化劑-全面剖析
- 課題申報書:新時代大學校園秩序管理研究
- 課題申報書:新《教師法》背景下國家教師資格考試制度改革發(fā)展研究
- 職業(yè)中專生命健康教育主題班會
- 口服液生產(chǎn)機械企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 大數(shù)據(jù)挖掘與可視化-全面剖析
- 急性會厭炎護理查房
- 服裝設計基礎課程說課
- 集成電路可靠性研究-全面剖析
- 部分冠與對話系統(tǒng)整合-全面剖析
- Access-2016數(shù)據(jù)庫應用教程全書ppt課件匯總(完整版)
- 珠寶零售店運營管理手冊范本
- 電纜溝工程量計算表(土建)
- 初中數(shù)學課堂教學中應重視學生閱讀理解能力的培養(yǎng)
- 中層干部因私出國境請假審批表
- 濰柴發(fā)動機WD615系列分解圖冊
- 泵站水錘計算書
- 中國城市規(guī)劃設計研究院交通評估收費標準
- 配件來源及報價明細表
- IQC供應商品質(zhì)管理看板
- 鋼結構安裝專項方案(電梯井)
評論
0/150
提交評論