單片機課程設(shè)計——16x16LED滾動顯示_第1頁
單片機課程設(shè)計——16x16LED滾動顯示_第2頁
單片機課程設(shè)計——16x16LED滾動顯示_第3頁
單片機課程設(shè)計——16x16LED滾動顯示_第4頁
單片機課程設(shè)計——16x16LED滾動顯示_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、16x16LED滾動顯示 小組成員:小組成員: 設(shè)計時間:2014年12月指導老師:設(shè)計概要 本設(shè)計使用AT89C55系列高速單片機作為主控制模塊,利用簡單 的外圍電路來驅(qū)動1616的點陣LED顯示屏。利用AT89C55系列高速單片機本身強大的功能,可以很方便的實現(xiàn)單片機與PC機間的數(shù)據(jù)傳輸及存儲,并能利用軟件方便的進行顯示內(nèi)容的多樣變化,另一方面點陣顯示屏廣泛的應用于醫(yī)院、機場、銀行等公共場所,所以本設(shè)計具有很強的現(xiàn)實應用性。 本LED顯示屏能夠以動態(tài)掃描的方式同時顯示4個88點陣漢字,并能通過上位機軟件修改顯示內(nèi)容和顯示效果等等。把字符內(nèi)碼存儲在空閑的單片機程序存儲器空間,使本LED顯示系

2、統(tǒng)能掉電存儲1024個字符。設(shè)計中采用了SPI接口的GB2312標準字庫,支持所有的國標字符和ASCII標準字符的顯示。因為采用串行傳輸方式,使本系統(tǒng)的可擴展性得到提升,便于多個顯示單元的級聯(lián)。 本文從LED的顯示原理入手,詳細闡述了LED動態(tài)顯示的過程,以及硬件電路的設(shè)計、計算和軟件的算法關(guān)鍵詞:LED動態(tài)顯示 AT89C55 點陣漢字顯示 仿真論證設(shè)計 圖文顯示一般有靜態(tài)和動態(tài)顯示兩種方案,靜態(tài)方案雖然設(shè)計簡單,但其使用的管腳太多,如本設(shè)計中1616的點陣共有256個發(fā)光二極管,顯然單片機沒有這么多的端口,如果我采用鎖存器來擴展端口,按8位的鎖存器來計算,1616的點陣需要256/8=32

3、個鎖存器。這個數(shù)字很龐大,因為我們僅僅是1616的點陣,在實際應用中的顯示屏往往要大得多,這樣在鎖存器上花的成本將是一個很龐大的數(shù)字。因此在實際應用中的顯示屏幾乎都不采用這種設(shè)計,而采用另外一種稱為動態(tài)掃描的顯示方法。 動態(tài)掃描的意思簡單地說就是逐行輪流點亮,這樣掃描驅(qū)動電路就可以實現(xiàn)多行(比如16行)的同名列共用一套驅(qū)動器。具體就1616的點陣來說,把所有同1行的發(fā)光管的陽極連在一起,把所有同1列的發(fā)光管的陰極連在一起(共陽極的接法),先送出對應第一行發(fā)光管亮滅的數(shù)據(jù)并鎖存,然后選通第1行使其燃亮一定時間,然后熄滅;再送出第二行的數(shù)據(jù)并鎖存,然后選通第2行使其燃亮相同的時間,然后熄滅;以此類

4、推,第16行之后,又重新燃亮第1行,反復輪回。當這樣輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現(xiàn)象,就能夠看到顯示屏上穩(wěn)定的圖形了。實驗原理 1616掃描LED點陣的工作原理同8位掃描數(shù)碼管類似。它有16個共陰極輸出端口,每個共陰極對應有16個LED顯示燈。所以其掃描譯碼地址需4位信號線。要使16點陣上某個點亮,如第10行第4列的LED點亮,只要讓列選信號為“0100”,從而選中第4列,再給第10行一個高電平,即可點亮該LED。本實驗通過74LS164和74LS595芯片寫入字形,產(chǎn)生掃描信號。為了顯示整個漢字,首先分布好漢字的排列,以行給漢字信息;然后以大于24HZ的頻率掃描列,

5、即每行逐一加高電平,根據(jù)人眼的視覺殘留特性,使之形成整個漢字的顯示。系統(tǒng)框圖AT89C55單片機74LS595列驅(qū)動器7 4行L驅(qū)S動1器6 4 16x16LED點陣硬件設(shè)計一一.主要芯片資料主要芯片資料AT89C55介紹 AT89C55AT89C55為為8 8 位通用微處理器,采用工業(yè)標準的位通用微處理器,采用工業(yè)標準的C51C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc52 8xc52 相同,相同,其主要用于會聚調(diào)整時的功能控制。功能包括對會聚主其主要用于會聚調(diào)整時的功能控制。功能包括對會聚主IC IC 內(nèi)部寄存器、數(shù)據(jù)內(nèi)部寄存器、數(shù)據(jù)RAMRAM及外

