基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 2014 屆畢業(yè)設(shè)計(jì)說(shuō)明書(shū) 基于單片機(jī)的多點(diǎn)陣LED字符顯示屏的設(shè)計(jì)與制作 院 、 部: 電氣與信息工程學(xué)院 學(xué)生姓名: 饒偉 指導(dǎo)教師: 桂友超 職稱 講師 肖金鳳 職稱 副教授 專 業(yè): 電氣工程及其自動(dòng)化 班 級(jí): 電氣本1004班 完成時(shí)間: 2014年5月 摘 要隨著顯示器件與顯示技術(shù)的進(jìn)而發(fā)展,作為一種重要的傳媒,屏幕顯示系統(tǒng)已經(jīng)廣泛應(yīng)用于國(guó)民經(jīng)濟(jì)中。LED顯示屏是由LED點(diǎn)陣模塊或像素單元構(gòu)成的。計(jì)算機(jī)技術(shù)的飛速發(fā)展,使得LED數(shù)碼管能夠在減少驅(qū)動(dòng)器的情況下直接被驅(qū)動(dòng)。LED數(shù)碼管具有高可靠性、長(zhǎng)壽命、高性價(jià)比、低成本、強(qiáng)適應(yīng)能力等特點(diǎn),使得它在平板顯示領(lǐng)域一直扮演著舉足輕重的

2、角色,而且它今后的發(fā)展空間還相當(dāng)大。本次畢業(yè)設(shè)計(jì)是以單片機(jī)為基礎(chǔ)控制核心,用4塊88 LED點(diǎn)陣組合制作了一個(gè)能顯示16x16 點(diǎn)陣LED電子顯示屏。要求顯示屏的各發(fā)光二極管的亮度足夠并且均勻,顯示穩(wěn)定、清晰的圖形或者文字,其顯示出的圖形或者文字應(yīng)能有靜止、移入移出的效果。點(diǎn)陣顯示屏采用動(dòng)態(tài)顯示方式,動(dòng)態(tài)掃描逐行輪流點(diǎn)亮。點(diǎn)陣顯示數(shù)據(jù)的傳輸采用串行傳輸方法。本文重點(diǎn)講述的是LED顯示屏的硬件電路的組成及軟件部分的編程、LED點(diǎn)陣顯示屏的功能實(shí)現(xiàn)。關(guān)鍵字:1616點(diǎn)陣;單片機(jī);LED顯示屏ABSTRACTWith the further development of display device

3、s and display technologies , as an important media -screen display system has been widely used in the national economy. LED display is a LED dot matrix module or pixel units. The rapid development of computer technology , makes digital LED can be driven directly in the drive to reduce the case . LED

4、 digital tube with high reliability, long life , cost-effective , low-cost, adaptable characteristics, making it the field of flat panel display has been playing a pivotal role in the future development of space and it is also quite large.The graduation project is a microcontroller -based control ce

5、nter, with four 8 8 LED dot matrix display combination can produce a 16x16 dot matrix LED display . Requirements of each light-emitting diode display brightness and uniform enough , shows a steady , clear graphics or text, which shows a graphic or text should be able to have a rest , moved out of th

6、e results. Dot matrix display with a dynamic display, dynamic progressive scan turns lights. Dot matrix display using serial transmission of data transfer methods. This article focuses on the LED display is composed of programming hardware and software parts of the circuit , LED dot matrix display f

7、unction realization .Key words: 16 16 dot matrix; SCM;LED display目 錄1 緒論1 1.1設(shè)計(jì)的背景1 1.2 LED點(diǎn)陣顯示屏的發(fā)展趨勢(shì)22 整體設(shè)計(jì)方案3 2.1 設(shè)計(jì)所實(shí)現(xiàn)的功能及構(gòu)成3 2.2 顯示模塊的方案3 2.2.1靜態(tài)顯示方式3 2.2.2動(dòng)態(tài)顯示方式3 2.3數(shù)據(jù)傳輸方案論證43 硬件電路的構(gòu)成5 3.1設(shè)計(jì)框圖及介紹5 3.2 51系列單片機(jī)5 3.3單片機(jī)的最小應(yīng)用系統(tǒng)8 3.4 LED點(diǎn)陣9 3.5 LED顯示方式10 3.6點(diǎn)陣的移動(dòng)11 3.7 點(diǎn)陣顏色的轉(zhuǎn)換14 3.8 LED點(diǎn)陣列驅(qū)動(dòng)電路154軟件

8、設(shè)計(jì)18 4.1單片機(jī)延時(shí)子程序18 4.2點(diǎn)陣左移顯示的流程圖及分析19 4.3 PROTEUS ISIS仿真21參考文獻(xiàn)22致 謝23附 錄24 附錄124 附錄234 附錄3371 緒論1.1設(shè)計(jì)的背景隨著顯示器件與顯示技術(shù)的進(jìn)而發(fā)展,作為一種重要的傳媒,屏幕顯示系統(tǒng)已經(jīng)廣泛應(yīng)用于國(guó)民經(jīng)濟(jì)中。LED顯示屏是由LED點(diǎn)陣模塊或像素單元構(gòu)成的。計(jì)算機(jī)技術(shù)的飛速發(fā)展,使得LED數(shù)碼管能夠在減少驅(qū)動(dòng)器的情況下直接被驅(qū)動(dòng)。LED數(shù)碼管由于具有高可靠性、長(zhǎng)壽命、高性價(jià)比、低成本、強(qiáng)適應(yīng)能力等特點(diǎn),使得它在平板顯示領(lǐng)域一直扮演著舉足輕重的角色,而且它今后的發(fā)展空間還相當(dāng)大。因此,LED數(shù)碼管廣泛用于我

9、們?nèi)粘I钪?,并扮演著的信息顯示與廣告宣傳的角色。組合型LED點(diǎn)陣顯示器是開(kāi)始出現(xiàn)于20世紀(jì)末,它具有很高的亮度、較低的能耗、廣闊的視角、長(zhǎng)久的使用時(shí)間及引腳少和耐高溫極寒,耐腐蝕的多種特點(diǎn)。點(diǎn)陣顯示器有單色的點(diǎn)陣顯示器和雙色的點(diǎn)陣顯示器,可顯示紅,橙、黃、綠等多種不同顏色。LED點(diǎn)陣具有多種不同的點(diǎn)陣;本文設(shè)計(jì)制作的就是1616的LED顯示屏,在下文會(huì)詳細(xì)概述。LED點(diǎn)陣顯示器以像素的數(shù)目可將其區(qū)分為雙基色和三基色等類型。根據(jù)不同像素顏色所顯示的圖文等信息的顏色也不盡相同,單色色彩的顯示是使用單基色的點(diǎn)陣,如紅、黃、綠等,其都是固定的。將顏色不同的發(fā)光二極管組合點(diǎn)亮使得顯示出不同顏色的點(diǎn)陣。

