基于51單片機的LED點陣顯示屏畢業(yè)論文_第1頁
基于51單片機的LED點陣顯示屏畢業(yè)論文_第2頁
基于51單片機的LED點陣顯示屏畢業(yè)論文_第3頁
基于51單片機的LED點陣顯示屏畢業(yè)論文_第4頁
基于51單片機的LED點陣顯示屏畢業(yè)論文_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 . . . 大學畢業(yè)論文基于51單片機的LED點陣顯示屏系統(tǒng)設計學 院 信息電子技術(shù)專 業(yè) 通信工程班 級 07級1班學 籍 號 0709064113姓 名 金榮指導教師 王 全佳 木 斯 大 學2011年6月15日44 / 49摘 要摘要:本文介紹了一款以單片機AT89S51為控制器的LED點陣顯示屏系統(tǒng)的設計。該系統(tǒng)選用四塊8×8點陣模塊構(gòu)建一個16×16的LED點陣屏,可實現(xiàn)中英文字符的顯示與其動態(tài)特效顯示。選定AT89S51單片機為核心控制器件,由串并轉(zhuǎn)換器和鎖存器為譯碼電路器件,三極管和驅(qū)動繼電器為驅(qū)動電路器件,通過級連的方式來擴大顯示屏幕的尺寸以達到增加顯示容

2、的目的。AT89S51單片機處理控制命令以與顯示代碼,將顯示容通過I/O口串行輸出并且控制譯碼電路完成串并轉(zhuǎn)換并行輸出,最后由顯示驅(qū)動電路模塊驅(qū)動LED點陣顯示屏的掃描顯示。整個設計采用AT89S51做核心控制器,74LS164和74LS373組成譯碼電路,三極管8550和ULN2803做行和列驅(qū)動。關(guān)鍵字:AT89S51;LED點陣顯示屏;串并轉(zhuǎn)換器;鎖存器;驅(qū)動電路AbstractAbstract: This paper introduces a design of the LED lattice display system base on MCU AT89S51. This syste

3、m chooses four 8 x 8 bitmap module to construct a 16 x 16 of LED dot matrix screen.The system can display in both Chinese and English characters of the show and from top to bottom and move around the magic show. Selected for the core control device AT89S51, the string and converter and latches to de

4、code circuits, transistor and drive relays for driving circuit devices, through the ways to expand level even display screen size in order to achieve the purpose of increasing display content.AT89S51 processing control commands and display code will display content through the I/O port serial output

5、 and control of decode logic complete and transfer parallel output, finally by display driver circuit module driver destem scanning display. The whole design USES AT89S51 do core controller, 74LS164 and 74LS373 composition decode circuit, triode 8550 and ULN2803 do rows and columns driver.Key words:

6、AT89S51;lattice LEDs panel display;String and converter;LatchesDriving circuit目 錄摘 要1Abstract2目 錄I第1章 緒論11.1 課題背景11.1.1 選題背景11.1.2 研究現(xiàn)狀與發(fā)展趨勢11.2 論文主要容3第2章 方案論證與選擇42.1 系統(tǒng)硬件方案42.1.1 顯示屏主控制器42.1.2 通信系統(tǒng)62.1.3 LED點陣顯示屏62.1.4 硬件設計方案82.2 系統(tǒng)軟件方案82.2.1 單片機編程語言92.2.2 系統(tǒng)軟件編譯器介紹9第3章 系統(tǒng)硬件設計103.1 硬件整體設計概述與功能分析103

7、.2 控制單元設計113.2.1 AT89S51簡介113.2.2 控制系統(tǒng)設計123.3 譯碼電路設計133.3.1 串并轉(zhuǎn)換器74LS164133.3.2 鎖存器74L373143.4 驅(qū)動電路設計153.4.1 行驅(qū)動電路設計153.4.2 列驅(qū)動電路設計163.5 通信系統(tǒng)硬件設計163.6 電源設計173.7 級連大屏幕LED顯示屏18第4章 系統(tǒng)軟件設計194.1 程序設計194.2 顯示程序的設計204.2.1 LED顯示屏的顯示方式204.2.2 點陣數(shù)據(jù)表達方式214.2.3 顯示程序的設計224.3 通信程序的設計24結(jié) 論26致 27參考文獻28附錄 1: 硬件原理圖30

8、附錄 2: 原器件清單31附錄 3: 系統(tǒng)PCB圖33附錄 4: 程序清單34附錄 5: 外文參考資料翻譯44第1章 緒論1.1 課題背景1.1.1 選題背景LED顯示屏是八十年代后期在全球迅速發(fā)展起來的新型信息顯示媒體,顯示屏由幾萬到幾十萬個半導體發(fā)光二極管像素點均勻排列組成。利用不同的材料可以制造不同色彩的LED像素點。目前應用最廣的是紅色、綠色、黃色。而藍色和純綠色LED的開發(fā)已經(jīng)達到了實用階段。LED顯示屏可以顯示變化的數(shù)字、文字、圖形圖像;不僅可以用于室環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無法比擬的優(yōu)點1。在短短的十來年中,LED點陣顯示屏就以亮度高、工作電壓低、功

9、耗小、小型化、壽命長、耐沖擊和性能穩(wěn)定的優(yōu)點迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛的應用。LED的發(fā)展前景極為廣闊,目前正朝著更高亮度、更高耐氣候性、更高的發(fā)光密度、更高的發(fā)光均勻性、可靠性、全色化方向發(fā)展。LED顯示屏的應用涉與社會經(jīng)濟的許多領(lǐng)域,主要包括證券交易、金融信息顯示、機場航班動態(tài)信息顯示、港口、車站旅客引導信息顯示、體育場館信息顯示、道路交通信息顯示、調(diào)度指揮中心信息顯示、郵政、電信、商場購物中心等服務領(lǐng)域的業(yè)務宣傳與信息顯示、廣告媒體新產(chǎn)品等。1.1.2 研究現(xiàn)狀與發(fā)展趨勢(1)我國LED產(chǎn)業(yè)發(fā)展現(xiàn)狀經(jīng)歷了多年的發(fā)展,我國LED產(chǎn)業(yè)已從購買芯片、外延片生產(chǎn)應用產(chǎn)