6、部接口等功能部件的初始及外部接口等功能部件的初始化,會聚調(diào)整控制,會聚測試圖控制,紅外遙控信號化,會聚調(diào)整控制,會聚測試圖控制,紅外遙控信號IRIR的接收解碼及與主板的接收解碼及與主板CPUCPU通信等。主要管腳有:通信等。主要管腳有:XTAL1XTAL1(19 19 腳)和腳)和XTAL2XTAL2(18 18 腳)為振蕩器輸入輸出端口,腳)為振蕩器輸入輸出端口,外接外接12MHz 12MHz 晶振。晶振。RST/VpdRST/Vpd(9 9 腳)為復位輸入端口,腳)為復位輸入端口,外接電阻電容組成的復位電路。外接電阻電容組成的復位電路。VCCVCC(40 40 腳)和腳)和VSSVSS(2

7、0 20 腳)為供電端口,分別接腳)為供電端口,分別接+5V+5V電源的正負端。電源的正負端。P0P3 P0P3 為可編程通用為可編程通用I/O I/O 腳,其功能用途由軟件定義,腳,其功能用途由軟件定義,在本設(shè)計中,在本設(shè)計中,P0 P0 端口(端口(3239 3239 腳)被定義為腳)被定義為N1 N1 功能控功能控制端口,分別與制端口,分別與N1N1的相應功能管腳相連接,的相應功能管腳相連接,13 13 腳定義腳定義為為IRIR輸入端,輸入端,10 10 腳和腳和1111腳定義為腳定義為I2CI2C總線控制端口,分總線控制端口,分別連接別連接N1N1的的SDASSDAS(1818腳)和腳

8、)和SCLSSCLS(1919腳)端口,腳)端口,12 12 腳、腳、27 27 腳及腳及28 28 腳定義為握手信號功能端口,連接主板腳定義為握手信號功能端口,連接主板CPU CPU 的相應功能端,用于當前制式的檢測及會聚調(diào)整狀態(tài)進的相應功能端,用于當前制式的檢測及會聚調(diào)整狀態(tài)進入的控制功能。入的控制功能。74LS595介紹74595的數(shù)據(jù)端: Q1-Q7:八位并行輸出端,可以直接控制數(shù)碼管的8個段。 Q7:級聯(lián)輸出端。我將它接下一個595的SI端。 DS:串行數(shù)據(jù)輸入端。STcp:存儲寄存器的時鐘脈沖輸入口SHcp:移位寄存器的時鐘脈沖輸入口OE:的非輸出使能端MR:的非芯片復位端74LS

9、164介紹 當清除端(CLEAR)為低電平時,輸出端(QAQH)均為低電平。 串行數(shù)據(jù)輸入端(A,B)可控制數(shù)據(jù)。當 A、B任意一個為 低電平,則禁止新數(shù)據(jù)輸入,在時鐘端(CLOCK)脈沖上升沿作用下Q0 為低電平。當A、B 有一個為高電平,則另一個就允許輸入數(shù)據(jù),并在CLOCK 上升沿作用下決定Q0 的狀態(tài)。 引腳功能: CLOCK :時鐘輸入端 CLEAR: 同步清除輸入端(低電平有效) 1,2 :串行數(shù)據(jù)輸入端 Q8Q15: 輸出端 1616LED點陣顯示制作 以UCDOS中文宋體字庫為例,每一個字由16行16列的點陣組成顯示。即國家標準漢字庫中的每一個字均由256點陣來表示。我們可以把

10、每一個點理解為一個像素,而把每一個字的字形理解為一幅圖像。事實上這個漢字屏不僅可以顯示漢字,也可以顯示在256像素范圍內(nèi)的任何圖形。這里我們以“魏”字說明,如下圖所示:圖為字模提取軟件提取16x16LED漢字顯示代碼系統(tǒng)主程序流程圖開始系統(tǒng)初始化左滾屏顯示效果上滾屏顯示效果右滾屏顯示效果下滾屏顯示效果行驅(qū)動器列驅(qū)動器總電路連線圖用4個88LED點陣構(gòu)成1616LED點陣 Proteus中只有57和88等LED點陣,并沒有1616LED點陣,而在實際應用中,要良好地顯示一個漢字,則至少需要1616點陣。下面我們就首先介紹使用88點陣構(gòu)建1616點陣的方法,并構(gòu)建一塊1616LED點陣,用于本例的