10、如紅藍(lán)都亮?xí)r即可顯示紫色,要想實(shí)現(xiàn)256或更高級(jí)的灰度的這種真彩色顯示,就需使用脈沖方式來(lái)決定二極管點(diǎn)亮的時(shí)間。一般的數(shù)碼管能顯示阿拉伯?dāng)?shù)字和其他的一些中西文字與符號(hào),這種數(shù)碼管還可以用一個(gè)單塊的LED點(diǎn)陣顯示器來(lái)替代。常用的英文字母可以使用57點(diǎn)陣顯示器來(lái)顯示,顯示中英文就可以用58點(diǎn)陣顯示,顯示文本和圖形可以采用88點(diǎn)陣來(lái)顯示。要形成大屏幕的顯示,它需組合使用多個(gè)點(diǎn)陣顯示器。像這種大屏幕點(diǎn)陣顯示器是通過(guò)單片機(jī)或者微型計(jì)算機(jī)控制其驅(qū)動(dòng)來(lái)實(shí)現(xiàn)多種信息的顯示。1.2 LED點(diǎn)陣顯示屏的發(fā)展趨勢(shì)改革開(kāi)放后期,LED點(diǎn)陣顯示屏作為一種新式的信息顯示媒介在全世界快速的成長(zhǎng)起來(lái),因?yàn)槠溆兄梢蚤L(zhǎng)期使用的

11、壽命、非??煽亢涂捎^的性價(jià)比、環(huán)境適應(yīng)能力強(qiáng)、低廉的使用成本、低能耗等特性,僅僅在短短的八十年后期至九十年代初期的這段時(shí)間內(nèi),就迅速發(fā)展成為主流高科技領(lǐng)域顯示所采用的產(chǎn)品,并得到普及的推廣使用,引領(lǐng)著信息顯示領(lǐng)域的發(fā)展。在現(xiàn)如今高速發(fā)展的社會(huì),信息傳播顯示產(chǎn)品技術(shù)在飛速的往前進(jìn)步,人們對(duì)視覺(jué)效果的要求也越來(lái)越高,也就意味著對(duì)顯示屏的顯示技術(shù)要求日益求精。二十一世紀(jì)的顯示技術(shù)也將成為平板顯示的時(shí)代,作為平板顯示的主要架構(gòu)產(chǎn)品,LED顯示屏無(wú)庸置疑將會(huì)有更快的發(fā)展,并成為全球代表性的主流顯示產(chǎn)品。隨著基礎(chǔ)材料的實(shí)現(xiàn)產(chǎn)業(yè)化,使得LED顯示屏的成本也逐步降低,應(yīng)用性也得到更廣泛的普及。由此可預(yù)計(jì)在今后

12、的時(shí)間內(nèi),LED顯示屏的發(fā)展會(huì)越發(fā)迅速,其在戶外媒體廣告宣傳顯示中將逐漸的完全替代那些傳統(tǒng)的霓虹燈、燈箱等產(chǎn)品。多種顏色的LED顯示屏的普遍性的應(yīng)用將使得LED顯示屏產(chǎn)業(yè)的發(fā)展達(dá)到一個(gè)增長(zhǎng)點(diǎn)的新高。未來(lái)LED顯示屏的發(fā)展方向也將越發(fā)標(biāo)準(zhǔn)、規(guī)范、結(jié)構(gòu)多樣化。2 整體設(shè)計(jì)方案2.1 設(shè)計(jì)所實(shí)現(xiàn)的功能及構(gòu)成基于單片機(jī)的1616 LED點(diǎn)陣顯示屏的設(shè)計(jì),要求其顯示屏的各發(fā)光二極管的亮度足夠并且均勻,顯示穩(wěn)定、清晰的圖形或者文字,其顯示出的圖形或者文字應(yīng)能有靜止、移入移出的效果。本設(shè)計(jì)的1616點(diǎn)陣顯示屏是采用四個(gè)88的點(diǎn)陣組合構(gòu)成的。行列之間的交錯(cuò)處都含有一個(gè)發(fā)光二極管,總共是由256個(gè)發(fā)光二極管組成

13、。2.2 顯示模塊的方案為了達(dá)到顯示效果的增強(qiáng),一般都具有幾種顯示模式,可分為兩種顯示模式,一種為靜態(tài)顯示方式,一種為動(dòng)態(tài)顯示方式。2.2.1靜態(tài)顯示方式靜態(tài)顯示,每一位顯示器的字段都用獨(dú)立的控制線。由于每一位顯示器分別由一個(gè)8位的輸出口控制其字段碼,所以每一位顯示器就得需要8根的輸出控制線,這樣來(lái)說(shuō),更多位的顯示器就需要更多的輸出控制線。這樣一來(lái)將占用較多I/O資源。而單片機(jī)只能提供的有限的I/O口。因此,在實(shí)際使用中,輸出口數(shù)目不夠的問(wèn)題,可以通過(guò)I/O口擴(kuò)展的方式解決。 靜態(tài)顯示主要的優(yōu)點(diǎn)是顯示穩(wěn)定,在發(fā)光二極管電流導(dǎo)通一定的情況下顯示器的亮度高亮,系統(tǒng)運(yùn)行過(guò)程中,在需要更新顯示內(nèi)容時(shí),

14、CPU才去執(zhí)行顯示更新子程序,這樣既節(jié)約了CPU的時(shí)間,又提高了CPU的工作效率。其不足之處是硬件占用資源較多,由于每個(gè)LED數(shù)碼管需獨(dú)自占用8條輸出線。因而顯示器位數(shù)的一增加,需求的I/O口線也將一一增加。2.2.2動(dòng)態(tài)顯示方式在多位顯示時(shí),為了彌補(bǔ)靜態(tài)顯示方式的不足一般來(lái)說(shuō)可以以采用動(dòng)態(tài)顯示方式來(lái)代替,全部數(shù)碼管共用一套段碼驅(qū)動(dòng)電路,各位數(shù)碼管的同段引腳短接后再接到對(duì)應(yīng)段碼的驅(qū)動(dòng)線上。顯示時(shí)通過(guò)位控信號(hào)采用掃描的方法逐位地循環(huán)點(diǎn)亮各位數(shù)碼管。動(dòng)態(tài)顯示雖然在任一時(shí)刻只有一位數(shù)碼管被點(diǎn)亮,但是由于人眼具有的視覺(jué)殘留效應(yīng),看起來(lái)與全部數(shù)碼管持續(xù)點(diǎn)亮的效果完全一樣。動(dòng)態(tài)顯示具有硬件簡(jiǎn)單,功耗低和顯

15、示靈活性強(qiáng)等優(yōu)點(diǎn)。鑒于LED顯示器為并排使用的多位數(shù)碼管,本次設(shè)計(jì)將采用動(dòng)態(tài)顯示方式,動(dòng)態(tài)掃描逐行輪流點(diǎn)亮,因?yàn)槊恳恍卸加幸粋€(gè)行驅(qū)動(dòng)器,而各行的同名列又共用一個(gè)驅(qū)動(dòng)器。單片機(jī)中存儲(chǔ)器放置著顯示所需數(shù)據(jù),這些顯示數(shù)據(jù)按8位一個(gè)字節(jié)的形式順序排列放置。當(dāng)要顯示時(shí)就需把一行中的各列數(shù)據(jù)信息都傳給其對(duì)應(yīng)的列驅(qū)動(dòng)器上面去,在這中情況下就會(huì)出現(xiàn)一個(gè)顯示數(shù)據(jù)傳輸?shù)膯?wèn)題。所以這時(shí)可以使用并列的方式或串行方式來(lái)實(shí)現(xiàn)控制電路到列驅(qū)動(dòng)器之間的傳輸。2.3數(shù)據(jù)傳輸方案論證在采用并行模式的時(shí)候,從控制電路到列驅(qū)動(dòng)器傳輸數(shù)據(jù)需要非常多的線路和硬件數(shù)。這樣在很多列數(shù)時(shí),并行傳輸模式是行不通的。使用串行傳輸方法來(lái)實(shí)現(xiàn)顯示數(shù)據(jù)