10、品,逐步發(fā)展到自主生產(chǎn)外延片和芯片的階段,并且已具備一定技術(shù)和產(chǎn)業(yè)基礎。初步形成從外延片生產(chǎn)、芯片制備到器件封裝、集成應用等比較完整的產(chǎn)業(yè)鏈。我國上游產(chǎn)業(yè)的現(xiàn)狀,一是參與單位多,主要單位有中科院半導體所、中科院物理所、電子工業(yè)集團第十三電子研究所、大學、清華大學、大學和一些企業(yè);但是這些參與單位都想建立自己產(chǎn)能,起始階段產(chǎn)能都不大,整個產(chǎn)業(yè)看起來資源分散,沒有規(guī)模;而且科研院所都想建立自己的產(chǎn)能,在技術(shù)輸出上排外,而實際上各科研單位某一時間突破的可能僅是產(chǎn)業(yè)技術(shù)鏈的某一環(huán)節(jié),整體上產(chǎn)業(yè)化條件還不具備,這樣雖然每年看起來各個方面的技術(shù)都在突破,但產(chǎn)業(yè)化效率非常低。二是與國際先進水平比較,整體上一

11、般芯片的亮度、發(fā)光效率、抗靜電能力、抗漏電能力以與品質(zhì)控制水平與國際廠家仍有差距。三是能滿足市場需要且規(guī)模化生產(chǎn)的企業(yè)少,封裝所需芯片尤其高檔芯片主要靠進口。值得一提的是,經(jīng)過多年的發(fā)展,我國LED顯示屏廠商已經(jīng)具有了很強的實力,雖然擁有DAK、L ighthouse、Darco等知名顯示屏廠商的競爭,但國LED顯示屏廠商還是占據(jù)了國市場的大部分份額,國已經(jīng)涌現(xiàn)了一批如三思、利亞德、青松等優(yōu)秀企業(yè),國顯示屏市場吸收了很大一部分芯片產(chǎn)能,對促進國上中游發(fā)展壯大起了重要作用。國生產(chǎn)的顯示屏、景觀照明燈具等LED應用產(chǎn)品已經(jīng)出口到美國、歐盟等國家和地區(qū)。(2) LED顯示屏的發(fā)展前景從LED產(chǎn)業(yè)全球

12、分工來看,在LED上游外延片、芯片生產(chǎn)上,美國、日本、歐盟仍擁有巨大的技術(shù)優(yōu)勢,中國已經(jīng)成為全球重要的LED生產(chǎn)基地。目前全球形成了以日、美、德為產(chǎn)業(yè)龍頭,中國、國緊跟其后,中國大陸、馬來西亞等國家和地區(qū)積極跟進的梯隊分布。雖然中國在LED外延片、芯片的生產(chǎn)技術(shù)上距離國際先進水平還有一定的差距,但是國龐大的應用需求給LED下游廠商帶來巨大的發(fā)展機會,這為我國LED產(chǎn)業(yè)的發(fā)展提供了良好的機遇?,F(xiàn)代信息社會中,作為人一機信息視覺傳播媒體的顯示產(chǎn)品和技術(shù)得到迅速發(fā)展,進入二十一世紀的顯示技術(shù)是平板顯示的時代,LED顯示屏作為平板顯示的主導產(chǎn)品之一無疑會有更大的發(fā)展,并有可能成為二十一世紀平板顯示的代

13、表性主流產(chǎn)品。高亮度、全彩化藍色與純綠色LED產(chǎn)品自出現(xiàn)以來,成本逐年快速降低,已具備成熟的商業(yè)化條件?;A材料的產(chǎn)業(yè)化。使LED全彩色顯示產(chǎn)品成本下降,應用加快。LED產(chǎn)品性能的提高,使全彩色顯示屏的亮度、色彩、白平衡均達到比較理想的效果,完全可以滿足戶外全天候的環(huán)境條件要求,同時,由于全彩色顯示屏價格性能比的優(yōu)勢,預計在未來幾年的發(fā)展中,全彩色LED顯示屏在戶外廣告媒體中會越來越多地代替?zhèn)鹘y(tǒng)的燈箱、霓紅燈、磁翻板等產(chǎn)品,體育場館的顯示方面全彩色LED屏更會成為主流產(chǎn)品。全彩色LED顯示屏的廣泛應用會是LED顯示屏產(chǎn)業(yè)發(fā)展的一個新的增長點。未來LED顯示屏會向著標準化、規(guī)化,產(chǎn)品結(jié)構(gòu)多樣化的

14、方向發(fā)展2。(3) 選題意義該設計課題使我們能夠掌握LED顯示屏的基本顯示原理和設計方法,對LED顯示屏這個行業(yè)有了較為深刻的了解和認識。并且對大學期間所學習的一些理論進行了實踐,使我們對所學過的理論知識有了新的認識。并且通過該設計課題掌握了51單片機的的軟硬件開發(fā)工具的使用方法,為以后從事相關(guān)行業(yè)的工作積累了實際工作經(jīng)驗。目前我國的信息行業(yè)發(fā)展迅速,作為主要平面顯示媒介的LED顯示屏的作用也越練越廣泛,相關(guān)的從業(yè)人員也會越來越緊缺。但同時應該清楚的認識到我國的LED技術(shù)雖然發(fā)展迅速但和世界先進水平還有一定的差距。因此此課題不論是對自己的就業(yè)還是對我國LED顯示技術(shù)的發(fā)展都有非常現(xiàn)實與積極的意

15、義。1.2 論文主要容針對設計題目的特點,作者對論文的容和結(jié)構(gòu)將做如下安排:(1) 初步方案的論證和選擇搜集題目的有關(guān)資料,并參照目前通用的設計思想和設計方法擬定幾套設計方案進行分析比較。最終選定了以單片機為核心控制器件,外加譯碼電路和驅(qū)動電路的設計方案。(2)方案實現(xiàn)以設計方案為指導思想選擇合適的器件來實現(xiàn)這一思想,選擇器件時要從功能和電氣特性兩方面來選擇和論證。經(jīng)過對比選擇選定AT89S51單片機為核心控制器件,由串并轉(zhuǎn)換器74LS164和鎖存器74LS373為譯碼電路器件,三極管8550和ULN2803為驅(qū)動電路器件。論文列出了詳細的器件參數(shù)和在系統(tǒng)中的連接使用方法。(3)軟件編寫 根據(jù)

