版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢 業(yè) 論 文 論文題目 系 別 電子信息工程系 專 業(yè) 電子信息工程 班 級(jí) 學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師(簽名) 完成時(shí)間 年 月摘要隨著社會(huì)經(jīng)濟(jì)的發(fā)展,廣告已深入廣大人民群眾的生活,也為許多商家和公益團(tuán)體所充分利用,LED點(diǎn)陣廣告牌更是深得人們的喜愛(ài)。為了可以滿足客戶所要求的廣告宣傳,本設(shè)計(jì)設(shè)計(jì)了一個(gè)16*64的LED點(diǎn)陣廣告牌,本廣告牌可以實(shí)現(xiàn)漢字和圖片的顯示。本設(shè)計(jì)中以AT89S52單片機(jī)為主控芯片的16*64點(diǎn)陣LED廣告牌,單片機(jī)通過(guò)讀取字模并作相應(yīng)的處理,然后以不同的顯示方式顯示到點(diǎn)陣顯示屏上,實(shí)現(xiàn)廣告牌內(nèi)容顯示形式的多樣化。另外還得用八個(gè)74HC595驅(qū)動(dòng)芯片和一個(gè)74HC15
2、4驅(qū)動(dòng)芯片來(lái)驅(qū)動(dòng)16個(gè)8*8點(diǎn)陣來(lái)實(shí)現(xiàn)文字和圖片的顯示,并能實(shí)現(xiàn)文字的左移、右移、上移和下移以及圖像的放大和縮小。74HC154作為行驅(qū)動(dòng),選通行即該行導(dǎo)通,然后由74HC595送列的數(shù)據(jù)控制該行列的亮滅。通過(guò)軟件可以編程更新廣告牌的內(nèi)容,滿足不同時(shí)刻不同客戶的廣告需求。本廣告牌可以為客戶帶來(lái)商業(yè)利益,為群眾帶來(lái)信息,還可以作為公益宣傳廣告為社會(huì)公益事業(yè)作出貢獻(xiàn)。關(guān)鍵詞:?jiǎn)纹瑱C(jī); 8*8點(diǎn)陣; LED點(diǎn)陣廣告牌; 級(jí)聯(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國(guó)內(nèi)外發(fā)展趨勢(shì)1第二章 設(shè)計(jì)方案論證22.1系統(tǒng)要求22.2主控芯片的選取方案論證22.3 顯示屏的顯示方式論證32.4電源的選取方案論證32.5設(shè)計(jì)方案總結(jié)3第三章 系統(tǒng)硬件電路的設(shè)計(jì)43.1硬件電路要求43.2單片機(jī)模塊43.3點(diǎn)陣模塊53.4驅(qū)動(dòng)芯片模塊113.5單片機(jī)最小系統(tǒng)模塊14第四章 軟件設(shè)計(jì)154.1主程序設(shè)計(jì)154.2 74HC595初始化子程序設(shè)計(jì)174.3 LED點(diǎn)陣顯示屏子程序設(shè)計(jì)17第五章 系統(tǒng)調(diào)試205.1 LED點(diǎn)陣顯示屏的調(diào)試205.2單片機(jī)最小系統(tǒng)的調(diào)試205.3軟件的調(diào)試205.4軟硬件聯(lián)合調(diào)試205.5系統(tǒng)調(diào)試總結(jié)21第
9、六章 結(jié)束語(yǔ)226.1設(shè)計(jì)總結(jié)226.2心得體會(huì)22參考文獻(xiàn)23致謝24第一章 前言1.1意義我們可以發(fā)現(xiàn)廣告隨處可見(jiàn),廣告能帶給人們利益,而有的廣告牌很容易被人忽視,為了更好的吸引廣大群眾的眼球,達(dá)到更好的廣告效果人們想到了點(diǎn)陣廣告牌。實(shí)現(xiàn)一件物品的價(jià)值除了要保證它的質(zhì)量和實(shí)用性外,還得讓越多的人知道,才越能實(shí)現(xiàn)它的價(jià)值。于是,很多的商家,企業(yè)或公司等都不惜花大價(jià)錢去做廣告宣傳,事實(shí)證明廣告確實(shí)能為人們帶來(lái)可觀的效益。既然要做廣告就應(yīng)找好的廣告方式做好的廣告宣傳,如做LED點(diǎn)陣廣告牌就是一個(gè)不錯(cuò)的選擇?,F(xiàn)今,LED點(diǎn)陣廣告牌已經(jīng)遍及城市甚至農(nóng)村各地,該類廣告牌已經(jīng)得到了十分廣泛的應(yīng)用了。出租
10、車在城市里是很多的,而且出租車是經(jīng)常開(kāi)動(dòng)的,這么看來(lái)在出租車上做廣告,廣告的內(nèi)容會(huì)得到極好宣傳。在出租車上做LED點(diǎn)陣廣告,可視的距離比較遠(yuǎn),可讓廣大的人民群眾看到,信息得到很好的傳播因而可以從中獲得利益。此類廣告牌也適用于其它的一些車輛,比如公交車、班車、貨車等,應(yīng)用范圍廣。本設(shè)計(jì)的廣告牌類型是屬于電子類廣告的,其使用的范圍是極為廣泛的,廣告效果也極好。不用花費(fèi)很多錢就可以做一個(gè)電子廣告,廣告的宣傳范圍還很廣,廣告的形式還可以多樣化,客戶對(duì)LED點(diǎn)陣廣告牌的需求量也很高。廣告牌的內(nèi)容還可以根據(jù)需要花點(diǎn)時(shí)間便可以更改,更改起來(lái)簡(jiǎn)單而且也不麻煩。LED點(diǎn)陣廣告牌看起來(lái)清晰而又美觀,廣告內(nèi)容一目了
11、然,可以吸引廣大人民群眾的眼球,特別是在晚上看起來(lái)更加的亮麗。1.2國(guó)內(nèi)外發(fā)展趨勢(shì) LED點(diǎn)陣顯示屏具有發(fā)光率高、使用壽命長(zhǎng)、組態(tài)靈活、色彩豐富以及對(duì)室內(nèi)室外環(huán)境適應(yīng)能力強(qiáng)等優(yōu)點(diǎn),在國(guó)內(nèi)外得到了廣泛的應(yīng)用1。在國(guó)內(nèi),可以看到LED點(diǎn)陣顯示屏無(wú)處不在,特別是在城市里,走在城市的大街小巷里幾乎達(dá)到了一抬眼就會(huì)有LED點(diǎn)陣顯示屏映入眼簾的狀態(tài)。我國(guó)的LED顯示屏在不斷的改造創(chuàng)新,它的發(fā)展趨勢(shì)更是有目共睹的,它的優(yōu)點(diǎn)也是處于增加的狀態(tài)或者說(shuō)是得到加強(qiáng)的??傊覈?guó)對(duì)LED顯示屏的需求量是在不斷的增加的,它的市場(chǎng)越來(lái)越廣泛生產(chǎn)規(guī)模也就越來(lái)越大。它的發(fā)展趨勢(shì)是十分好的,而且會(huì)越來(lái)越強(qiáng)大,越來(lái)越為廣大人民所使
12、用。它會(huì)變得更加的實(shí)用而耀眼,它正向著更高亮度、更多色彩、更加的標(biāo)準(zhǔn)化、規(guī)范化和結(jié)構(gòu)更多樣化的趨勢(shì)迅速發(fā)展。而LED顯示在國(guó)外的發(fā)展趨勢(shì)也是不言而喻的,它不僅適用壽命長(zhǎng)而且適合在室內(nèi)適用也適合在室外適用,可以充分利用它在室內(nèi)室外所擁有的價(jià)值。它在國(guó)外的競(jìng)爭(zhēng)會(huì)越來(lái)越激烈,在國(guó)外的需求也是急劇上升的,而是用的范圍也在不斷的擴(kuò)大??傊甃ED在國(guó)內(nèi)外都具有很好的發(fā)展前景,存在很大的發(fā)展空間,要充分的發(fā)揮它的作用,使得它達(dá)到最高的使用價(jià)值。無(wú)論何時(shí)都要高度的重視它的發(fā)展前景,時(shí)刻關(guān)注它的市場(chǎng)需求,不斷的加強(qiáng)技術(shù)含量,相信它會(huì)得到更加廣泛的應(yīng)用。第二章 設(shè)計(jì)方案論證2.1系統(tǒng)要求近幾年來(lái),單片機(jī)的發(fā)展十分
13、迅速,它已滲透到諸多學(xué)科的領(lǐng)域,以及人們生活的各個(gè)方面2。本設(shè)計(jì)采用AT89S52為主控芯片的16*64LED點(diǎn)陣廣告牌,該廣告牌的色彩艷麗、顯示方式多樣化、亮度適中、壽命很長(zhǎng)、可視的距離遠(yuǎn),驅(qū)動(dòng)簡(jiǎn)單方面等優(yōu)點(diǎn)。硬件部分主要由一個(gè)AT89S52單片機(jī)、16個(gè)8*8點(diǎn)陣、八片74HC595芯片和一片74HC154芯片等組成。16*64點(diǎn)陣廣告牌的功能:要求廣告的各點(diǎn)亮度盡量做到更好,文字的要能清楚的顯示出來(lái)而且穩(wěn)定。廣告除了能顯示文字外還能顯示圖片,可以將圖片先放大再縮小,廣告文字的顯示模式有左移、右移、上移和下移四種。開(kāi)始設(shè)計(jì)前簡(jiǎn)單的畫出設(shè)計(jì)電路的硬件原理圖框圖如圖2-1所示:52單片機(jī) 復(fù)位
14、電路LED點(diǎn)陣顯示屏行驅(qū)動(dòng)列驅(qū)動(dòng)電源圖2-1 電路硬件原理圖框圖2.2主控芯片的選取方案論證方案一:采用可編程邏輯器件(簡(jiǎn)稱為PLD)系統(tǒng)來(lái)實(shí)現(xiàn)LED點(diǎn)陣內(nèi)容的顯示,可以充分的利用器件里豐富的I/O口資源來(lái)驅(qū)動(dòng)LED點(diǎn)陣的行和列。但若采用中大規(guī)模的PLD,設(shè)計(jì)多個(gè)接口電路,開(kāi)發(fā)周期長(zhǎng),不易于進(jìn)一步擴(kuò)展,同時(shí)系統(tǒng)的成本會(huì)急劇上升3。方案二:采用AT89S52單片機(jī)系統(tǒng)來(lái)實(shí)現(xiàn),52單片機(jī)體積小,可靠性高,適用范圍廣,使用方式靈活而簡(jiǎn)單,價(jià)格便宜。另一方面52單片機(jī)簡(jiǎn)單易學(xué),對(duì)于數(shù)據(jù)的處理也速度比較快,因此是很多設(shè)計(jì)的優(yōu)先選擇。雖然本設(shè)計(jì)采用的需要使用到單片機(jī)很多的外部接口而單片機(jī)外部接口明顯不夠用
15、,但使用74HC595芯片可以節(jié)省I/O口達(dá)到驅(qū)動(dòng)更加多的LED,控制靈活方面再加上安裝和調(diào)試的工作也比較的簡(jiǎn)單方便,使得本設(shè)計(jì)和制作過(guò)程的難度得以降低。綜上比較考慮,毅然選擇了方案二來(lái)完成本設(shè)計(jì)。2.3 顯示屏的顯示方式論證方案一:采用靜態(tài)方式,這種方式就是直接把所有的發(fā)光二極管的一極跟單片機(jī)的I/O口連接,所有發(fā)光二極管的另外一極就通過(guò)電阻然后接到電源上。這種方法可以直接驅(qū)動(dòng)LED,原理也很簡(jiǎn)單且具有很強(qiáng)的驅(qū)動(dòng)能力,對(duì)于LED的點(diǎn)亮方式則可通過(guò)限流電阻來(lái)進(jìn)行調(diào)節(jié),十分方便,但這種方法的缺點(diǎn)就是很浪費(fèi)單片機(jī)的I/O口不能驅(qū)動(dòng)很多的LED,它適用于那些相對(duì)來(lái)說(shuō)比較小的系統(tǒng)。方案二:采用動(dòng)態(tài)掃描
16、的方式,這一種方式也就是先把LED并聯(lián)在一起然后跟驅(qū)動(dòng)芯片的輸出引腳相連接,而LED發(fā)光二極管的另外一端就跟單片機(jī)的通用I/O口相連接,控制選通行所對(duì)應(yīng)列LED燈的亮滅。采用這種掃描方案,能夠達(dá)到驅(qū)動(dòng)比較多的LED的功能要求,控制起來(lái)也很靈活,還有一個(gè)優(yōu)點(diǎn)就是占用較少的單片機(jī)的I/O口。動(dòng)態(tài)掃描就是一行接一行的去點(diǎn)亮發(fā)光二極管,那樣僅僅使用一套驅(qū)動(dòng)器就可以驅(qū)動(dòng)很多行的同名列。根據(jù)對(duì)方案一和方案二進(jìn)行比較,經(jīng)過(guò)綜合考慮可以發(fā)現(xiàn),動(dòng)態(tài)掃描方式占有較多的優(yōu)勢(shì)。而本設(shè)計(jì)做的是16*64LED點(diǎn)陣廣告牌,若采用靜態(tài)顯示I/O口是明顯不足的,所以本設(shè)計(jì)最后選擇的方案是方案二。2.4電源的選取方案論證方案一
17、:采用普通的干電池作為系統(tǒng)的供電電源,使用這一方案使得電壓穩(wěn)定也方便攜帶,但它工作的時(shí)間比較短顯然不利于屏幕的顯示,而且使用干電池是需要經(jīng)常的更換的,這樣就會(huì)造成了對(duì)環(huán)境的污染,不利于環(huán)保。方案二:采用自制的直流穩(wěn)壓電源來(lái)作為系統(tǒng)的供電電源,使用這一方案電壓穩(wěn)定而且還能持續(xù)的工作,既可以用于大屏幕的顯示,又不會(huì)造成污染的環(huán)境,因此本設(shè)計(jì)中采用了方案二。2.5設(shè)計(jì)方案總結(jié)要實(shí)現(xiàn)一個(gè)功能要求會(huì)有不同的方式,只有通過(guò)多方面的綜合考慮才能從中選取出最優(yōu)的設(shè)計(jì)方案。通過(guò)方案論證本設(shè)計(jì)最終的設(shè)計(jì)方案就是用AT89S52為主控芯片,芯片74HC595來(lái)驅(qū)動(dòng)LED顯示屏的列,芯片74HC154來(lái)驅(qū)動(dòng)點(diǎn)陣顯示屏
18、的行,而顯示方式采用的是動(dòng)態(tài)掃描,以自制的直流穩(wěn)壓源作為系統(tǒng)的供電電源。第三章 系統(tǒng)硬件電路的設(shè)計(jì)3.1硬件電路要求硬件電路能完成以下功能:16*64LED點(diǎn)陣顯示屏可以顯示任何漢字,可以實(shí)現(xiàn)漢字的左移、右移、上移和下移,還可以實(shí)現(xiàn)圖像的顯示及圖像的放大和縮小。通過(guò)軟件方面的設(shè)計(jì)可以實(shí)現(xiàn)點(diǎn)陣廣告牌內(nèi)容的隨時(shí)更新,更新起來(lái)簡(jiǎn)單方便。3.2單片機(jī)模塊單片機(jī)具有高性價(jià)比、高速度、小體積、可重復(fù)編程和方便功能擴(kuò)展、通用靈活等優(yōu)點(diǎn)4。單片機(jī)所具有的優(yōu)點(diǎn)決定了它使用范圍的廣度,其價(jià)格又便宜是很多系統(tǒng)設(shè)計(jì)的優(yōu)先選擇。在本設(shè)計(jì)中,是以AT89S52為主控芯片的LED點(diǎn)陣廣告牌,單片機(jī)的端口通過(guò)與驅(qū)動(dòng)器相連來(lái)顯
19、示數(shù)據(jù)。單片機(jī)的P3.0口接74HC595的11號(hào)引腳(SH-CP)移位寄存器時(shí)鐘輸入;P3.1口接74HC595的12號(hào)引腳(ST-CP)存儲(chǔ)寄存器時(shí)鐘輸入;P3.2口接74HC595的14號(hào)引腳(DS)串行數(shù)據(jù)輸入;P3.3口、P3.4口、P3.5口和P3.6口分別接74HC154的A、B、C、D四個(gè)地址輸入引腳,控制電路的十六路輸出,送出行選信號(hào);P3.7接74HC154的G1、G2作為輸出使能端,低電平有效。單片機(jī)模塊電路原理圖如圖3-1所示:圖3-1單片機(jī)模塊原理圖AT89S52為ATMEL所產(chǎn)的一種低功耗、高性能CMOS08位微控制器,其內(nèi)部程序存儲(chǔ)器(ROM)為8KB,內(nèi)部數(shù)據(jù)存
20、儲(chǔ)器(RAM)為256字節(jié)5。單片機(jī)里有32個(gè)I/O口,分為P0口、P1口、P2口和P3口,然后每一個(gè)I/O口都是8位的。本設(shè)計(jì)中主要用到的I/O就是P3口,其中74HC595占用了單片機(jī)三個(gè)I/O口,75HC154占用了5個(gè)I/O口。P3口具有內(nèi)部上拉電阻8位雙向I/O口,輸出緩沖器可以驅(qū)動(dòng)4個(gè)TTL邏輯電平,還可以接受一些控制信號(hào)5。P3口引腳號(hào)第二功能如表3-1所示:表3-1引腳號(hào)第二功能表引腳號(hào)第二功能P3.0RXD串行輸入P3.1TXD串行輸出P3.2INT0外部中斷0P3.3INT0外部中斷0P3.4T0定時(shí)器/計(jì)數(shù)器外部輸入0P3.5T1定時(shí)器/計(jì)數(shù)器外部輸入1P3.6WR外部數(shù)
21、據(jù)存儲(chǔ)器寫選通P3.7RD外部數(shù)據(jù)存儲(chǔ)器寫選通3.3點(diǎn)陣模塊 LED點(diǎn)陣顯示原理本設(shè)計(jì)采用的是動(dòng)態(tài)掃描,也就是每一次都只選通一行循環(huán)選通行,如對(duì)16*64點(diǎn)陣的十六行進(jìn)行循環(huán)點(diǎn)亮,采用這樣掃描驅(qū)動(dòng)電路的優(yōu)點(diǎn)就是能夠用一套列驅(qū)動(dòng)器來(lái)實(shí)現(xiàn)很多行的同名列。采用動(dòng)態(tài)掃描,在行驅(qū)動(dòng)和列驅(qū)動(dòng)的作用下,一行一行的將需要顯示的數(shù)據(jù)送到LED點(diǎn)陣顯示屏上。一行一行的進(jìn)行掃描循環(huán)掃描十六次就能得到一整屏的字幕,但只有在掃描到某一行時(shí),該行才會(huì)有LED燈被點(diǎn)亮,而人眼卻能看到一整屏字幕是同時(shí)點(diǎn)亮的。其中的原理就是人們常說(shuō)的視覺(jué)惰性,也就是只要一整屏字幕從開(kāi)始循環(huán)到結(jié)束的時(shí)間在20ms(50Hz)內(nèi),人眼看上去就不會(huì)
22、感覺(jué)得到有閃爍。實(shí)驗(yàn)證明臨界閃爍頻率大約為24Hz,因此采用每秒24幅畫面的電影,在人眼看起來(lái)就是連續(xù)活動(dòng)的圖像6。那么對(duì)于16*64LED點(diǎn)陣,一共有十六行,則每行掃描時(shí)間不能超過(guò)20ms/16=1.25ms,這樣才能看到一整屏完整的漢字或字符圖像。3.3.2 16*64點(diǎn)陣顯示屏本設(shè)計(jì)的LED點(diǎn)陣廣告牌是使用16個(gè)8*8共陽(yáng)點(diǎn)陣組成的16*64點(diǎn)陣顯示屏,主要用來(lái)顯示漢字實(shí)現(xiàn)廣告效果,其次也將圖片顯示到LED點(diǎn)陣顯示屏上。16個(gè)點(diǎn)陣組成2*8點(diǎn)陣即有兩排點(diǎn)陣,每排八個(gè),可以看成A、B兩大行和18八大列,2*8點(diǎn)陣排列框圖如圖3-2所示:圖3-2 2*8點(diǎn)陣排列框圖第1列的兩塊點(diǎn)陣的16、1
23、5、11、6、10、4、3、13號(hào)引腳分別對(duì)應(yīng)第一片74HC595的Q0、Q1、Q2、Q3、Q4、Q5、Q6和Q7號(hào)引腳,第2列的兩塊點(diǎn)陣的16、15、11、6、10、4、3、13號(hào)引腳則分別對(duì)應(yīng)第二片74HC595的Q0-Q7號(hào)引腳,以此類推,八片74HC595剛好能驅(qū)動(dòng)16*64LED點(diǎn)陣的列;這樣74HC595鎖存的8位數(shù)據(jù)就可以并行輸出到點(diǎn)陣上顯示。而第A行的所有的8*8LED點(diǎn)陣的9、14、8、12、1、7、2、5號(hào)引腳就都和74HC154的Y0-Y7相連接;第B行的所有8*8LED點(diǎn)陣的9、14、8、12、1、7、2、5號(hào)引腳就都和74HC154的Y8-Y15相連接;這樣就實(shí)現(xiàn)了L
24、ED點(diǎn)陣的列驅(qū)動(dòng)和行驅(qū)動(dòng),而Y0-Y15決定了每一小行的64個(gè)LED是否選通,從而實(shí)現(xiàn)了控制LED的亮滅。16個(gè)8*8點(diǎn)陣組成的16*64點(diǎn)陣在電路中的原理圖如圖3-3所示:圖3-3 16*64點(diǎn)陣電路原理圖3.3.3 8*8點(diǎn)陣內(nèi)部結(jié)構(gòu)本設(shè)計(jì)的16*64點(diǎn)陣廣告牌是由多個(gè)8*8點(diǎn)陣組成的,因此要深入了解8*8點(diǎn)陣的內(nèi)部結(jié)構(gòu)。LED點(diǎn)陣是由發(fā)光二極管組成的,64個(gè)發(fā)光二極管通過(guò)一定的連接方式連接起來(lái)組成一個(gè)8*8點(diǎn)陣。LED點(diǎn)陣可以分為共陽(yáng)型的點(diǎn)陣和共陰型的點(diǎn)陣,而它們的區(qū)別就在于LED燈的連接方式不同。共陽(yáng)型8*8點(diǎn)陣?yán)锩恳恍兄械?個(gè)LED發(fā)光二級(jí)管的陽(yáng)極都連接在一起,每一列中的8個(gè)LED發(fā)
25、光二極管的陰極都連接在一起。要點(diǎn)亮一個(gè)發(fā)光二極管則要求發(fā)光二極管陽(yáng)極的電平比陰極的電平高,那么如果要點(diǎn)亮某一行的所有發(fā)光二極管,則要將該行接高電平,該行所對(duì)應(yīng)的列全部接低電平就可以實(shí)現(xiàn)了。換句話說(shuō)也就是,通過(guò)行和列可以控制任何一個(gè)發(fā)光二極管的亮滅,那么要顯示出漢字或字符也就不是什么難事了。共陽(yáng)8*8點(diǎn)陣顯示器內(nèi)部結(jié)構(gòu)圖如圖3-4所示:圖3-4共陽(yáng)8*8點(diǎn)陣顯示器內(nèi)部結(jié)構(gòu)圖由圖3-4可以看到一個(gè)8*8點(diǎn)陣也就只有64個(gè)發(fā)光二極管,如果想要顯示一個(gè)漢字,實(shí)現(xiàn)起來(lái)會(huì)有點(diǎn)困難,字型看起來(lái)也不是那么像。一個(gè)字符兩個(gè)字節(jié)而每一個(gè)字節(jié)八位,那么用一個(gè)16*16點(diǎn)陣就剛好可以得到很好的漢字顯示效果。在一定的范
26、圍內(nèi),二極管的數(shù)目越多也就相當(dāng)于像素點(diǎn)越多,那么可以顯示的漢字或圖片就越多。3.3.4 16*16點(diǎn)陣內(nèi)部結(jié)構(gòu)及顯示原理在了解16*64點(diǎn)陣顯示屏之前,要先弄清楚16*16點(diǎn)陣是怎么連接在一起的,再弄懂行控線和列控線的作用。每一個(gè)16*16點(diǎn)陣都是由四個(gè)8*8點(diǎn)陣來(lái)組成的,每行有兩個(gè)8*8點(diǎn)陣,每一列也有兩個(gè)8*8點(diǎn)陣。其中16*16點(diǎn)陣顯示屏內(nèi)部結(jié)構(gòu)框圖如圖3-5所示:圖3-5 16*16點(diǎn)陣顯示屏內(nèi)部結(jié)構(gòu)框圖如圖3-5,A、B、C、D表示四個(gè)8*8點(diǎn)陣,把四個(gè)8*8點(diǎn)陣連在一起的方法就是將A這個(gè)點(diǎn)陣的9、14、8、12、1、7、2、5八個(gè)控制行的引腳跟B點(diǎn)陣的八個(gè)行控制引腳相連接,同理將C
27、和D這兩個(gè)點(diǎn)陣的行控制引腳對(duì)應(yīng)相連接在一起,這樣A和B還有C和D的行就形成為行控線。將A點(diǎn)陣的16、15、11、6、10、4、3、13八個(gè)控制列的引腳跟C點(diǎn)陣八個(gè)控制列的引腳相連接,同理將B和D這兩個(gè)點(diǎn)陣的控制列的引腳對(duì)應(yīng)相連接在一起,這樣A和C還有B和D的列就成為列控線。同理,本設(shè)計(jì)的16*64點(diǎn)陣顯示屏里16個(gè)8*8點(diǎn)陣通過(guò)級(jí)聯(lián)在一起形成控制行和控制列的線。在UCDOS中文宋體字庫(kù)中每一個(gè)字都是由16*16點(diǎn)陣組成顯示的,在國(guó)家標(biāo)準(zhǔn)漢字庫(kù)里是用256點(diǎn)陣來(lái)表示出一個(gè)漢字。任何一個(gè)漢字都是由點(diǎn)來(lái)組成的,將每一個(gè)點(diǎn)都看做是一個(gè)像素,那么一個(gè)字就可以看做是一幅圖像。一個(gè)16*16點(diǎn)陣總共有256
28、個(gè)LED發(fā)光二極管(即256個(gè)像素點(diǎn)),在256像素范圍內(nèi)的所有圖形都可以顯示在16*16點(diǎn)陣顯示屏上。本設(shè)計(jì)中有共有四個(gè)16*16點(diǎn)陣,可以顯示想要顯示的內(nèi)容,而這里顯示的是“歡迎光臨”四個(gè)字。實(shí)現(xiàn)了這四個(gè)字的上移、下移、左移和右移,還實(shí)現(xiàn)了四個(gè)圖形實(shí)現(xiàn)圖形的放大和縮小。16*16點(diǎn)陣要顯示出“歡”字,通過(guò)點(diǎn)亮一些點(diǎn)來(lái)繪出“歡”字的字型,用16*16點(diǎn)陣顯示“歡”字如圖3-6所示: 圖3-6 16*16點(diǎn)陣顯示“歡”字圖3-6中的A-P表示16*16點(diǎn)陣的第一行到第十六行,而0-15就表示點(diǎn)陣的第一列到第十六列。本設(shè)計(jì)是由AT89S52為主控制芯片的,52單片機(jī)的是8位的總線,這么看來(lái)一個(gè)字
29、就應(yīng)該分作兩個(gè)部分。根據(jù)漢字在取模軟件里的取模方式,通常情況下把字拆分為上面部分和下面部分,那么上部和下部都是一個(gè)8*16點(diǎn)陣。在取模的時(shí)候通過(guò)利用字模軟件可以得到“歡”字的掃描代碼為: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對(duì)于第一行,在掃描的時(shí)候是先選通A行,再由列的數(shù)據(jù)決定A行哪一列的LED管點(diǎn)亮。對(duì)于“歡”字
30、A行亮的是第八列的LED,由于掃描的時(shí)候是低位在前所以可獲得代碼第一行的二進(jìn)制代碼為1111 0111 1111 1111,轉(zhuǎn)換為十六進(jìn)制就是0xFE,0xFF,以此類推可以算出“歡”字的代碼。在本設(shè)計(jì)中是通過(guò)行掃描,掃描出LED點(diǎn)陣上哪些點(diǎn)會(huì)被點(diǎn)亮,被點(diǎn)亮的點(diǎn)就會(huì)構(gòu)成一個(gè)漢字或字符,我們就可以看到漢字或字符顯示到LED點(diǎn)陣顯示屏上了。 字模生成原理在本設(shè)計(jì)中將漢字顯示到點(diǎn)陣顯示屏上,漢字需要使用漢字字模來(lái)表示出來(lái)然后通過(guò)軟件方面實(shí)現(xiàn)漢字的顯示。提取漢字字模前需要了解什么是漢字字模,可以根據(jù)LED燈的亮滅寫出漢字的字模。一個(gè)16*64LED點(diǎn)陣顯示屏就有1024個(gè)發(fā)光二極管,點(diǎn)亮其中的任何一個(gè)
31、LED管,那么該LED燈對(duì)應(yīng)的點(diǎn)就用0來(lái)表示,反之滅的LED燈對(duì)應(yīng)的點(diǎn)就用1來(lái)進(jìn)行表示。圖3-6里的“歡”字,根據(jù)二極管是否被點(diǎn)亮,可以寫出該字第一行相應(yīng)的二進(jìn)制為1111 1111 1111 1110,然后再轉(zhuǎn)換成十六進(jìn)制,也就是0xFF,0xFE。以此類推可以算出整個(gè)“歡”字的代碼,但現(xiàn)在有漢字字模提取軟件,就沒(méi)有必要去一個(gè)個(gè)的算。LED點(diǎn)陣顯示屏是以“點(diǎn)位點(diǎn)亮”的方式顯示,因此在顯示漢字時(shí)必須通過(guò)某些技術(shù)手段獲得反應(yīng)漢字字型點(diǎn)陣數(shù)據(jù)的漢字字模7。PCtoLCD2002完美版是常用的字模提取軟件,在使用自摸提取軟件的時(shí)候可以根據(jù)需要來(lái)對(duì)取模方式進(jìn)行設(shè)置??梢赃M(jìn)行設(shè)置的內(nèi)容如圖3-7:圖3-
32、7取模方式的設(shè)置本設(shè)計(jì)中使用的是共陽(yáng)點(diǎn)陣,取碼的點(diǎn)陣格式的設(shè)置為陽(yáng)碼,取模走向是逆向即低位在前,取模方式是行列式,輸出數(shù)制為十六進(jìn)制數(shù)。由于設(shè)計(jì)中使用的是52單片機(jī)所以自定義格式設(shè)置為,C51格式。還可以對(duì)點(diǎn)陣的高、寬進(jìn)行設(shè)置,點(diǎn)陣的大小可以是8*8點(diǎn)陣也可以是16*16點(diǎn)陣等,根據(jù)我們的需要來(lái)設(shè)置。而至于本設(shè)計(jì)點(diǎn)陣的高和寬則都應(yīng)設(shè)置為16,那么一個(gè)16*64點(diǎn)陣就可以同時(shí)顯示四個(gè)漢字或字符了。把需要的漢字輸入到取模軟件上,然后自動(dòng)生成字模,即可得到所需的漢字的代碼,把代碼復(fù)制到程序里,經(jīng)過(guò)處理就可以顯示到LED點(diǎn)陣上了。 LED點(diǎn)陣顯示圖像的原理以及實(shí)現(xiàn)圖像的放大和縮小根據(jù)所學(xué)知識(shí)以及上訴所
33、示的內(nèi)容可以知道LED點(diǎn)陣漢字顯示屏,并不是只能顯示漢字的,它也可以顯示在點(diǎn)陣像素范圍內(nèi)的圖形。因此圖像的顯示原理與漢字的顯示原理可以說(shuō)是完全一樣的。在點(diǎn)陣字模提取軟件里可以建立16*16點(diǎn)陣的文件,然后根據(jù)需要顯示的圖形點(diǎn)亮相應(yīng)的點(diǎn)即可生成想要的圖像的代碼。復(fù)制到程序里,經(jīng)過(guò)處理即可顯示到LED點(diǎn)陣上,通過(guò)軟件方面可以實(shí)現(xiàn)圖像的放大和縮小。其實(shí)就是按照一定的比例放大圖像,放大兩次,則就有三個(gè)不同大小的圖像。在字模提取軟件里建立16*16的文件手動(dòng)點(diǎn)亮相應(yīng)的LED二極管勾勒出所需要顯示的圖像,生成字模,可以得到三個(gè)不同大小的圖像的字模,存儲(chǔ)到單片機(jī)里,輪流通過(guò)74HC595傳送到LED點(diǎn)陣上顯
34、示。顯示的順序?yàn)橄蕊@示小圖片、中圖片、大圖片然后再到中圖片、小圖片于是就有圖像在放大和縮小的效果。對(duì)于16*64點(diǎn)陣每一次顯示的都是四張一摸一樣的圖片。 LED點(diǎn)陣漢字的左移、右移、上移和下移的原理LED點(diǎn)陣漢字的移動(dòng)原理其實(shí)就是通過(guò)控制選送的代碼來(lái)實(shí)現(xiàn)的,送什么LED點(diǎn)陣就顯示什么。對(duì)于漢字左移也就是顯示的漢字字模是一列一列的往左移,字模每往左移動(dòng)一列,經(jīng)過(guò)16次循環(huán)行掃描就可以顯示出一整屏的字幕,則就可以看到漢字的某些部分或一整個(gè)漢字,也可以看看成將一個(gè)漢字分成16列,一列一列的往左送代碼。至于怎么計(jì)算出發(fā)送到LED點(diǎn)陣上的數(shù)據(jù),則通過(guò)軟件方面來(lái)實(shí)現(xiàn),利用了一個(gè)左移的函數(shù)靈活的計(jì)算出字模每
35、移動(dòng)一列后顯示在LED點(diǎn)陣上的一整屏字幕的代碼,也就達(dá)到了字模左移的目的。至于右移的原理和左移的原理是相類似的,只是移動(dòng)的方式不一樣送的代碼也就不一樣,軟件上運(yùn)用的函數(shù)就變成為右移函數(shù)。對(duì)于本設(shè)計(jì)中的16*64點(diǎn)陣,要實(shí)現(xiàn)其字幕左移、右移也就不難了,總的概況就是先選通行,再送列的數(shù)據(jù)。在左移之前先給點(diǎn)陣送四個(gè)空的字符,然后“歡迎光臨”四個(gè)字,最后再送四個(gè)空的字符,它們的代碼排在一起,字模一列一列的往左移直到前面的四個(gè)空字符退出點(diǎn)陣,則“歡迎光臨”全部進(jìn)入到LED點(diǎn)陣顯示屏上,后面的空字符則慢慢的一列一列煩人進(jìn)入LED點(diǎn)陣顯示屏上,于是就形成了漢字左移的動(dòng)態(tài)效果,而右移的原理也是類似的。LED點(diǎn)
36、陣顯示屏的上移和下移原理相對(duì)左移和右移來(lái)說(shuō)也就是大同小異,但實(shí)現(xiàn)起來(lái)要比左移右移簡(jiǎn)單些。首先LED點(diǎn)陣是采用行掃描的,循環(huán)掃描十六次就得到一整屏的字幕,那么如果先送四個(gè)空字符,再送調(diào)整過(guò)的“歡迎光臨”四個(gè)字符最后送四個(gè)空的字符,那么加起來(lái)就有48行代碼??梢詫⑶八膫€(gè)空字符、“歡迎光臨”四個(gè)字的字符和后四個(gè)空字符的的代碼排列起來(lái),就相當(dāng)于三個(gè)16*64LED點(diǎn)陣排列在一起。第一次掃描從第0行開(kāi)始掃描,循環(huán)掃描16次,就掃描到第15行,顯示的是空的字符,第二次從第1行開(kāi)始掃描,循環(huán)掃描16次就掃描到了第16行,由圖就明顯的看到了“歡迎光臨”四個(gè)字的第一行也就圖中的第16行顯示在LED點(diǎn)陣的最后一行
37、上了,以此類推,就形成了字幕上移的效果了。LED點(diǎn)陣的下移原理和上移的原理相同,只是它先從第32行開(kāi)始掃描,循環(huán)掃描16次,先送出后面的空字符,然后再?gòu)?1行開(kāi)始掃描,循環(huán)16次得到一整屏字幕,這時(shí)“歡迎光臨”四個(gè)字的最后一行就顯示在LED點(diǎn)陣顯示屏的第一行上了,以此類推,循環(huán)32次,“歡迎光臨”就從上往下移出去,形成了漢字下移的動(dòng)態(tài)效果。3.4驅(qū)動(dòng)芯片模塊行驅(qū)動(dòng)芯片74HC154若要正向點(diǎn)亮一個(gè)LED,至少也得10-20mA,如果電流不夠大則LED不夠亮,而單片機(jī)的輸出電流大概1-2mA8。因此要用到驅(qū)動(dòng)電路,而使用的74HC154譯碼器提供的吸收電流不能驅(qū)動(dòng)64個(gè)LED同時(shí)點(diǎn)亮,因此要在7
38、4HC154每一路輸出端與16*64點(diǎn)陣顯示器對(duì)應(yīng)的每一行之間用一個(gè)三極管來(lái)將電流信號(hào)放大,這樣,74HC154某一輸出腳為低電平時(shí)對(duì)應(yīng)的三極管發(fā)射極為高電平,從而使點(diǎn)陣顯示器的對(duì)應(yīng)行也為高電平,本設(shè)計(jì)選用的三極管是8550。當(dāng)74HC154的G1和G2為低電平時(shí)A、B、C、D四腳輸入有效,那么A、B、C、D四腳輸入共同控制著16種不同的輸入狀態(tài)用0000-1111來(lái)表示。每一種輸入狀態(tài)都單獨(dú)控制一路輸出,分別對(duì)應(yīng)LED點(diǎn)陣的列。A、B、C、D作為地址數(shù)據(jù)輸入線,接P3.3,P3.4,P3.5,P3.6,74HC154的16行經(jīng)S9012放大后加載到點(diǎn)陣的行上。其電路原理圖如圖3-8所:圖3-
39、8 74HC154電路原理圖 74HC154芯片介紹74HC154是一款高速CMOS器件,74HC154引腳兼容低功耗肖特基TTL(LSTTL)系列9。74HC154芯片是一個(gè)譯碼器,它有四路4位的二進(jìn)制地址輸入和16路輸出但每一次都只能有一路輸出。還有兩個(gè)使能輸入端G1和G2,但這兩個(gè)使能輸入端必須為低電平,四路地址輸入才會(huì)生效才能控制16路的輸出。74HC154的芯片引腳結(jié)構(gòu)如圖3-9所示:圖3-9 74HC154芯片的引腳結(jié)構(gòu)圖由圖3-9可以看到74HC154有24個(gè)引腳有兩個(gè)電源類控制引腳12腳GND和24腳VCC;16個(gè)地址輸出端1-11引腳即Y0-Y10低電平有效和13-17即Y1
40、1-Y17低電平有效;兩個(gè)使能輸入端18-19引腳低電平有效;四個(gè)地址輸入端20-23引腳。74HC154地址/全能輸入對(duì)應(yīng)輸出表如表3-2:表3-2 74HC154地址/全能輸入對(duì)應(yīng)輸出INPUTSELECTEOOUTPUT(L)G1G2DCBALLLLLLLLLLLLLLLLLLHHLHLHY0Y1Y2Y3LLLLLLLLLLLLHHHHLLHHLHLHY4Y5Y6Y7LLLLLLLLHHHHLLLLLLHHLHLHY8Y9Y10Y11LLLLLLLLHHHHHHHHLLHHLHLHY12Y13Y14Y15XHHXXXXXXXXXNONENONE表3-2中的H代表高電平,L代表低電平,X代
41、表任意電平,由表可以獲得信息兩個(gè)使能輸入G1、G2都必須為低電平,四個(gè)地址輸入A、B、C、D才是有效的,否則無(wú)效。只有A、B、C、D四個(gè)地址輸入有效才可以控制芯片的16路輸出。列驅(qū)動(dòng)芯片74HC595單片機(jī)只有32個(gè)I/O口,對(duì)于16*64點(diǎn)陣顯示屏如果采用靜態(tài)掃描的方式I/O口明顯是不足的,因此本設(shè)計(jì)采用了動(dòng)態(tài)掃描。那也就需要用到74HC595芯片來(lái)驅(qū)動(dòng)LED點(diǎn)陣顯示屏的列。采用動(dòng)態(tài)掃描,也就是一行一行的進(jìn)行掃描的,每掃描一行就有64個(gè)發(fā)光二極管,也就是說(shuō)有64位點(diǎn)陣數(shù)據(jù)從單片機(jī)的I/O口串行輸出。第一片74HC595的DS串行輸入引腳與單片機(jī)的I/O口相連,在移位寄存器的作用下單片機(jī)每傳送
42、一位數(shù)據(jù)DS引腳當(dāng)時(shí)的電平就會(huì)向左移動(dòng)一位。雖然單片機(jī)是輸出的是八位,但是取值的時(shí)候都是取最高位傳送給74HC595的。傳送滿八次,第一片的74HC595就有8位LED點(diǎn)陣數(shù)據(jù),并在存儲(chǔ)器的作用下將數(shù)據(jù)鎖存,當(dāng)單片機(jī)繼續(xù)傳送數(shù)據(jù)時(shí),第一片595里的電平就會(huì)左移將數(shù)據(jù)傳送到第二片595里,以此類推,那么經(jīng)過(guò)64次的移位或者說(shuō)經(jīng)過(guò)64個(gè)移位時(shí)鐘就可以將某一行的LED點(diǎn)陣數(shù)據(jù)全部移送到74HC595里并鎖存。在行驅(qū)動(dòng)的作用下選通該行,而列的數(shù)據(jù)則會(huì)在使能信號(hào)G的作用下(低電平有效),將595里的列的數(shù)據(jù)并行輸出給LED點(diǎn)陣的列線,這樣就可以得到該行LED二極管的亮滅了。而要想在16*64LED點(diǎn)陣上
43、顯示一整屏完整的字幕,就需要掃描16行,從第一行一行一行的掃描到第十六行。掃描第一行時(shí),通過(guò)行驅(qū)動(dòng)先選通第一行,再由列驅(qū)動(dòng)來(lái)送第一行的數(shù)據(jù),得到第一行LED的亮滅;緊接著第一行就熄滅而選通第二行,再送第二行LED點(diǎn)陣數(shù)據(jù)得到第二行LED的亮滅,到第三行第四行一直到16行掃描完畢就可以看到一整屏完整的字幕了。以此類推,當(dāng)?shù)谑袙呙柽^(guò)后再回到第一行,這樣只要掃描的速度足夠高,就可以形成一幅完整的文字或圖像10。其中驅(qū)動(dòng)芯片74HC595的原理圖如圖3-10所示:圖3-10 驅(qū)動(dòng)芯片74HC595的原理圖由圖3-10可以知道,八片74HC595驅(qū)動(dòng)芯片是級(jí)聯(lián)在一起的,它們一起控制著LED點(diǎn)陣的列的
44、數(shù)據(jù)也就是列的亮滅。第一片的DS串行輸入與單片機(jī)的P3.2口相連接,用于提供串行的數(shù)據(jù)。八片74HC595芯片的11號(hào)引腳SH-CP都是和單片機(jī)P3.0口相連,用作移位時(shí)鐘脈沖,12號(hào)引腳ST-CP都是和單片機(jī)的P3.1口相連接用作存儲(chǔ)器的時(shí)鐘脈沖。然后某一595芯片的9號(hào)引腳即串行輸出與它后面的一片595芯片14號(hào)引腳即串行輸入相連接,只有最后一片595芯片它的9號(hào)引腳是沒(méi)有用到的。3.4.4 74HC595芯片的介紹74HC595是具有8位移位寄存器和一個(gè)存儲(chǔ)器,三態(tài)輸出功能,移位寄存器和存儲(chǔ)器是分別的時(shí)鐘11。數(shù)據(jù)是通過(guò)串行的方式輸入到74HC595中的,然后在使能信號(hào)OE低電平的作用下
45、,存儲(chǔ)寄存器中的數(shù)據(jù)才能并行輸出到總線上。74HC595驅(qū)動(dòng)芯片的引腳結(jié)構(gòu)圖如圖3-11所示:圖3-11 74HC595芯片的引腳結(jié)構(gòu)圖由圖3-11可以看到74HC595有16個(gè)引腳,兩個(gè)電源類引腳即8號(hào)引腳GND和16號(hào)引腳VCC,Q0-Q7八個(gè)數(shù)據(jù)輸出引腳作為8位并行數(shù)據(jù)的輸出,兩個(gè)時(shí)鐘輸入引腳即11號(hào)腳SHCP和12號(hào)腳HTCP,一個(gè)使能輸出引腳13號(hào)腳OE低電平有效,一個(gè)主復(fù)位引腳10號(hào)腳MR低電平有效。3.5單片機(jī)最小系統(tǒng)模塊單片機(jī)最小系統(tǒng)是非常重要的一個(gè)模塊,它是決定了單片機(jī)能否正常運(yùn)行,是單片機(jī)電路中必須要有的。單片機(jī)最小系統(tǒng)由電源、晶振電路和復(fù)位電路三部分組成12。單片機(jī)最小系
46、統(tǒng)模塊如圖3-12所示:圖3-12單片機(jī)最小系統(tǒng)原理圖第四章 軟件設(shè)計(jì)單片機(jī)C51語(yǔ)言既具有匯編語(yǔ)言對(duì)操作硬件的功能,又兼有高級(jí)編程語(yǔ)言的許多優(yōu)點(diǎn),在單片機(jī)程序設(shè)計(jì)中,單片機(jī)C51語(yǔ)言得到了廣泛的應(yīng)用4。本設(shè)計(jì)的很多功能需要通過(guò)軟件方面來(lái)實(shí)現(xiàn)LED點(diǎn)陣廣告牌內(nèi)容的顯示方式。也就是說(shuō)只有硬件部分沒(méi)有軟件部分就不能實(shí)現(xiàn)廣告牌內(nèi)容的顯示以及多種顯示方式。程序流程圖的設(shè)計(jì)框圖如圖4-1所示:主程序流程圖595初始化子程序流程圖LED點(diǎn)陣顯示子程序流程圖圖4-1程序流程圖設(shè)計(jì)框圖4.1主程序設(shè)計(jì)本設(shè)計(jì)中廣告的內(nèi)容可以實(shí)現(xiàn)漢字的左移、右移、上移、下移和圖片的放大、縮小,它需要通過(guò)軟件方面來(lái)實(shí)現(xiàn)。其中主程序
47、的流程圖如圖4-2所示:開(kāi)始系統(tǒng)初始化行掃描16行?漢字左移漢字右移漢字上移漢字下移圖片放大兩次?圖片縮小兩次?是否否是是否圖4-2主程序流程圖4.2 74HC595初始化子程序設(shè)計(jì)74HC595的數(shù)據(jù)是串行輸入并行輸出的,而單片機(jī)的數(shù)據(jù)總線是8位的。595每次都是取8位二進(jìn)制的最高位輸入,每有一位數(shù)據(jù)輸入到595里,595里的數(shù)據(jù)都會(huì)在原來(lái)的基礎(chǔ)上左移一位13。74HC595的初始化子程序流程圖如圖4-3所示:DS數(shù)據(jù)串行輸入循環(huán)8次?Dat左移一位取dat最高位開(kāi)始否是圖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點(diǎn)陣顯示屏子程序設(shè)計(jì)返回要在LED點(diǎn)陣顯示屏上得到一整屏的字幕就要通過(guò)行驅(qū)動(dòng)和列驅(qū)動(dòng)共同控制,將數(shù)據(jù)送到點(diǎn)陣顯示屏上顯示。LED點(diǎn)陣顯示屏子程序流程圖如圖4-4所示:開(kāi)始一整屏字幕154行掃描,hang595送列數(shù)據(jù)Hang+Hang=16?初始化是返回否圖4-4LED點(diǎn)陣顯示子程序流程圖設(shè)計(jì)中是采用行掃描的,每掃描一行就送這一行對(duì)應(yīng)的列的數(shù)據(jù),循環(huán)掃描完十六行就得到一整屏的字幕顯
49、示到LED點(diǎn)陣上。但如果要實(shí)現(xiàn)字幕的左移、右移、上移和下移是需要經(jīng)過(guò)軟件的編程來(lái)實(shí)現(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()/向左移動(dòng) 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)是否達(dá)到我們預(yù)期的功能要求,那就離不開(kāi)調(diào)試。調(diào)試主要就是硬件調(diào)試和軟件調(diào)試。在硬件調(diào)試的過(guò)程應(yīng)該分模塊,逐個(gè)進(jìn)行調(diào)試,而且要在保證軟件正確的情況下去對(duì)硬件進(jìn)行測(cè)試,這樣就才容易找到錯(cuò)誤的所在。對(duì)于軟件的調(diào)試主要是把用C語(yǔ)言編寫好的程序復(fù)制到Keil uVision3軟件進(jìn)行編譯,不斷的修改錯(cuò)誤的地方直到編譯成功。我們常用的編程語(yǔ)言就是C語(yǔ)言匯編和匯編語(yǔ)言,在編寫的時(shí)候需要有先驗(yàn)的知識(shí)主體,了解單片機(jī)的概念14。硬件的調(diào)試主要分為L(zhǎng)ED點(diǎn)陣
52、顯示屏的調(diào)試和單片機(jī)最小系統(tǒng)的調(diào)試。5.1 LED點(diǎn)陣顯示屏的調(diào)試16*64點(diǎn)陣顯示屏做好后,可能會(huì)因?yàn)楦鞣N原因使得它并不能正常工作,那么就要進(jìn)行調(diào)試。有時(shí)在焊接的時(shí)候不夠認(rèn)真導(dǎo)致焊接錯(cuò)誤出現(xiàn)短路的現(xiàn)象,因此要用萬(wàn)用表進(jìn)行檢測(cè)。用自制的穩(wěn)壓直流電源給點(diǎn)陣顯示屏提供充足的電源,然后觀察點(diǎn)陣顯示屏的LED管的亮滅情況,是否能將點(diǎn)陣顯示屏全部點(diǎn)亮。如果有些LED不亮,就要找出問(wèn)題所在然后有針對(duì)性的進(jìn)行修改,一直到點(diǎn)陣顯示屏能正常工作就調(diào)試成功。5.2單片機(jī)最小系統(tǒng)的調(diào)試單片機(jī)最小系統(tǒng)是一個(gè)重要的模塊,所以如果單片機(jī)最小系統(tǒng)模塊沒(méi)有或出現(xiàn)差錯(cuò)都會(huì)導(dǎo)致單片機(jī)整個(gè)系統(tǒng)出現(xiàn)問(wèn)題。也因此單片機(jī)最小系統(tǒng)的調(diào)試也
53、是十分重要的,首先要用萬(wàn)用表檢測(cè)自制穩(wěn)壓直流電源電壓是否正常,保證供電沒(méi)有問(wèn)題。然后再用萬(wàn)用表檢測(cè)復(fù)位電路中,最后還要用示波器來(lái)檢測(cè)晶振電路是否正常,通過(guò)一步一步的檢測(cè)就能發(fā)現(xiàn)問(wèn)題,并很好的解決問(wèn)題,使得最小系統(tǒng)能正常的運(yùn)作就算調(diào)試成功。5.3軟件的調(diào)試對(duì)于軟件的調(diào)試主要是在Keil 5環(huán)境下編寫程序15,它是由美國(guó)Keil Software公司開(kāi)發(fā)的,是屬于C語(yǔ)言的軟件開(kāi)發(fā)系統(tǒng)。在Keil uVision3軟件上對(duì)項(xiàng)目文件進(jìn)行編譯,編譯有錯(cuò)誤就要不斷的修改錯(cuò)誤的地方直到編譯沒(méi)有錯(cuò)誤。然后通過(guò)燒錄器將通過(guò)編譯器擴(kuò)展名為.HEX的可執(zhí)行文件燒寫到單片機(jī)內(nèi),進(jìn)行軟硬件聯(lián)合調(diào)試。5.4軟硬件聯(lián)合調(diào)試
54、在硬件和軟件都分別調(diào)試成功后,把它們結(jié)合在一起卻不一定能正常工作,也有可能達(dá)不到本設(shè)計(jì)所要求的功能,所以軟硬件聯(lián)合調(diào)試是一個(gè)設(shè)計(jì)完成后必不可缺的部分,是一件作品能否順利完成的重要環(huán)節(jié)。首先把軟件部分的程序燒寫到52單片機(jī)上,然后提供直流穩(wěn)壓電源,開(kāi)啟啟動(dòng)按鈕,觀察LED點(diǎn)陣顯示屏所顯示內(nèi)容,是否符合本設(shè)計(jì)的要求,它左移、右移、上移、下移和圖片的放大、縮小功能是否實(shí)現(xiàn)了。開(kāi)始的時(shí)候LED點(diǎn)陣顯示屏上出現(xiàn)一些拖影的現(xiàn)象也就是有的點(diǎn)不該亮的也亮了,使得點(diǎn)陣的顯示效果極差。這時(shí)就想到了可能是程序的干擾,對(duì)程序進(jìn)行修改,增加了延時(shí)的程序,再重新把程序燒寫到單片機(jī)上,重新啟動(dòng)按鈕,繼續(xù)觀察LED點(diǎn)陣顯示屏
55、,發(fā)現(xiàn)LED點(diǎn)陣顯示屏的顯示效果明顯好多了。再繼續(xù)整延時(shí)程序,重復(fù)上面的工作,一直到LED點(diǎn)陣顯示屏的顯示效果達(dá)到最佳的狀態(tài)就算調(diào)試成功。然后觀察LED點(diǎn)陣顯示屏的左移功能是否實(shí)現(xiàn)了,起初它并不能達(dá)到左移的效果,經(jīng)過(guò)思考對(duì)結(jié)合實(shí)際對(duì)左移程序進(jìn)行了處理,最終實(shí)現(xiàn)了左移。同理對(duì)其它的功能要求一一進(jìn)行觀察,有問(wèn)題出現(xiàn)就細(xì)心尋找問(wèn)題所在,并找出解決問(wèn)題的方式。不斷的反復(fù)修改,到最后軟硬件聯(lián)合調(diào)試達(dá)到所需的功能要求,則調(diào)試成功。5.5系統(tǒng)調(diào)試總結(jié)一個(gè)設(shè)計(jì)完成了硬件電路的部分后,還不能結(jié)束設(shè)計(jì)的工作,調(diào)試的工作是十分重要的。在進(jìn)行調(diào)試的過(guò)程中,要認(rèn)真仔細(xì),有針對(duì)性的去修改存在的問(wèn)題,對(duì)于一個(gè)LED點(diǎn)陣顯示屏的調(diào)試,最主要的是軟硬件聯(lián)合調(diào)試。一般只要電路沒(méi)有錯(cuò)誤,焊接時(shí)仔細(xì)認(rèn)真,硬件又完好那么LED點(diǎn)陣顯示屏都是能正常工作的。但要實(shí)現(xiàn)LED顯示屏顯示的內(nèi)容,顯示的模式功能是需要不停的修修改改的才能達(dá)到要求。經(jīng)過(guò)各種調(diào)試,最后本設(shè)計(jì)的16*64點(diǎn)陣能夠顯示漢字的左移、右移、上移、下移和圖片的放大、縮小,調(diào)試成功,作品也就算順利的完成了。第六章
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 手工泥巴制作課程設(shè)計(jì)
- 室外景觀設(shè)計(jì)師的植物配置與環(huán)境打造
- 保健品行業(yè)話務(wù)員工作總結(jié)
- 2025年中考物理一輪復(fù)習(xí)之物態(tài)變化
- 超市行業(yè)客服工作總結(jié)周到服務(wù)增添購(gòu)物樂(lè)趣
- 化妝護(hù)膚行業(yè)銷售工作總結(jié)
- 餐飲服務(wù)員工作總結(jié)熱情招待細(xì)心服務(wù)顧客
- 【八年級(jí)下冊(cè)地理湘教版】專項(xiàng)02 港、澳、臺(tái)的經(jīng)濟(jì)發(fā)展
- 2024年熱鬧的元宵節(jié)教案
- 2024年石家莊理工職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)標(biāo)準(zhǔn)卷
- DLT817-2014 立式水輪發(fā)電機(jī)檢修技術(shù)規(guī)程
- 普外科乳房手術(shù)臨床技術(shù)操作規(guī)范2023版
- 2023年酒店前臺(tái)經(jīng)理個(gè)人工作述職報(bào)告
- 全國(guó)各城市的50年一遇雪壓和風(fēng)壓
- 英語(yǔ)聽(tīng)力技巧與應(yīng)用(山東聯(lián)盟)智慧樹(shù)知到課后章節(jié)答案2023年下濱州學(xué)院
- 2024屆甘肅省平?jīng)鍪徐o寧縣英語(yǔ)九年級(jí)第一學(xué)期期末教學(xué)質(zhì)量檢測(cè)模擬試題含解析
- 寧夏農(nóng)產(chǎn)品物流發(fā)展現(xiàn)狀的探究 物流管理專業(yè)
- 人教版八年級(jí)數(shù)學(xué)下冊(cè)課件【全冊(cè)】
- 隱患排查治理工作方案
- 七年級(jí)數(shù)學(xué)上冊(cè)專題18 一元一次方程有整數(shù)解(解析版)
- 酒店安全生產(chǎn)責(zé)任制
評(píng)論
0/150
提交評(píng)論