16、的傳輸時(shí),用一根信號(hào)線就能把列數(shù)據(jù)送到列驅(qū)動(dòng)器中,該方法具有十分的經(jīng)濟(jì)性。但由于串行傳輸過(guò)程比較長(zhǎng),根據(jù)順序?qū)?shù)據(jù)發(fā)送到列驅(qū)動(dòng)器時(shí),要想這一行的每列并行顯示就得等待其各列的數(shù)據(jù)都傳送完畢。在采用這種串行傳輸方式的時(shí)候,且在確定行掃描周期的情況下,因?yàn)榱袛?shù)據(jù)所耗費(fèi)的準(zhǔn)備時(shí)間可能會(huì)比較長(zhǎng),因此行顯示時(shí)間就會(huì)不足,將導(dǎo)致發(fā)光二極管亮度也會(huì)不足。重疊處理法的關(guān)鍵點(diǎn)是該行列數(shù)據(jù)進(jìn)行顯示的時(shí)候,同時(shí)把該行的下一行列數(shù)據(jù)傳送給列驅(qū)動(dòng)器。這種處理法可以用來(lái)解決列數(shù)據(jù)顯示時(shí)間與準(zhǔn)備時(shí)間之間的互相矛盾的問(wèn)題。要想達(dá)到重疊處理,要求列數(shù)據(jù)的顯示必須得具有鎖存的功能。為了不影響本行的顯示,列數(shù)據(jù)準(zhǔn)備應(yīng)具有實(shí)現(xiàn)串入并出

17、的移位功能。3 硬件電路的構(gòu)成3.1設(shè)計(jì)框圖及介紹LED顯示點(diǎn)陣的硬件電路由單片機(jī)系統(tǒng)及外圍電源電路、列驅(qū)動(dòng)電路和行驅(qū)動(dòng)電路組成。設(shè)計(jì)的點(diǎn)陣總體框圖如圖1所示。圖1 點(diǎn)陣顯示的總體框圖3.2 51系列單片機(jī)單片機(jī)又稱微處理器。它是計(jì)算機(jī)的一個(gè)分支,它的組成原理和典型PC計(jì)算機(jī)有點(diǎn)相似,由多部分基本功能部件集成而來(lái),它一般包括著中央處理器CPU、內(nèi)部數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器、定時(shí)器/計(jì)數(shù)器、并行I /O口、串行口、中斷控制電路、位處理器和一些必須的內(nèi)部總線。單片機(jī)的基本結(jié)構(gòu)如圖2所示。圖2 51單片機(jī)的基本結(jié)構(gòu)控制器運(yùn)算器構(gòu)成cpu、內(nèi)外程序數(shù)據(jù)存儲(chǔ)加上串并行通信口、中斷與定時(shí)計(jì)數(shù)這類事件觸發(fā)單元

18、構(gòu)成單片微型計(jì)算機(jī)最基本外設(shè)通過(guò)外部設(shè)備的擴(kuò)展從而構(gòu)成單片機(jī)最小系統(tǒng)。單片機(jī)的核心是中央處理器(CPU),主要用于完成一些運(yùn)算和實(shí)現(xiàn)控制操作。算術(shù)邏輯控制單元加控制器即中央處理器兩個(gè)最核心部分運(yùn)算器電路和控制器電路。算術(shù)邏輯單元主要對(duì)數(shù)據(jù)進(jìn)行處理包括加、乘、減、基本算術(shù)運(yùn)算,邏輯單元進(jìn)行邏輯功能運(yùn)算,布爾處理器進(jìn)行位操作。運(yùn)算的實(shí)現(xiàn)是把運(yùn)算數(shù)值放置累加器ACC中通過(guò)指令進(jìn)行各種四則運(yùn)算當(dāng)然這還需要其它寄存器的配合。一個(gè)用來(lái)寄存指令執(zhí)行的狀態(tài)信息的8位寄存器PSW即程序狀態(tài)字。PSW的位狀態(tài)可以用專門指令進(jìn)行測(cè)試,也可以用指令讀出。其各位的為序所定義的標(biāo)志位如下:PSW中最常用的標(biāo)志位是進(jìn)位標(biāo)志

19、位,即CY;在加法的運(yùn)算中存放,若有進(jìn)位時(shí),CY置1,沒(méi)有進(jìn)位時(shí)CY需要清零;而在減法的運(yùn)算中它用來(lái)存放借位標(biāo)志位,若有借位CY置1,沒(méi)有借位CY清零。 半進(jìn)位標(biāo)志位AC是低半字節(jié)的進(jìn)位位,AC置1表示低4位在往高4位進(jìn)位,AC清零表示低4位在向高4位借位??捎捎脩糇远x的標(biāo)志位叫做用戶標(biāo)志位(F0);通過(guò)低半字節(jié)對(duì)其置位和復(fù)位。 RS1和RS0:寄存器組選擇控制位,用來(lái)設(shè)置4組工作寄存器的組號(hào)。OV:溢出標(biāo)志位。在加減運(yùn)算中,運(yùn)算超出了累加器A的有效范圍(-128+127)時(shí),則OV置1,產(chǎn)生滿溢,否則OV由硬件清零,代表運(yùn)算的結(jié)果無(wú)錯(cuò)誤。在無(wú)符號(hào)乘法運(yùn)算中,當(dāng)乘法結(jié)果超過(guò)255時(shí),OV=1

20、,高8位的乘積放在B中,低8位放在A中;沒(méi)超過(guò)255時(shí),則OV清零,代表乘積置存放在A中。奇偶標(biāo)志位用P表示。表明累加器A中1的個(gè)數(shù)的奇偶性,若A中1的個(gè)數(shù)是偶數(shù)時(shí),則P=0;若A中1的個(gè)數(shù)是奇數(shù),則P=1。單片機(jī)是一種通過(guò)程序控制的微型計(jì)算機(jī);工作過(guò)程是從程序存儲(chǔ)器中取指令送指令存儲(chǔ)器,譯碼器譯碼生成一系列符合定時(shí)要求的微操作信號(hào),來(lái)控制單片機(jī)的各部分執(zhí)行動(dòng)作。在80C51內(nèi)部的功能部件間數(shù)據(jù)的傳送和運(yùn)算是由控制器所協(xié)調(diào)的。(2)存儲(chǔ)器組織51系列的單片機(jī)的存儲(chǔ)器具有兩個(gè)部分,即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器兩個(gè)的結(jié)構(gòu)是分開(kāi)的。程序存儲(chǔ)器是用來(lái)存放單片機(jī)系統(tǒng)的目標(biāo)程序的,可分

21、片內(nèi)和片外程序存儲(chǔ)器。同理數(shù)據(jù)存儲(chǔ)器就是存儲(chǔ)數(shù)據(jù)的,其也具有片內(nèi)和片外之分。哈佛類型結(jié)構(gòu)單片機(jī)指的是有著它自己的尋址機(jī)構(gòu)和尋址方式的存儲(chǔ)結(jié)構(gòu)。還有一種與哈佛結(jié)構(gòu)單片機(jī)不同結(jié)構(gòu)的單片機(jī)叫做普利適頓型,這種結(jié)構(gòu)單片機(jī)的存儲(chǔ)器的邏輯空間是唯一的,訪問(wèn)存儲(chǔ)器時(shí)共用一種相同的指令,它的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器可以隨便安排。80C51的片內(nèi)具有的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器大小分別為4KB(ROM)、256K,程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器都可在片外擴(kuò)展64KB的尋址范圍,也就是說(shuō)80C51在片外的存儲(chǔ)器擴(kuò)展范圍上限為264KB。80C51單片機(jī)的存儲(chǔ)器的配置如圖3所示。 圖3 80C51單片機(jī)的存儲(chǔ)器配置80C51程序