16、硬件特點和設計要求,軟件選用C語言編寫。程序按功能分為靜態(tài)顯示、動態(tài)顯示、通信等幾個功能上相對獨立的模塊。然后按照所劃分的模塊逐個編寫和調(diào)試,最后將獨立的模塊整合起來。(4)結(jié)論設計完成后對設計中所遇到的問題、經(jīng)驗教訓、以與自己的想法進行總結(jié)。第2章 方案論證與選擇2.1 系統(tǒng)硬件方案大多數(shù)的LED顯示屏都在戶外,所以對硬件的質(zhì)量要求非常的高。為方便檢修和維護硬件電路設計時常常采用模塊化的設計方法。硬件的設計采用模塊化設計,既要滿足模塊本身功能又要能夠和整個系統(tǒng)兼容。如圖2-1所示,根據(jù)顯示系統(tǒng)的功能特點確定系統(tǒng)硬件由顯示屏部分,控制部分,通信系統(tǒng)三部分組成。單片機通過通信部分發(fā)送控制指令和顯

17、示容代碼,執(zhí)行顯示指令并將顯示代碼處理后控制顯示部分的顯示容和顯示方式3。通信部分控制部分顯示部分圖2-1 系統(tǒng)硬件組成框圖2.1.1 顯示屏主控制器控制部分是整個系統(tǒng)的核心部分,其功能為發(fā)送數(shù)據(jù)和控制指令處理后控制顯示部分顯示容。其常用的電子設計方法有單片機、DSP、與EDA技術(shù)。幾種設計方法比較各有其特點:(1)單片機單片機是集成了CPU,ROM,RAM和I/ O口的微型計算機。它有很強的接口性能,非常適合于工業(yè)控制,因此又叫微控制器(MCU)。單片機品種齊全,型號多樣 CPU 從8,16,32到64位,多采用RISC 技術(shù),片上I/O非常豐富,有的單片機集成有A/ D,“ 看門狗”,PW

18、M,顯示驅(qū)動,函數(shù)發(fā)生器,鍵盤控制等。它們的價格也高低不等,這樣極滿足了開發(fā)者的選擇自由。除此之外單片機還具有低電壓和低功耗的特點。隨著超大規(guī)模集成電路的發(fā)展,NMOS工藝單片機被CMOS代替,并開始向HMOS 過渡。供電電壓由5V 降到3V,2V甚至到1V,工作電流由mA降至A ,這在便攜式產(chǎn)品有用武之地4。(2)DSP 芯片DSP 又叫數(shù)字信號處理器。顧名思義,DSP主要用于數(shù)字信號處理領(lǐng)域,非常適合高密度,重復運算與大數(shù)據(jù)容量的信號處理。現(xiàn)在已經(jīng)廣泛應用于通信、便攜式計算機和便攜式儀表、雷達、圖像、航空、家用電器、醫(yī)療設備等領(lǐng)域,DSP具有修正的哈佛結(jié)構(gòu),多總線技術(shù)以與流水線結(jié)構(gòu)。將程序

19、與數(shù)據(jù)存儲器分開,使用多總線,取指令和取數(shù)據(jù)同時進行,以與流水線技術(shù),這使得速度有了較大的提高。DSP區(qū)別于一般微處理器的另一重要標志是硬件乘法器以與特殊指令,一般微處理器用軟件實現(xiàn)乘法,逐條執(zhí)行指令,速度慢。而DSP 依靠硬件乘法器單周期完成乘法運算,而且還具有專門的信號處理指令,如TM320 系列的FIRS ,LMS,MACD指令等5。(3)EDAEDA(即Electronic Design Automation) 即電子設計自動化,它是以計算機為工具,在EDA 軟件平臺上,對用硬件描述語言HDL 完成的設計文件自動地邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合與優(yōu)化、邏輯布局布線、邏輯仿真,直

20、至對于特定目標芯片進行適配編譯、邏輯影射和編程下載等。設計者只需用HDL 語言完成系統(tǒng)功能的描述,借助EDA工具就可得到設計結(jié)果,將編譯后的代碼下載到目標芯片就可在硬件上實現(xiàn)。由于FPGA/CPLD可以通過軟件編程對該硬件的結(jié)構(gòu)和工作方式進行重構(gòu),修改軟件程序就相當于改變了硬件,軟件編寫可以采用自頂向下的設計方案,而且可以多個人分工并行工作這樣便縮短了開發(fā)周期和上市時間,有利于在激烈的市場競爭中搶占先機。而且MCU和DSP都是通過串行執(zhí)行指令來實現(xiàn)特定功能,不可避免低速,而FPGA/CPLD則可實現(xiàn)硬件上的并行工作,在實時測控和高速應用領(lǐng)域前景廣闊;另一方面,F(xiàn)PGA/CPLP器件在功能開發(fā)上

21、是軟件實現(xiàn)的,但物理機制卻和純硬件電路一樣,十分可靠。三種設計方式相比較各有優(yōu)點且都能夠?qū)崿F(xiàn)控制功能,但單片機的技術(shù)門檻較低開發(fā)成本也較低非常適合初學者進行學習和鍛煉使用?,F(xiàn)在市場上常用的單片機主要有MCS-51、AVR、ARM、PIC等。其中應用最廣泛的單片機首推Intel的51系列,由于產(chǎn)品硬件結(jié)構(gòu)合理,指令系統(tǒng)規(guī),加之生產(chǎn)歷史“悠久”,有先入為主的優(yōu)勢常作為單片機學習的教材。且51系列的I/O腳的設置和使用非常簡單,當該腳作輸入腳使用時,只須將該腳設置為高電平(復位時,各I/O口均置高電平)。當該腳作輸出腳使用時,則為高電平或低電平均可。所以在控制部分方案的選擇中選定51系列單片機作為控

22、制部分的核心器件。2.1.2 通信系統(tǒng)通信部分要滿足的設計要求就是穩(wěn)定、快速、簡單易實現(xiàn)。計算機數(shù)據(jù)通信主要采用并行通信和串行通信兩種方式。(1)并行通信并行通信時數(shù)據(jù)的各個位同時傳送,可以字或字節(jié)為單位并行進行。并行通信速度快,但用的通信線多、成本高,故不宜進行遠距離通信。(2)串行通信串行通信數(shù)據(jù)是一位一位順序傳送,只用很少幾根通信線,串行傳送的速度低,但傳送的距離長,因此串行適用于長距離而速度要求不高的場合。在串行發(fā)送時,數(shù)據(jù)是一位一位按順序進行的,而計算機部的數(shù)據(jù)是并行的。因此,當計算機向外發(fā)送數(shù)據(jù)時,必須將并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)再發(fā)送。反之,又必須將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)輸入計算機中