11、顯示任務(wù)。 從Proteus的元件庫中找到“MATRIX-8X8-RED”元器件,并將四塊該元器件放入Proteus文檔區(qū)編輯窗口中。此時需要注意,如果該元器件保持初始的位置(沒有轉(zhuǎn)動方向),我們要首先將其左轉(zhuǎn)90,使其水平放置,那么此時它的左面8個引腳是其行線,右邊8個引腳是其列線(當然,如果你是將右轉(zhuǎn),則右邊8個引腳是行線)。然后我們將四個元器件對應的行線和列線分別進行連接,使每一條行線引腳接一行16個LED,列線也相同。并注意要將行線和列線引出一定長度的引腳,以便下面我們使用。連接好的1616點陣如右圖。實驗結(jié)果實驗電路及連線 電路主要由單片機和一些外部設(shè)備連接而成,利用4個8*8LED

12、顯示組裝成16*16LED顯示,2個R*8排電阻,一個74HC154組成。該顯示器采用AT89C55單片機作為控制器,12MHz晶振,其中P0口作為字符數(shù)據(jù)輸出口,P2口作為顯示器掃描輸出口,第31管腳(EA)接電源。電路包括單片機、電源電路、時鐘電路、復位電路、驅(qū)動電路和LED點陣電路等。本設(shè)計的核心是利用單片機讀取顯示字型碼,通過驅(qū)動電路對1616LED點陣進行動態(tài)掃描,以實現(xiàn)漢字的滾動顯示。軟件設(shè)計 本軟件要求實現(xiàn)如下要求:漢字要穩(wěn)定、明亮并且文字要以一定速度上升滾動顯示。 顯示屏軟件模塊:初始化程序、主程序、多字滾動、顯示程序、掃描程序。顯示程序的主要功能是向屏體提供顯示數(shù)據(jù),并產(chǎn)生各

13、種控制信號,使屏幕按設(shè)計的要求顯示。軟件設(shè)計中,顯示屏的軟件系統(tǒng)分為兩層;第一層是底層的顯示驅(qū)動程序,第二層是上層的系統(tǒng)應用程序。顯示驅(qū)動程序負責向屏體送顯示數(shù)據(jù),并負責產(chǎn)生行掃描信號和其他控制信號,配合完成LED顯示屏的掃描顯示工作。顯示驅(qū)動器程序由定時器T0中斷程序?qū)崿F(xiàn)。系統(tǒng)應用程序完成系統(tǒng)環(huán)境設(shè)置(初始化)、顯示效果處理等工作,由主程序來實現(xiàn)。 顯示驅(qū)動程序在進入中斷后首先要對定時器T0重新賦初值,以保證顯示屏刷新率的穩(wěn)定,1/16掃描顯示屏的刷新率(幀頻)計算公式如下: 刷頻率(幀頻)=1/16T0溢=1/16f/12(65536-t) 其中f位晶振頻率,t為定時器T0初值(工作在16

14、位定時器模式)。 然后顯示驅(qū)動程序查詢當前燃亮的行號,從顯示緩存區(qū)內(nèi)讀取下一行的顯示數(shù)據(jù),并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數(shù)據(jù)的時候產(chǎn)生拖尾現(xiàn)象,驅(qū)動程序先要關(guān)閉顯示屏,即消隱,等顯示數(shù)據(jù)打入輸出鎖存器并鎖存,然后再輸出新的行號,重新打開顯示。系統(tǒng)調(diào)試 軟件調(diào)試:軟件為網(wǎng)絡(luò)所提供,其原理在上一模塊已作說明,在這里再作說明,軟件經(jīng)調(diào)試無誤,直接將其下再到單片機中,看是否達到所要的效果軟件部分是先參考書上的例子,然后自己根據(jù)硬件電路寫程序,由于以前所學是單片機匯編語言,所以這個系統(tǒng)在編寫程序過程中都采用匯編語言編寫。剛剛開始,編寫不會一次性通過,經(jīng)過仔細分析修改最后編譯成功。但是,在實際寫如C55中,LED顯示屏出現(xiàn)各種各樣的亂碼,通過再次認真仔細分析多次修改程序后,程序能夠正常運行。 硬件調(diào)試:在對各個硬件模塊進行調(diào)試時,要保證軟件正確情況下去測試軟 件,要不然會發(fā)生錯誤,硬件仿真前要認真檢驗點陣及線路的好壞,檢查無誤后才下載主程序。結(jié)束語 本文設(shè)計的1616的點陣LED圖文顯示屏,能夠在目測條件下LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示的圖形和文字較穩(wěn)定、清晰。圖形或文字向上滾動顯示。本系統(tǒng)具有硬件少,結(jié)構(gòu)簡單,容易實現(xiàn),性能穩(wěn)定可靠,成本低等特點。 在此次設(shè)計中,我得到以下體會: 1.在這次點陣設(shè)計的過程讓我進一步熟悉KEIL及Prote

溫馨提示

  • 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

提交評論