22、存儲(chǔ)器有64KB空間的可尋址地址,程序存儲(chǔ)器通過(guò)16位的地址總線以程序計(jì)數(shù)器PC作為地址指針,用來(lái)存放程序和一些表格及常數(shù)。8031片內(nèi)沒(méi)有程序存儲(chǔ)器,需要在外部擴(kuò)展。而8051與8031不同,在8051單片機(jī)片內(nèi)有駐留最低4KB存儲(chǔ)器地址空間(0000HFFFH)。51系列單片機(jī)中,64KB的程序存儲(chǔ)器編址都是統(tǒng)一的。EA引腳可區(qū)分片內(nèi)ROM和片外ROM,8051單片機(jī)中,EA引腳接高電平時(shí),單片機(jī)從片內(nèi)ROM取指令執(zhí)行程序,當(dāng)超過(guò)片內(nèi)ROM地址空間0FFFH后,自動(dòng)轉(zhuǎn)向片外ROM取指令執(zhí)行程序,所以片外程序存儲(chǔ)器ROM地址空間是1000HFFFFH。EA引腳接低電平,中央處理器CPU只從片

23、外程序存儲(chǔ)器ROM中取用指令來(lái)執(zhí)行。8051單片機(jī)有256個(gè)單元的數(shù)據(jù)存儲(chǔ)器,根據(jù)功能可以把256個(gè)單元分為低128單元和高128單元。低128單元(00H7FH)稱為內(nèi)部RAM,內(nèi)部RAM是真正意義上的RAM區(qū),其各單元可直接尋址,用于讀寫(xiě)各種類型數(shù)據(jù)。高128單元(80HFFH)是給特殊功能寄存器(SFR)專用的,用于存放相應(yīng)功能的控制命令、狀態(tài)或數(shù)據(jù)。8051片內(nèi)還有著21個(gè)8位的特殊功能寄存器,訪問(wèn)時(shí)可使用它們的位符號(hào)或者位地址,還可用“寄存器名.位”表示,像表示ACC的最低位為ACC.0,表示B寄存器的最高位為B.7。3.3單片機(jī)的最小應(yīng)用系統(tǒng)將片內(nèi)有程序存儲(chǔ)器的單片機(jī)與時(shí)鐘電路、復(fù)

24、位電路組合,再與單片機(jī)內(nèi)部的中斷系統(tǒng)、定時(shí)器計(jì)數(shù)器、串、并行接口連接就構(gòu)成了單片機(jī)的最小應(yīng)用系統(tǒng)。如圖4所示,就是一個(gè)單片機(jī)最小應(yīng)用系統(tǒng)。 圖4 單片機(jī)最小應(yīng)用系統(tǒng)單片機(jī)實(shí)現(xiàn)復(fù)位的方式只有2種,加電復(fù)位和手動(dòng)復(fù)位。加電復(fù)位是指單片機(jī)在開(kāi)機(jī)時(shí)由系統(tǒng)自動(dòng)通過(guò)復(fù)位電路完成。手動(dòng)復(fù)位是單片機(jī)系統(tǒng)必須有的一項(xiàng)功能,在系統(tǒng)出現(xiàn)死機(jī)或進(jìn)入程序跑飛死循環(huán)的情況時(shí),可通過(guò)手動(dòng)復(fù)位重新啟動(dòng)操作來(lái)解決。我們通常把加電復(fù)位電路與手動(dòng)復(fù)位所結(jié)合成一個(gè)既可以自動(dòng)加電復(fù)位也能手動(dòng)的復(fù)位電路。單片機(jī)的復(fù)位電路簡(jiǎn)圖如圖5所示。圖5 單片機(jī)的復(fù)位電路簡(jiǎn)圖51系列單片機(jī)的工作電壓為5V,其EA引腳需接高電平,51系列單片機(jī)的電源電

25、路如圖6所示。 圖6 51系列單片機(jī)的電源電路3.4 LED點(diǎn)陣在LED顯示屏系統(tǒng)中,其構(gòu)成的基本單元為點(diǎn)陣結(jié)構(gòu)。每一個(gè)顯示屏的單元都是由若干個(gè)88的單色LED點(diǎn)陣顯示模塊組成。每個(gè)88的LED點(diǎn)陣都是由64個(gè)單個(gè)發(fā)光二極管組合的,在每行與每列的交匯點(diǎn)放置一個(gè)單個(gè)的發(fā)光二極管排列成了一個(gè)88的單色LED點(diǎn)陣。使用兩塊單色的88 LED點(diǎn)陣正確的連線可以顯示兩種顏色,這就是雙色88點(diǎn)陣。單色88 LED點(diǎn)陣和雙色88 LED點(diǎn)陣的結(jié)構(gòu)如圖7所示。單色88 LED點(diǎn)陣 雙色88 LED點(diǎn)陣 圖7 單雙色88 LED點(diǎn)陣結(jié)構(gòu) 本設(shè)計(jì)是采用4塊88的LED點(diǎn)陣模塊組合成1個(gè)1616的LED點(diǎn)陣顯示模塊

26、。如圖8所示。圖8 1616 LED 點(diǎn)陣3.5 LED顯示方式 本設(shè)計(jì)所設(shè)計(jì)的1616 LED點(diǎn)陣采用的是動(dòng)態(tài)掃描方法,將所有位數(shù)碼管的段選線一起并聯(lián),即同一列發(fā)光二極管陰極一起連接,同以行發(fā)光二極管陽(yáng)極一起連接。從首行開(kāi)始,把數(shù)據(jù)送出并且鎖存,使首行對(duì)應(yīng)的發(fā)光二極管亮熄一定時(shí)間;然后依照這樣,再進(jìn)行接下來(lái)的每一行都以相同時(shí)間亮熄,直至第十六行完成后,又重新回到第一行執(zhí)行亮熄,如此反復(fù)循環(huán)的亮熄。當(dāng)以每秒24次以上的亮熄速度時(shí),穩(wěn)定的圖形就能出現(xiàn)在顯示屏上,這是因?yàn)槿搜鄣囊曈X(jué)暫留現(xiàn)象產(chǎn)生的。相比靜態(tài)掃描來(lái)說(shuō),這種靈活的動(dòng)態(tài)掃描方法能有效的節(jié)省單片機(jī)的資源。顯示數(shù)據(jù)傳輸使用的是串行傳輸?shù)姆椒ā?/p>