23、。這種轉(zhuǎn)換即可以用硬件實現(xiàn)也可以用軟件實現(xiàn)。單由軟件實現(xiàn)會增加CPU負擔,降低其利用率,故目前常采用硬件實現(xiàn)。通用的通用異步接收/發(fā)送器,簡稱UART(UniversalAsynchromousReceeiver/Trabsnitter)是完成這一功能的硬件電路。在單片機芯片中,UART已經(jīng)集成在其中,作為其組成部分,構(gòu)成一個串行口6。 綜上所述,題目設計已經(jīng)選定了單片機為開發(fā)方式而單片機的UART已經(jīng)集成在單片機,所以通信系統(tǒng)選擇串行通信為通信方式。2.1.3 LED點陣顯示屏顯示部分包括了一塊至少可以顯示一個漢字的顯示屏,以與驅(qū)動該顯示屏的驅(qū)動電路。由于單片機的I/O口有限要不能直接用I/

24、O口來驅(qū)動LED顯示屏,所以需要對單片機IO口進行擴展增加單片機并行輸出的能力。LED顯示屏是由一個一個的發(fā)光二極管點陣構(gòu)成的,要構(gòu)成大屏幕的LED顯示屏就需要多個發(fā)光二極管。構(gòu)成LED屏幕的方法有兩種,一是由單個的發(fā)光二極管逐點連接起來,如圖2-2所示;二是選用一些由單個發(fā)光二極管構(gòu)成的LED點陣子模塊構(gòu)成大的LED點陣模塊。目前市場上普遍采用的點陣模塊有8×8、16×16幾種;這兩種屏幕構(gòu)成方法各有有缺點,單個發(fā)光二極管構(gòu)成顯示屏優(yōu)點在于當單個的發(fā)光二極管出現(xiàn)問題時只需更換一個二極管即可,檢修的成本較低,缺點在于連接線路復雜;而點陣模塊構(gòu)成的方法卻正好與之相反,模塊構(gòu)成

25、省約了大量的連線,不過當一個LED出現(xiàn)問題時同在一個模塊的所有LED都必須被更換。這就加大了維修的成本。兩種方法相比較,決定采取模塊構(gòu)成的方法來制作一個LED點陣顯示屏。為了避免模塊的缺點,選擇點陣數(shù)較小的模塊來減小出現(xiàn)這一問題的風險。所以構(gòu)建一個16×16的LED點陣屏選用四塊8×8點陣模塊。圖 2-2 LED點陣圖一個16×16的LED顯示屏行和列各有16支引腳,不能單靠51單片機的端口驅(qū)動所以必須要對單片機的端口個數(shù)進行擴展。經(jīng)常采用的端口擴展方法是用串并轉(zhuǎn)換芯片進行譯碼。常用的串并轉(zhuǎn)換芯片有74LS154(4線-16線譯碼器)、74LS164(8位串并轉(zhuǎn)換

26、器)、74HC595等。51系列單片機端口低電平時,吸入電流可達20mA,具有一定的驅(qū)動能力;而為高電平時,輸出電流僅數(shù)十A甚至更?。娏鲗嶋H上是由腳的上拉電流形成的),基本上沒有驅(qū)動能力,所以單片機不能直接驅(qū)動LED顯示屏顯示。在單片機和顯示屏之間還需要增加以功能放大位目的的驅(qū)動電路7。2.1.4 硬件設計方案最終方案如圖2-3所示,以單片機機作為核心控制器件存儲和處理顯示容,用串行通信的方式將顯示容和控制指令傳輸?shù)絾纹瑱C系統(tǒng),單片機根據(jù)傳輸來的容和指令通過端口譯碼擴展后驅(qū)動4塊8×8LED點陣模塊構(gòu)成的16×16的LED點陣顯示屏。題目將以此方案為指導思想展開具體的硬件

27、電路設計。串行通信單片機譯碼電路顯示驅(qū)動電路16×16LED顯示屏圖2-3 硬件設計方案2.2 系統(tǒng)軟件方案軟件的設計除了滿足設計功能外還必須要滿足易讀寫,方便下載和編譯。設計目標和硬件總體結(jié)構(gòu)確定的情況下,軟件可以分為主程序,顯示子程序,各種特效顯示子程序,通信程序三個主要部分組成。具體結(jié)構(gòu)如圖2-4所示。靜態(tài)顯示程序主程序控制程序特效顯示程序通信程序圖2-4 軟件功能結(jié)構(gòu)框圖軟件的編寫需要借助軟件編輯器和編譯軟件,編譯完成后還需要下載到單片機中執(zhí)行。編寫軟件之前得首先選擇一種合適的語言以與配套的編輯器和編譯軟件。最后還要選擇一款與所選單片機的下載器或下載軟件來把編寫的程序下載到單

28、片機中執(zhí)行。2.2.1 單片機編程語言現(xiàn)在主要運用的單片機編程語言為匯編語言和C語言。兩種語言相比較各有優(yōu)點。匯編語言(Assembly Language)是面向機器的程序設計語言,是一種功能很強的程序設計語言,也是利用計算機所有硬件特性并能直接控制硬件的語言。其具有執(zhí)行速度快,占存空間少等優(yōu)點,但在編寫復雜程序時具有明顯的局限性,匯編語言依賴于具體的機型,不能通用,也不能在不同機型之間移植8。C語言是一種源于編寫UNIX操作系統(tǒng)的語言,它是一種結(jié)構(gòu)化語言,可產(chǎn)生壓縮代碼。C語言結(jié)構(gòu)是以括號 而不是子和特殊符號的語言。C可以進行許多機器級函數(shù)控制而不用匯編語言。與匯編相比,有如下優(yōu)點:對單片機

29、的指令系統(tǒng)不要求了解,僅要求對51的存儲器結(jié)構(gòu)有初步了解;寄存器分配、不同存儲器的尋址與數(shù)據(jù)類型等細節(jié)可由編譯器管理;程序有規(guī)的結(jié)構(gòu),可分為不同的函數(shù)。這種方式可使程序結(jié)構(gòu)化;將可變的選擇與特殊操作組合在一起的能力,改善了程序的可讀性;編程與程序調(diào)試時間顯著縮短,從而提高效率;提供的庫包含許多標準子程序,具有較強的數(shù)據(jù)處理能力;已編好程序可容易的植入新程序,因為它具有方便的模塊化編程技術(shù)。C語言作為一種非常方便的語言而得到廣泛的支持,C語言程序本身并不依賴于機器硬件系統(tǒng),基本上不做修改就可根據(jù)單片機的不同較快地移植過來?;谝陨侠碛蓻Q定采用C語言為該顯示系統(tǒng)的編程語言。2.2.2 系統(tǒng)軟件編譯

30、器介紹C語言編寫的程序并不能被單片機直接執(zhí)行還需要編譯為單片機可執(zhí)行的機器語言。因此在系統(tǒng)軟件設計中,編譯器必不可少。支持MCS51用C語言編程的編譯器主要有兩種:Franklin C51編譯器和KEILC51編譯器。目前在單片機開發(fā)中普遍都是使用KEIL C51來進行編譯。第3章 系統(tǒng)硬件設計3.1 硬件整體設計概述與功能分析顯示系統(tǒng)具體設計主要由通信系統(tǒng),單片機系統(tǒng),譯碼電路,顯示驅(qū)動電路和16×16的點陣屏五部分組成。具體工作流程為:單片機通過通信系統(tǒng)發(fā)送控制指令和顯示代碼容,執(zhí)行控制指令處理顯示代碼將顯示容通過I/O口串行輸出并且控制譯碼電路完成串并轉(zhuǎn)換并行輸出,最后由顯示驅(qū)

31、動電路進行電壓和電流的處理以達到LED顯示屏的顯示電流,電壓要求進而使顯示屏顯示容11。根據(jù)硬件的功能結(jié)構(gòu)圖選取合適器件,器件不但要求能實現(xiàn)所要求的功能還要能兼容至整個系統(tǒng)之中。通過查閱資料和對比最終的硬件原理圖如圖3-1所示。AT89S51電源74LS16474LS16474LS164ULN2803ULN280337374LS37374LS37374LS1648550三極管LED點陣模塊陽極4塊8*8點陣模塊構(gòu)成16*16LED點陣屏LED點陣模塊陰極MAX232圖3-1 硬件原理圖該系統(tǒng)所要實現(xiàn)的功能和要求有以下幾點:(1)LED顯示屏的面積必須滿足至少顯示一個漢字的標準。并且顯示要清晰。

32、(2)驅(qū)動電路要能提供LED顯示所需圍的電壓和電流要求。(3)譯碼電路的高低電平的區(qū)分能力以與譯碼的輸入輸出頻率必須滿足單片機以與驅(qū)動電路的要求。(4)單片機要能夠控制LED顯示屏的顯示,并且端口驅(qū)動能力要足以驅(qū)動譯碼電路。執(zhí)行頻率要能達到掃描顯示的最低要求。(5)單片機由ISP下載線下載程序和供電,可不設立專用供電電源。3.2 控制單元設計控制單元是整個顯示系統(tǒng)的核心,該系統(tǒng)中采用51系列單片機為核心器件,用來發(fā)送控制指令和顯示容,并且直接輸出數(shù)據(jù)通過譯碼電路控制LED顯示屏的顯示容和顯示狀態(tài)。在51系列單片機中選定一款合適的機型來作為控制單元的主控芯片。根據(jù)題目的要求該芯片必須要具有的就是

33、方便的編程能力,因為在軟件設計時方便的程序下載對程序的驗證和編寫非常有用。還有就是為了提高LED顯示屏的掃描速度,單片機的執(zhí)行速度要盡可能的快。根據(jù)這兩點要求,選擇美國ATMEL公司生產(chǎn)的AT89S51為控制單元的主控芯片。3.2.1 AT89S51簡介AT89S51是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機,片含4k bytes的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準8051指令系統(tǒng)與引腳。它集Flash程序存儲器既可在線編程(ISP)也可用傳統(tǒng)方法進行編程與通用8位微處理器于單片芯片中,ATMEL公司的功能強大,

34、低價位AT89S51單片機可提供許多高性價比的應用場合,可靈活應用于各種控制領(lǐng)域。AT989S51具有以下特點:·與MCS-51產(chǎn)品指令系統(tǒng)完全兼容·4k字節(jié)在系統(tǒng)編程(ISP)Flash閃速存儲器·1000次擦寫周期·4.05.5V的工作電壓圍·全靜態(tài)工作模式:0Hz33MHz·三級程序加密鎖·128×8字節(jié)部RAM·32個可編程I/O口線·2個16位定時/計數(shù)器·6個中斷源·全雙工串行UART通道·低功耗空閑和掉電模式·中斷可從空閑模喚醒系統(tǒng)·

35、;看門狗(WDT)與雙數(shù)據(jù)指針·掉電標識和快速編程特性·靈活的在系統(tǒng)編程(ISP字節(jié)或頁寫模式)AT89S51提供以下標準功能:4k字節(jié)Flash閃速存儲器,128字節(jié)部RAM,32個I/O口線,看門狗(WDT),兩個數(shù)據(jù)指針,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片振蕩器與時鐘電路。同時,AT89S51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口與中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位。3.2.2

36、控制系統(tǒng)設計控制電路設計中采用的是單片機系統(tǒng),該系統(tǒng)必須要是工作在一個最小系統(tǒng)(指單片機的可以的最小配置系統(tǒng))。AT89S51的最小系統(tǒng)包括了外界時鐘電路和復位電路,選定一定數(shù)量的IO口作為控制口控制外部的各種器件和數(shù)據(jù)的輸出。根據(jù)功能選擇一定的單片機端口添加外圍的器件,具體電路如圖3-2所示。在該系統(tǒng)中,P1各口主要用作LED顯示數(shù)據(jù)的控制輸出。由于端口的驅(qū)動能力有限所以該端口外接了5K的上拉電阻來提高驅(qū)動能力。其中P1.5P1.6P1.7還復用為ISP下載功能口。具體接法為:P1.0,P1.1,P1.4,P1.5分別接四塊74LS164的A端,向74LS164送入串行數(shù)據(jù)經(jīng)過其轉(zhuǎn)換后并行輸