27、使用串行傳輸方法來(lái)實(shí)現(xiàn)顯示數(shù)據(jù)的傳輸時(shí),用一根信號(hào)線就能把列數(shù)據(jù)送到列驅(qū)動(dòng)器中,該方法具有十分的經(jīng)濟(jì)性。但由于串行傳輸過(guò)程比較長(zhǎng),根據(jù)順序?qū)?shù)據(jù)發(fā)送到列驅(qū)動(dòng)器時(shí),要想這一行的每列并行顯示就得等待其各列的數(shù)據(jù)都傳送完畢。在采用這種串行傳輸方式的時(shí)候,且在確定行掃描周期的情況下,因?yàn)榱袛?shù)據(jù)所耗費(fèi)的準(zhǔn)備時(shí)間可能會(huì)比較長(zhǎng),因此行顯示時(shí)間就會(huì)不足,將導(dǎo)致發(fā)光二極管亮度也會(huì)不足。串行傳輸過(guò)程中列數(shù)據(jù)的準(zhǔn)備時(shí)間會(huì)與數(shù)據(jù)顯示時(shí)間相矛盾,一般使用重疊處理方法解決。重疊處理法的關(guān)鍵點(diǎn)是該行列數(shù)據(jù)進(jìn)行顯示的時(shí)候,同時(shí)把該行的下一行列數(shù)據(jù)傳送給列驅(qū)動(dòng)器。要想達(dá)到重疊處理,要求列數(shù)據(jù)的顯示必須得具有鎖存的功能。為了不影

28、響本行的顯示,列數(shù)據(jù)準(zhǔn)備應(yīng)具有實(shí)現(xiàn)串入并出的移位功能。LED點(diǎn)陣顯示模塊有水平方向(X方向)掃描和豎直方向(Y方向)掃描方式。水平掃描法即列掃描方法:用一個(gè)P口輸出列的位碼來(lái)確定點(diǎn)亮哪一列,另一個(gè)P口輸出行的位碼確定行上的具體點(diǎn)亮哪個(gè)發(fā)光二極管。自左向右循環(huán)掃描16次,顯示出穩(wěn)定的圖像。3.6點(diǎn)陣的移動(dòng)如下為1616點(diǎn)陣移動(dòng)介紹。點(diǎn)陣的組字是通過(guò)橫向和縱向的16點(diǎn)數(shù)據(jù)顯示不同的字符,每一組成的字符都可以水平、豎直的在點(diǎn)陣屏上移動(dòng)。1.字符左右移動(dòng)的顯示(1)豎直(列)掃描方法左移動(dòng):即豎直方向的字符在水平方向移動(dòng)(左方移動(dòng))介紹兩個(gè)方法:方法一:延長(zhǎng)數(shù)組法。將原先的字符點(diǎn)陣數(shù)組的16個(gè)數(shù)據(jù)延長(zhǎng)

29、為32個(gè)數(shù)據(jù)。掃描儀的每幀取八個(gè)顯示數(shù)據(jù),每一幀取數(shù)時(shí)應(yīng)該在數(shù)組的后一位取,也就是向后移一位。要想呈現(xiàn)字符的水平方向的向左的移動(dòng)的影像。首先,設(shè)想有兩個(gè)1616的點(diǎn)陣模塊,每次掃描16幀的數(shù)據(jù),先從左邊開(kāi)始,然后都以16幀向右掃描,先前的16位被罩住,如此循環(huán),就能實(shí)現(xiàn)16幀換面的動(dòng)態(tài)掃描顯示。如圖9.字符“江”沿水平向左移動(dòng)的圖像圖9方框圖法左右移動(dòng)示意圖列向若想顯示一個(gè)移動(dòng)的字符,首先理解列掃描方式其點(diǎn)陣數(shù)據(jù)時(shí)行碼,高位在下面,低位在上面,所以當(dāng)?shù)谝淮稳〕?16數(shù)據(jù)是從行碼的點(diǎn)陣數(shù)組中取出的,接著把得到的行碼送到輸出口,與之相對(duì)應(yīng)的這八個(gè)數(shù)組數(shù)據(jù)用列碼傳送至輸出口端,分別把控116列。這1

30、6個(gè)數(shù)據(jù)被掃描完成后,第二次就去214個(gè)數(shù)據(jù),因?yàn)閮蓚€(gè)相同的數(shù)據(jù)1和17,再次送到輸出口端,這樣又對(duì)應(yīng)了相應(yīng)的數(shù)據(jù),送給列的輸出端口同時(shí)輸出相應(yīng)的列碼,于是控制著相應(yīng)的列(116列)三次的掃描取得數(shù)據(jù)為318,而18與2是相同的數(shù)據(jù)碼,這樣循環(huán)的掃描完成了字符的左向移動(dòng)。上述實(shí)現(xiàn)的是圖形化移動(dòng)的方法,也可理解為是移動(dòng)了多個(gè)不同的形狀字形。如圖10所示,通過(guò)對(duì)16行的掃描與顯示,完成一個(gè)個(gè)字型的掃描,多少次的重復(fù)循環(huán)實(shí)現(xiàn)字符的左向移動(dòng)。 圖10 字形法左右移動(dòng)示意圖假定一個(gè)漢字的字型編碼如下:00H,10H,20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C

31、0H,0D0H,0E0H,0F0H;假設(shè)第二個(gè)漢字的編碼如下:10H,20H,30H,40H,50H,60H,70H,80H,90H,0A0H,0B0H,0C0H,0D0H,0E0H,0F0H,00H相當(dāng)于將字型的編碼的行顯示數(shù)據(jù)往后推一行,即第一行變?yōu)榈诙?,第二行變?yōu)榈谌校绱送扑?。第一個(gè)字型掃描結(jié)束就接著產(chǎn)生第二個(gè)字型的編碼,以此類推,不斷的進(jìn)行編碼的變換調(diào)整。編碼的根據(jù)順序存入相應(yīng)的地址,若要進(jìn)行左移,先得把第一個(gè)地址存入到另外的 一個(gè)地址,不是保存本數(shù)組數(shù)據(jù)的地址,然后存數(shù)據(jù)的地址依次向前移,例如,21H地址的數(shù)據(jù)移到20H,接著22H的數(shù)據(jù)就得移到21H地址,相互移動(dòng),達(dá)到相應(yīng)的

32、效果。方法二:數(shù)組數(shù)據(jù)的循環(huán)左移;即是把數(shù)組中的數(shù)據(jù)向左移不是二進(jìn)制數(shù)據(jù)的位移。不延長(zhǎng)原先數(shù)組中的數(shù)據(jù),而是去相應(yīng)下一幀的十六個(gè)數(shù)據(jù),然后把前一幀的數(shù)據(jù)前移,也就是左移,把后面的每一幀數(shù)據(jù)向前移,一直移下去,直到第16個(gè)。數(shù)組數(shù)據(jù)的左移方法選擇C語(yǔ)言實(shí)現(xiàn),首先得設(shè)置數(shù)組的下標(biāo)志,將相應(yīng)的數(shù)據(jù)輸入到數(shù)組中,然后根數(shù)數(shù)組的下標(biāo)值,利用程序中的循環(huán)結(jié)構(gòu),進(jìn)行遍歷,將相應(yīng)的值賦給前一個(gè)標(biāo)號(hào)的數(shù)組中,這樣就可以實(shí)現(xiàn)數(shù)組數(shù)據(jù)的左移。(2)橫向(行)掃描方法左移動(dòng):即橫向方向的字符在水平方向移動(dòng)(左方移動(dòng))。豎直掃描方式也就是行掃描方式,第一次掃描取116個(gè)數(shù)據(jù),輸送到列向的輸出口端,相聯(lián)系的八個(gè)數(shù)值,用行