37、出;P1.2和P1.6分別接列和行的74LS164的CLOCK端,產(chǎn)生移位脈沖是串行數(shù)據(jù)并行輸出;P1.3和P1.7接列和行的CLEAR端,在一組數(shù)據(jù)完成串并轉(zhuǎn)換后清除164芯片中的容轉(zhuǎn)換新的數(shù)據(jù);其中P1.5P1.6P1.7還復用為ISP下載功能口。P2.0接164芯片的使能控制端,當為高電平使允許輸出;P2.2和P2.3接鎖存器74LS373的OE和LE端控制鎖存器的工作狀態(tài)。端口3.0,EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平(接地)。因為沒有擴展外部程序存儲器所以將EA置為高電平。圖3-2 控制部分電路圖AT89S5

38、1單片機的P1在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復用,P2口在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器時,P2口送出高8位地址數(shù)據(jù)。所以P1和P2口留為外部數(shù)據(jù)存儲器和程序存儲器的擴展用,以備部存儲器和程序存儲器不夠用時使用12。3.3 譯碼電路設計譯碼電路的功能是為了解決單片機I/O端口不足。行譯碼所用器件為串并轉(zhuǎn)換器74LS164和鎖存器74LS373。具體電路如圖3-3所示3.3.1 串并轉(zhuǎn)換器74LS164列譯碼采用的是芯片74LS164。如果不采用譯碼電路完全依靠單片機的端口輸出來控制16×16的LED點陣屏顯示,需要32個端

39、口。而采用了譯碼電路后僅僅需要79個端口便可實現(xiàn)控制顯示。大大減少了I/O口的占用數(shù)目,為單片機擴展其他功能預留下來了空間。74LS164為一個8位數(shù)據(jù)的串并轉(zhuǎn)換器。當清除端(CLEAR)為低電平時,輸出端(QAQH)均為低電平。串行數(shù)據(jù)輸入端(A,B)可控制數(shù)據(jù)。當A、B任意一個為低電平,則禁止新數(shù)據(jù)輸入,在時鐘端(CLOCK)脈沖上升沿作用下Q0為低電平。當A、B有一個為高電平,則另一個就允許輸入數(shù)據(jù),并在CLOCK上升沿作用下決定Q0的狀態(tài)。參數(shù)最小值標準值最大值單位高電平輸入電壓2V低電平輸入電壓0.8V高電平輸出電壓2.43.2-V低電平輸出電壓0.20.4V時鐘頻率025MHZ表3

40、-1 74LS164工作參數(shù)這就要求單片機的引腳輸出的高低電平要在芯片的識別圍,由于采用了列選通行傳送顯示代碼的方法所以行譯碼電路上也加上了74L373鎖存芯片。這就要求74LS164芯片的輸出要滿足鎖存芯片的高低電平區(qū)分圍和頻率要求。 圖3-3 行譯碼電路圖3.3.2 鎖存器74L373由于74LS164芯片不具有鎖存功能,所以在74LS164進行八位數(shù)據(jù)的串并轉(zhuǎn)換時,串行數(shù)據(jù)的第一位會從QA依次移位到QH,第二位數(shù)據(jù)會從QA依次移位到QG,依次類推在八位數(shù)據(jù)轉(zhuǎn)換完成之前74LS164芯片的輸出會出現(xiàn)一段時間的亂序輸出,這一結(jié)果會通過驅(qū)動電路表現(xiàn)在顯示屏上。結(jié)果就是顯示屏無序?qū)ㄩW爍,不能顯

41、示所需容。因此在串并轉(zhuǎn)換完成前就需要74LS164的輸出口不與驅(qū)動電路導通。所以選擇鎖存器74LS373來完成這一功能。74LS373為八D鎖存器(3S,鎖存允許輸入有回環(huán)特性)。373為三態(tài)輸出的八D透明鎖存器,共有54/74S373和54/74LS373兩種線路結(jié)構(gòu)形式當三態(tài)允許控制端OE為低電平時,O0O7為正常邏輯狀態(tài),可用來驅(qū)動負載或總線。當OE為高電平時,O0O7呈高阻態(tài),即不驅(qū)動總線,也不為總線的負載,但鎖存器部的邏輯操作不受影響。當鎖存允許端LE為高電平時,O隨數(shù)據(jù)D而變。當LE為低電平時,O被鎖存在已建立的數(shù)據(jù)電平。參數(shù)最小值額定值最大值單位電源電壓4.7555.25V輸入高

42、電平電壓2V輸入低電平電壓0.8V輸出高電平電壓2.6mA輸出低電平電壓24mA表3-2 74LS373工作參數(shù)表由表與表比較可以看出,74LS164的輸出條件與74LS373的輸入條件相匹配,理論上可以實現(xiàn)鎖存器對譯碼器的數(shù)據(jù)鎖存。3.4 驅(qū)動電路設計3.4.1 行驅(qū)動電路設計發(fā)光二極管,LED(Light Emitting Diodes),即是在在某些半導體材料的PN結(jié)中,注入的少數(shù)載流子與多數(shù)載流子復合時會把多余的能量以光的形式釋放出來,從而把電能直接轉(zhuǎn)換為光能。PN結(jié)加反向電壓,少數(shù)載流子難以注入,故不發(fā)光。這種利用注入式電致發(fā)光原理制作的二極管叫發(fā)光二極管,通稱LED。8550為PN

43、P型三極管,發(fā)射極e接5V電源,基極接譯碼信號輸出端,集電極接輸出驅(qū)動LED點陣屏。當譯碼器端口輸出為低電平時,發(fā)射極與基極電勢差為5V基極中帶負電的電子越過PN結(jié)擴散到發(fā)射區(qū)。發(fā)射極產(chǎn)生和電子擴散方向相反的電流,由于基極電子大量擴散到發(fā)射極集電極電子擴散到基極中形成了電流。當譯碼器端口輸出高電平時發(fā)射極與基極之間的電勢差為5V,由于發(fā)射極與基極之間電勢差的減少基極電子向發(fā)射極擴散的電子數(shù)量減少故集電極電流也隨之減少。故8550在驅(qū)動電路中起到提供驅(qū)動電流和選通開關(guān)的作用。3.4.2 列驅(qū)動電路設計列驅(qū)動采用ULN2803。ULN2803是一種高電壓大電流達林頓管陣列部結(jié)構(gòu)如圖,該陣列中的八個

44、NPN達林頓連接晶體管是低邏輯電平數(shù)字電路(如TTL,CMOS或PMOS)和大電流高電壓的燈,繼電器,打印機錘和其他類似負載間的接口的理想器件。廣泛用于計算機,工業(yè)和消費類產(chǎn)品中。所有器件有集電極開路輸出和用于瞬變抑制的續(xù)流箝位二極管。集電極輸出功率可達50V×600mA13。ULN2803作為列驅(qū)動執(zhí)行的是列選的工作,當選通的列輸入高電平時其對應的輸輸出低電平。相對應的輸出取反,并能提供較大的灌電流來吸收行驅(qū)動流出進過顯示屏后的電流。具體電路如圖3-4所示。圖3-4 列驅(qū)動原理圖3.5 通信系統(tǒng)硬件設計AT89S51單片機具有全雙工串行UART通道,支持單片機進行數(shù)據(jù)的串行傳輸。單

45、片機與計算機不能直接相連進行通信必須將RS-232C與TTL電平進行轉(zhuǎn)換14。在通用的電平轉(zhuǎn)換芯片中MAX232系列的芯片以集成度高,單5V電源工作,只需外接5個小電容即可完成RS-232C與TTL電平之間的轉(zhuǎn)換而成為單片機系統(tǒng)中的常用芯片。在該顯示系統(tǒng)中,MAX232為通信系統(tǒng)中最重要的硬件組成部分15。電路如圖3-5所示:圖3-5 串口通信系統(tǒng)電路圖3.6 電源設計在系統(tǒng)中MAX232、74LS164、74LS373、AT89S51都需要5V的供電電壓,在系統(tǒng)開發(fā)過程中可以使用電腦USB供電。在實際的大屏幕LED顯示屏設計中,用電腦USB供電明顯不切實際。此時需要對民用的220V進行降壓整

46、流為5V直流電壓為顯示系統(tǒng)供電。電路圖如圖3-6所示。圖3-6 電源原理圖如圖所示,用220V轉(zhuǎn)12V的變壓器進行降壓后再通過一個橋式整流電路將交流電整流為直流電。最后通過5V三端穩(wěn)壓模塊LM7805得出穩(wěn)定的5V輸出。3.7 級連大屏幕LED顯示屏要實現(xiàn)LED的大屏幕顯示主要采用部譯碼器級連和多個單片機系統(tǒng)級連的方法。譯碼器級連如圖3-7所示將第1個74LS164的Q7端接第2個74LS164的A端,將第2個74LS164的Q7端接第3個74LS164的A端,如此炮制當N塊74LS164相級連時就變?yōu)橐粋€串行輸入7×N口輸出的串并轉(zhuǎn)換器。這種級連的優(yōu)點在于一塊單片機可以同時控制更多

47、的LED點陣顯示屏,且74LS164的價格低廉整體成本得到了降低。但是這種級連方法也存在一定的缺點,51系列的單片機的晶振頻率不高74LS164級連過多會增加一次掃描的時間從而導致顯示出現(xiàn)閃爍。從端口輸出的顯示數(shù)據(jù)的顯示也要作出相應的改變。圖3-7 74LSL64級連構(gòu)建大屏幕LED顯示屏的另一種方法是將以較小的LED顯示系統(tǒng)做為模塊進行級連。由獨立的LED顯示系統(tǒng)組成一個大的LED顯示系統(tǒng)。其中各子顯示系統(tǒng)之間在功能和控制上都是相互獨立的,將一幅大屏幕畫面拆分為幾塊小畫面再分別送入到各子系統(tǒng)中,各子系統(tǒng)同步顯示便可以得到一幅大的畫面。使用這種級連的辦法可以避免51單片機晶振頻率低的弱點,更容

48、易實現(xiàn)大屏幕的顯示。但這種方法仍然存在難點,一是各獨立的子系統(tǒng)的通信和協(xié)調(diào)性要求更高了,如果要實現(xiàn)顯示容的實時性必須需要不斷更新顯示容則增加了通信數(shù)據(jù)量,逐個的單片機傳送數(shù)據(jù)也會影響整個畫面的更新速度;二是成本提高了。在實際應用常采用部擴展和外部級連聯(lián)合使用的方法來構(gòu)建大屏幕LED顯示屏幕。即增加單個顯示系統(tǒng)顯示屏幕大小的同時又將單個的顯示系統(tǒng)級連。詳細硬件原理圖見附錄1。第4章 系統(tǒng)軟件設計4.1 程序設計系統(tǒng)軟件采用C語言編寫,按照模塊化的設計思路設計。首先分析程序所要實現(xiàn)的功能,程序要實現(xiàn)串口通信,靜態(tài)顯示,動態(tài)顯示三大功能。其功能結(jié)構(gòu)如圖2-4所示。通信程序接收數(shù)據(jù),交給主程序處理再通

49、過控制程序選擇不同的顯示程序進行顯示。主程序的工作流程如圖4-1所示:中斷開始R1=1?起始位?接收顯示數(shù)據(jù)與控制命令將顯示數(shù)據(jù)移入顯示數(shù)組將控制命令賦值給控制字符中斷返回開始系統(tǒng)初始從顯示數(shù)組讀取數(shù)據(jù)到顯示寄存讀取顯示控制命令選擇顯示調(diào)用相應顯示程序圖4-1 主程序流程圖程序開始時首先必須對單片機進行初始化,其中初始化的容包括:中斷優(yōu)先級的設定,中斷初始化,串行通信時通信方式的選擇和波特率的設定,各IO口功能的設定等。初始化完成后部中斷源由按鍵的電平變化觸發(fā),外部中斷主要功能是選擇LED點陣顯示屏的控制程序進入待機狀態(tài)等待中斷的發(fā)生,該程序中主要用到了兩個外部中斷源和串行中斷。外方式。串行中

50、斷包括發(fā)送中斷和接收中斷都是由軟件觸發(fā)。中斷產(chǎn)生后由預先初始化時設定跳轉(zhuǎn)執(zhí)行中斷子程序。中斷程序設定了LED點陣顯示屏所要顯示的容和顯示的方式,最后執(zhí)行的是各種顯示程序。按照設定的方式和容顯示出所需要的容。4.2 顯示程序的設計4.2.1 LED顯示屏的顯示方式LED點陣屏顯示方式主要由靜態(tài)顯示和動態(tài)掃描顯示兩種。對靜態(tài)顯示來說,每一個發(fā)光二極管都需要一套驅(qū)動電路,一幀畫面輸入以后便可一勞永逸地顯示,除非我們改變了顯示容,需要重新輸出新的點陣數(shù)據(jù)這種方式系統(tǒng)原理相對簡單一些,但所需的譯碼驅(qū)動裝量很多,引線多而繁雜,不便于大屏幕的制造,成本高,其可靠性也較低另一種動態(tài)掃描顯示是把整個LED屏幕分