33、碼輸出口段輸出相應(yīng)的行碼值,決定著116行的掃描。接著,第二次掃描十六個(gè)數(shù)據(jù),這次掃描需要右移第一次掃描的數(shù)據(jù),如此掃描循環(huán),關(guān)鍵的是后一次的掃描需讓前一次的掃描右移一位。與此同理,右移的原理與左移相似,只是取碼的次序不同而已(相反)。2.數(shù)據(jù)的上下移動(dòng)(1)列掃描方式向上移動(dòng)將第一次點(diǎn)陣中掃描到的116個(gè)數(shù)據(jù)取出來(lái),輸送到列向碼的輸出口端,對(duì)此的十六個(gè)數(shù)據(jù),然后要列碼端的輸出端口輸出相應(yīng)的列碼,同時(shí)決定116行的掃描。又因?yàn)榱邢虻臄?shù)組的組字是下低上高的,所以在完成了第一次的十六個(gè)數(shù)掃描后,在掃描第二次十六位數(shù)據(jù)的時(shí)候,需要將第一次的數(shù)據(jù)的行碼右移一位,這樣就完成了數(shù)據(jù)的上方向移動(dòng)。上述實(shí)現(xiàn)的

34、是圖形化移動(dòng)的方法,也可理解為是移動(dòng)了多個(gè)不同的形狀字形。通過(guò)對(duì)16行的掃描與顯示,完成一個(gè)個(gè)字型的掃描,多少次的重復(fù)循環(huán)實(shí)現(xiàn)字符的向上移動(dòng)。同時(shí)將每一個(gè)顯示的數(shù)據(jù)都右移一位,隨之長(zhǎng)生一個(gè)動(dòng)態(tài)向上滾動(dòng)的字符,也就是有滾動(dòng)的視覺(jué)感應(yīng)。當(dāng)字符被掃描完成后,然后進(jìn)行相應(yīng)的動(dòng)作調(diào)整改變,產(chǎn)生后面的字型的編碼,再將編碼存入存儲(chǔ)器,然后將地址數(shù)據(jù)調(diào)整,即將每組數(shù)據(jù)向右移一位。 圖11 字形法上移動(dòng)示意圖(2)橫向(行)掃描方式上下移動(dòng)介紹兩種方法于字符的豎直方向的移動(dòng)。方法一:延長(zhǎng)數(shù)組法。在行向組列字的基礎(chǔ)上,若想將一個(gè)字符向上移動(dòng),則在第一次去點(diǎn)陣數(shù)據(jù)的116數(shù)據(jù)時(shí),把它輸送到輸出口端,與之相對(duì)應(yīng)的八個(gè)

35、數(shù)值,然后在行碼輸出口端輸出相應(yīng)的行碼值決定116行。第二此數(shù)據(jù)的取出就從217數(shù)據(jù)取,因?yàn)?7與1的數(shù)據(jù)相同,然后在輸出,相應(yīng)的在控制相應(yīng)的行,后面的數(shù)據(jù)取出就是318的數(shù)據(jù),以此類推,往復(fù)循環(huán)實(shí)現(xiàn)字符的上方向移動(dòng)。方法二:即數(shù)組數(shù)據(jù)的左方向循環(huán)移動(dòng),也就是上文所述的數(shù)組的左向移動(dòng)利用變量的變化來(lái)檢測(cè)數(shù)組數(shù)據(jù)的左方向循環(huán)移動(dòng)。3.7 點(diǎn)陣顏色的轉(zhuǎn)換 以88雙色點(diǎn)陣為例介紹兩種顏色的轉(zhuǎn)換原理。88雙色點(diǎn)陣是由2個(gè)88的單色點(diǎn)陣一起組合而成的,如圖13所示。在電路設(shè)計(jì)的時(shí)候可以從公共的引腳接入顯示信號(hào),接89C51的一個(gè)PORT口,另外2個(gè)PORT分別接顯示紅、黃的部分。這樣,編程執(zhí)行時(shí),掃描輸

36、出顯示紅色的信號(hào)就會(huì)顯示出紅色,掃描輸出顯示黃色的信號(hào)就顯示了黃色。 圖12 雙色88點(diǎn)陣掃描圖3.8 LED點(diǎn)陣列驅(qū)動(dòng)電路當(dāng)至少提供10毫安到20毫安時(shí),發(fā)光二極管才會(huì)被正向點(diǎn)亮。提供的電流不足夠大,發(fā)光二極管就會(huì)不足夠亮。8051的輸入、輸出端的高態(tài)輸出電流都不過(guò)12毫安而已,難以直接驅(qū)動(dòng)發(fā)光二極管的點(diǎn)亮。而需要額外加入驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)發(fā)光二極管的的點(diǎn)亮,根據(jù)兩種不同的共用極向的LED點(diǎn)陣有著不同的驅(qū)動(dòng)方式。根據(jù)不同的輸出態(tài)也可以分為四種方式,即:低態(tài)掃描-高態(tài)顯示、低態(tài)掃描-低態(tài)顯示、高態(tài)掃描-高態(tài)顯示和高態(tài)掃描-低態(tài)顯示。如圖13 所示是針對(duì)共陰性LED陣列而設(shè)計(jì)的驅(qū)動(dòng)電路,在這種驅(qū)動(dòng)電

37、路采用低態(tài)掃描,也就是任何時(shí)間只有一個(gè)高態(tài)信號(hào),其他則為低態(tài)。一行掃描完成之后,再把高態(tài)信號(hào)轉(zhuǎn)到臨近的其他行。掃描信號(hào)經(jīng)限流電阻接到PNP晶體管的基極,晶體管的集電極接地,射極則連至LED點(diǎn)陣的列引腳,若要同時(shí)點(diǎn)亮該列的16個(gè)LED,則晶體管的電流必須大于200毫安才行。常用的2N3904之類就可以達(dá)到當(dāng)?shù)蛻B(tài)的列掃描信號(hào)輸入晶體管的基極后,該晶體管即為正向,而產(chǎn)生電流,即可使該列的LED具有點(diǎn)亮的條件。 圖 13共陰型低態(tài)掃描-低態(tài)顯示信號(hào)驅(qū)動(dòng)電路 PNP晶體管的連接如圖13中,基極接顯示信號(hào),射極連電源VCC。當(dāng)輸入低態(tài)的顯示信號(hào)時(shí),晶體管集電極電流流入行二極管的陽(yáng)極,使得發(fā)光二極管被點(diǎn)亮。

38、像本設(shè)計(jì)所設(shè)計(jì)的1616 LED點(diǎn)陣列是由4個(gè)88 LED點(diǎn)陣列并接所成的,這種多個(gè)并接的LED陣列掃描時(shí),一個(gè)掃描信號(hào)同時(shí)驅(qū)動(dòng)著2個(gè)LED陣列。如圖14所示。 當(dāng)一個(gè)掃描信號(hào)驅(qū)動(dòng)2行LED陣列時(shí),需要使用鎖存器將兩組顯示信號(hào)鎖存住。鎖存器74LS595的輸出是低態(tài)輸出,輸出電壓可以達(dá)到24毫安,發(fā)光二極管的驅(qū)動(dòng)電流最低為10毫安,所以24毫安足夠驅(qū)動(dòng)點(diǎn)亮發(fā)光二極管。如果驅(qū)動(dòng)電流不足,發(fā)光二極管不夠亮,可選用輸出電壓能達(dá)到48毫安的74A373鎖存器。 圖14中的電路驅(qū)動(dòng)有16條掃描信號(hào),由8051直接輸出的話,占用了2個(gè)P口,浪費(fèi)了P口資源??梢允褂?4LS164譯碼器,將16進(jìn)位碼解碼成低

39、態(tài)的掃描信號(hào)輸出,輸出的信號(hào)直接接PNP晶體管的基極,若電流信號(hào)太大可中間串一個(gè)電阻限流,再接晶體管基極,晶體管把信號(hào)放大后就能驅(qū)動(dòng)16個(gè)發(fā)光二極管點(diǎn)陣了。1616的點(diǎn)陣驅(qū)動(dòng)圖如圖14所示。 圖14 1616的點(diǎn)陣驅(qū)動(dòng)圖4軟件設(shè)計(jì)4.1單片機(jī)延時(shí)子程序 在單片機(jī)的程序編程過(guò)程中,延時(shí)經(jīng)常被用到,延時(shí)程序是整個(gè)程序中非常重要的一部分。本次畢業(yè)設(shè)計(jì)中,LED點(diǎn)陣的行掃描時(shí)間、顯示字符的移動(dòng)的時(shí)間間隔都用到了延時(shí),延時(shí)可以保持字符移動(dòng)的連貫性,也可以作為間隔停頓。下面簡(jiǎn)要的介紹延時(shí)程序涉及的一些基本概念及一些相關(guān)的指令的詳細(xì)用法。1.機(jī)器周期和指令周期單片機(jī)完成一個(gè)基本指令操作所耗費(fèi)的時(shí)間叫做機(jī)器周

40、期。機(jī)器周期視脈沖頻率而定,振蕩脈沖頻率為12MHz時(shí),機(jī)器的周期為1us;振蕩脈沖頻率為6MHz時(shí),機(jī)器周期就為2us。執(zhí)行以條指令所耗費(fèi)的時(shí)間叫做指令周期,指令周期用機(jī)器周期的數(shù)目來(lái)表示。2.延時(shí)指令由于單片機(jī)每執(zhí)行一條指令都需要耗費(fèi)一定時(shí)間,所以可使單片機(jī)執(zhí)行無(wú)操作命令的指令,即空指令來(lái)達(dá)到延時(shí)的效果。(1)MOV數(shù)據(jù)傳送指令數(shù)據(jù)傳送指令功能是將數(shù)據(jù)從一個(gè)地方傳送、拷貝到另一個(gè)地方。例如:MOV R0,80H;表示把數(shù)據(jù)80H送到R7中,該指令占用一個(gè)機(jī)器周期,并沒(méi)有實(shí)際的操作。(2)NOP空操作指令空操作指令占用一個(gè)機(jī)器周期,單片機(jī)不做任何的操作。因此,NOP指令常用于程序等待或時(shí)間的

41、延時(shí)。(3)DJNZ循環(huán)轉(zhuǎn)移指令 將第一個(gè)數(shù)減1判0。如果該數(shù)減1后結(jié)果不為0,程序就轉(zhuǎn)移;結(jié)果為0,程序就順序繼續(xù)往下執(zhí)行。這指令耗費(fèi)2個(gè)機(jī)器周期的時(shí)間。運(yùn)用上面三條指令組合在程序編程中能夠?qū)崿F(xiàn)相對(duì)精確的延時(shí)程序。本次設(shè)計(jì)中程序的延時(shí)程序如下:MOV R3,#200 D1: MOV R5,#250 F 1: DJNZ R5,F(xiàn)1 DJNZ R3,D1 RET 2其延時(shí)的時(shí)間為:1+(1200)+(2250200)+(2200)+2=(2*250+3)*200+3 =s 100ms =0.1s4.2點(diǎn)陣左移顯示的流程圖及分析 點(diǎn)陣掃描作準(zhǔn)備,設(shè)定程序的初始地址為0H,選擇符號(hào)F的初值為0。主程

42、序開(kāi)始的延時(shí)子程序延時(shí)0.1秒,子程序使用2次,在程序開(kāi)始啟動(dòng)作停頓用和一次左移結(jié)束到下一次重新開(kāi)始間的停頓。從M3運(yùn)行程序循環(huán),M3的開(kāi)始程序來(lái)確定列掃描出口即選擇點(diǎn)陣的顏色,F(xiàn)初值為0,從P1口輸出掃描信號(hào),首先顯示紅色點(diǎn)陣。設(shè)定每列掃描時(shí)間為:MOV R3,#50 DJNZ R3,$ ;1+(250)=101us0.1ms。字型顯示移動(dòng)完后,返回重新開(kāi)始移動(dòng)。4個(gè)字符字型碼128個(gè),取碼指針初值為0,每次對(duì)其加2,至128時(shí)循環(huán)結(jié)束,再改變F的狀態(tài),程序跳回開(kāi)始部分,黃色點(diǎn)陣顯示開(kāi)始移動(dòng)。顯示效果:開(kāi)始顯示時(shí),停頓0.1秒,然后向左以每0.1秒移動(dòng)顯示4個(gè)紅色的字,當(dāng)顯示到左后第4字后,

43、停頓0.1秒。再依次以每0.1秒顯示4個(gè)黃色的字,黃色的字型顯示完,停頓0.1秒,再重復(fù)接4個(gè)紅色的字依次從左移動(dòng)顯示出。依此循環(huán)。點(diǎn)陣左移顯示的流程圖如圖16所示。整個(gè)顯示過(guò)程的程序見(jiàn)附錄A所示。圖15顯示流程圖4.3 PROTEUS ISIS仿真 Proteus是由ISIS和ARES兩部分組成的軟件。其中ISIS是用于電子系統(tǒng)原理設(shè)計(jì)和仿真平臺(tái)的軟件。ARES是用于高級(jí)的PCB布線編輯軟件。我們用ISIS來(lái)進(jìn)行本次設(shè)計(jì)的仿真。首先,先在軟件中畫(huà)出仿真線路圖和所用的各個(gè)元件,編寫(xiě)相應(yīng)單片機(jī)的程序,加載程序,生成HEX文件。新建Keil項(xiàng)目,導(dǎo)入源程序。設(shè)置好單片機(jī)時(shí)鐘頻率,為12MHz,選擇

44、正確的文件路徑然后加載。設(shè)置完各項(xiàng)就能實(shí)現(xiàn)仿真。若出現(xiàn)仿真結(jié)果不對(duì),修改程序,重新編譯運(yùn)行,直至沒(méi)有錯(cuò)誤。仿真結(jié)果見(jiàn)附錄3。 參考文獻(xiàn)1. 張義和 陳敵北編著例說(shuō)8051人民郵電出版社2006年Zhang Yihe,Chen Dibei Ed cases, said 8051M. People Post Press 20062周越主編單片機(jī)技術(shù)實(shí)驗(yàn)實(shí)訓(xùn)教程中國(guó)水利水電出版社2007年Zhou Yue editorchip technology experimental training course M.China Water Power Press 2007 3. 周越主編單片機(jī)應(yīng)用技術(shù)中國(guó)

45、水利水電出版社2009年Zhou Yue editorSCM Application TechnologyM.China Water Power Press 2009 4李全利編單片機(jī)原理及應(yīng)用技術(shù)高等教育出版社2004年 Liquan Li series Principles and Applications TechnologyM.Higher Education Press 20045. 李忠國(guó) 陳剛編著單片機(jī)應(yīng)用技能實(shí)訓(xùn)人民郵電出版社2006年Li Zhongguo Chen Gang edited microcomputer application skills trainingM.