51、成若干部分,每一幅畫面的顯示是顯示完一部分后,又顯示第二部分直到顯示完最后一部分又重新開始顯示第一部分,重復循環(huán)進行在重復掃描速度足夠快的情況下,我們看到的就是一幅穩(wěn)定的畫面也就是說采用動態(tài)掃描顯示需要不斷進行畫面的刷新在這種方式下其顯示驅(qū)動電路可重復利用,引線也大大減少,從而使硬件成本降低,且屏幕上的發(fā)光二極管輪流發(fā)光,使用時的耗電量大大降低大屏幕的制造、維護要容易許多,可靠性也增加了兩種顯示方式的比較再結(jié)合51單片機IO口數(shù)量有限的原因決定采用動態(tài)掃描的方式進行顯示。動態(tài)掃描分為行掃描和列掃描兩種方式區(qū)別在于選通端和數(shù)據(jù)輸入端分別是行還是列。在該顯示系統(tǒng)中掃描顯示的工作原理如圖4-2所示,

52、先選通列然后再從行送入對應列的數(shù)據(jù),這樣從第1列到第16列循環(huán)往復,只要切換的速度足夠的快利用人眼的延時特性就可以看見一幅穩(wěn)定的畫面。從數(shù)據(jù)中讀取第1列對應的行數(shù)據(jù)從數(shù)據(jù)中讀取第16列對應的行數(shù)據(jù)從數(shù)據(jù)中讀取第2列對應的行數(shù)據(jù)選通第1列選通第2列選通第16列16*16LED16*16LED16*16LED選通LED第1列選通LED第2列選通LED第16列按數(shù)據(jù)導通相應行按數(shù)據(jù)導通相應行按數(shù)據(jù)導通相應行讀取所需要顯示的數(shù)據(jù)至顯示寄存器圖4-2 掃描顯示程序原理圖4.2.2 點陣數(shù)據(jù)表達方式該顯示系統(tǒng)的顯示數(shù)據(jù)采取縱向取模方向正向的數(shù)據(jù)存儲方式如圖4-3, 圖4-3 點陣數(shù)據(jù)原理圖 即數(shù)據(jù)是縱向的

53、,一個像素對應一個位。8個像素對應一個字節(jié),字節(jié)的位順序是上高下低,比如從上到下8個點的狀態(tài)是“*-*-”(*為黑點,-為白點),則轉(zhuǎn)換的字模數(shù)據(jù)是0x82(B1000_0010)。如圖(4-3)所示,一幅16×16的點陣畫面點陣數(shù)據(jù)按照B1B2B3B31B32存儲。所以一幅畫面的數(shù)據(jù)量為32字節(jié)。畫面顯示時選通的第i列對應的數(shù)組元素為第i和i+16個元素16。4.2.3 顯示程序的設計顯示程序分為靜態(tài)顯示程序、左移顯示、右移顯示、上移顯示、下移顯示五種種顯示方式。其中上下左右移動程序都調(diào)用了靜態(tài)顯示程序為子程序。靜態(tài)顯示程序流程圖如圖4-4所示:開始初始化讀取顯示數(shù)依次選通列,行7

54、4LS164的CLOCK端置低,鎖存器禁止輸出對應行數(shù)組元素與0X01相與,相與結(jié)果寫入單片機端口輸出右移次數(shù)是否為8?鎖存器允許輸出Y圖4-4 靜態(tài)顯示程序流程圖顯示采用的是列掃描的顯示方式,選通一列后按照列與數(shù)據(jù)元素的對應關(guān)系第i列對應的行數(shù)據(jù)為數(shù)組中的第i和第i+16個元素。將對應元素的由低至高位依次從端口輸出具體做法為將元素向右邏輯移位后再與0X01相與,所得結(jié)果通過單片機端口輸出到串并轉(zhuǎn)換器的A端,鎖存在鎖存器里完成一列數(shù)據(jù)移位后再將其輸出。如此依次循環(huán)選通各列來顯示所需畫面17。開始讀入顯示數(shù)組顯示顯示數(shù)組元素在數(shù)組中的位置左/右移一位移動次數(shù)是否是16YN開始讀入顯示數(shù)組顯示顯示

55、數(shù)組元素在數(shù)組中的位置前/后移一位移動次數(shù)是否是16NY圖4-5 左右移/上下移程序流程圖動態(tài)顯示程序流程如圖4-5所示,根據(jù)顯示數(shù)據(jù)的存儲原理通過改變實際LED列與數(shù)據(jù)邏輯列的方法來實現(xiàn)程序的左右移動。顯示數(shù)據(jù)與列的對應關(guān)系為:第i列對應的數(shù)據(jù)為數(shù)組中i和第2×i個數(shù)據(jù)。所以當ULN2803選通時,而送入后一列的數(shù)據(jù)則相當于畫面左移移位,同理送入前一列數(shù)據(jù)相當于右移一位。如此循環(huán)則產(chǎn)生一幅穩(wěn)定運動的畫面。 顯示數(shù)組中,第1至16個元素的第8至第1位LED顯示屏中的第1至第8行。同理第17至32個元素的第8至第1位LED顯示屏中的第9至第16行。所以將元素數(shù)據(jù)進行邏輯位移便能產(chǎn)生上下移動的效果18。4.3 通信程序的設計系統(tǒng)采用串行中斷的方式進行通信。MCS-51單片機的五個中斷源兩種類型:一類是外部中斷源;另一類是部中斷源,包括兩個定時器/計數(shù)器(T0和T1)的溢出中斷和串行口的接收和發(fā)送中斷。MCS-51單片機設置了4個專用寄存器用于中斷控制,分別為定時器控制寄存器(TCON),串行口中斷控制器(SCON),中斷允許控制寄存器(IE),中斷優(yōu)先級控制寄存器(IP)。編程時通過設置其狀態(tài)來管理中斷系統(tǒng)。在編輯中斷程序時首先是將中斷控制寄存器(IE)初始化。其控制位分布如表。EA為中斷允許總控制位,EA=1時CPU開發(fā)中斷

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論