46、People Post Press 20066. 趙建領(lǐng)編著Protel電路設(shè)計(jì)與制版寶典電子工業(yè)出版社2007年Zhao Jianling edited Protel circuit design and platemaking CollectionM.Electronic Industry Publishing House 20077郭振民丁紅主編電子設(shè)計(jì)自動(dòng)化EDA中國(guó)水利水電出版社2009年Guo Zhenmin Ding Hong editor Electronic Design Automation EDA M. China Water Power Press 20098. 周潤(rùn)景

47、等編著Proteus在MCS-51&ARM7系統(tǒng)中的應(yīng)用百例電子工業(yè)出版社2006年 Zhourunjing eds Proteus application hundred cases in MCS-51 & ARM7 systemM.Electronic Industry Publishing House 20069. Vizimuller.P. RF design guide-systems,circuits,and equations. 1995.10 .R.Dye. Visual Object-Orientated Programming,Dr.Dobbs Macintosh Jour

48、nal. Sept.1st.1991 致 謝畢業(yè)論文暫告收尾,這也意味著我在大學(xué)學(xué)習(xí)生活既將結(jié)束。回首既往,自己一生最寶貴的時(shí)光能于這樣的校園之中,能在眾多學(xué)富五車、才華橫溢的老師們的熏陶下度過(guò),實(shí)是榮幸之極。在這幾年的時(shí)間里,我在學(xué)習(xí)上和思想上都受益非淺。這次設(shè)計(jì)的成功除了自身努力外,與各位老師、同學(xué)和朋友的關(guān)心、支持和鼓勵(lì)是分不開(kāi)的,我要在這里對(duì)他們表示深深的謝意。每一次經(jīng)歷都是成長(zhǎng),在設(shè)計(jì)當(dāng)中發(fā)現(xiàn)很多的問(wèn)題,都是之前沒(méi)有遇到過(guò)的,處理著這些事情,雖然都是些不起眼的小事,但還是需要很多解決大事情的技巧與經(jīng)驗(yàn)。每次在設(shè)計(jì)時(shí),遇到的各種問(wèn)題,都不知道如何下手,沒(méi)有一個(gè)整體的思路,就有些茫然無(wú)措

49、的感覺(jué),幸運(yùn)的是,同學(xué)與老師的教傳與啟蒙,讓我有著恍然大悟的感覺(jué),多少次徘徊在問(wèn)題當(dāng)中,想想該如何實(shí)現(xiàn)這個(gè)功能或者那個(gè)功能,自己都得到了一次鍛煉,很多事情其實(shí)都是需要耐心的,發(fā)現(xiàn)問(wèn)題不懂,然后自己在網(wǎng)上查找資料,實(shí)在是不能得出肯定正確的結(jié)果,然后就找老師一一解答,老師的細(xì)心指導(dǎo),啟蒙式的教導(dǎo)方式,讓人受益匪淺,而不是那種純粹式的灌輸,這種思考方式的教導(dǎo)會(huì)給人學(xué)會(huì)面對(duì)其他問(wèn)題的思考,觸類百通,授之以漁不如授之以漁。這次設(shè)計(jì)中十分感謝我的指導(dǎo)老師桂友超老師,在設(shè)計(jì)上給了很多寶貴的經(jīng)驗(yàn),給予了很多的指導(dǎo)與幫助,得以讓設(shè)計(jì)順利進(jìn)行。老師在教導(dǎo)過(guò)程中形象的用各種例子來(lái)講述各種問(wèn)題,通俗易懂,敬佩他專業(yè)知

50、識(shí)淵博的同時(shí),對(duì)他的那種生活高尚情操深深嘆服,那種一絲不茍,諄諄教誨的教師品格是學(xué)生將來(lái)工作的榜樣。同時(shí),老師的教導(dǎo)寓事于理,不僅僅教的是專業(yè)知識(shí),更是一種對(duì)待生活人生的達(dá)觀與理解。 最后,對(duì)老師,同學(xué)等所有的人以及學(xué)校給我們提供的這么好的學(xué)業(yè)環(huán)境,致以我最衷心的感謝,因?yàn)橛辛诉@些,大學(xué)才夠完整。附 錄附錄1一、 程序1.匯編語(yǔ)言程序:ORG 0000H;CLR F0;顏色選擇符號(hào)F0清零START: MOV A,#00H;清除屏幕MOV P2,A;顯示信號(hào)輸出到P2口MOV R3,#200;延時(shí)程序D1: MOV R5,#250;F1: DJNZ R5,F1;DJNZ R3,D1;MOVE:

51、MOV 20H,#00;取碼指針地址20H初值為00MOV R4,00H;74LS154掃描指針初值為00M1:MOV R1,#65;每屏停留時(shí)間M2:MOV R6,#16;每屏一個(gè)字,16個(gè)數(shù)據(jù)碼MOV R0,20H;取碼指針存入R0M3: MOV A,R4;掃描指針載入AJB F0,ORGANGE;顏色選擇CLR P0.2;清P0.2SETB P0.3;P0.3置1MOV P1,A;輸出至P1掃描列SJMP M4;ORGANGE:MOV P3,A;CLR P0.3;M4: MOV A,R0;取碼指針載入AMOV DPTR,#TABLE;數(shù)據(jù)指針指到 TABLEMOVC A,A+DPTR;到

52、TABLE取上半部數(shù)據(jù)碼SETB P0.1;P0.1口置1CLR P0.0;清P0.0口MOV P2,A;輸出至P2口顯示INC R0;取下一個(gè)碼MOV A,R0;取碼指針載入AMOV DPTR,#TABLE;數(shù)據(jù)指針指到TABLEMOVC A,A+DPTR;到TABLE取下半部碼SETB P0.0;CLR P0.1;MOV P2,A;輸出到P2口顯示INC R0;取碼值加1MOV R3,#50;延時(shí)DJNZ R3,$;MOV A,#00H;清除屏幕MOV P2,A;INC R4;掃描下一行DJNZ R6,M3;判斷顯示一屏MOV R4,#00;清除74LS154掃描指針為00DJNZ R1,

53、M2;每屏停留時(shí)間MOV A,20H;取碼指針載入AADD A,#02;指針加2MOV 20H,A;再存入20H地址取碼指針XRL A,#128;四個(gè)字是否都左移完?JNZ M1;否,跳到M1CPL F0; 顏色選擇符號(hào)F0清零SJMP START;是,跳到STARTTABLE:DB 02H,00H,02H,08H,06H,10H,0AH,20HDB 12H,48H,22H,84H,7FH,0FEH,02H,00HDB 02H,00H,7AH,00H,06H,10H,03H,0A0HDB 0AH,70H,02H,48H,02H,8CH,00H,10H;DB 0FH,00H,10H,40H,20

54、H,20H,20H,10HDB 20H,08H,10H,04H,08H,02H,04H,01HDB 04H,02H,08H,04H,10H,08H,20H,10HDB 20H,20H,20H,40H,10H,80H,0FH,00H;DB 08H,26H,44H,06H,26H,06H,30H,38HDB 01H,02H,20H,02H,20H,02H,20H,02HDB 20H,02H,2FH,0FEH,20H,02H,20H,02HDB 20H,02H,20H,02H,00H,02H,00H,00H;DB 08H,20H,44H,20H,26H,7EH,30H,80HDB 01H,00H,0F2H,00H,22H,00H,3FH,0F0HDB 22H,10H,2FH,90H,22H,10H,22

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論