×16點陣LED電子顯示屏的設計-機器人創(chuàng)新設計.docx
《×16點陣LED電子顯示屏的設計-機器人創(chuàng)新設計.docx》由會員分享,可在線閱讀,更多相關《×16點陣LED電子顯示屏的設計-機器人創(chuàng)新設計.docx(17頁珍藏版)》請在裝配圖網上搜索。
機器人創(chuàng)新設計 課程設計報告書 題目:1616點陣LED電子顯示屏的設計 姓名:張津 學號:1613010320 專業(yè):國際經濟與貿易 指導老師:于大泳 設計時間:2017年3月 管理學院 目錄 1. 引言...............................................3 1.1 設計意義................................................3 1.2 系統(tǒng)功能要求............................................3 2. 方案設計...........................................4 3. 硬件設計...........................................5 4. 軟件設計...........................................8 5. 系統(tǒng)調試...........................................9 6. 設計總結..........................................11 7. 附錄A.:源程序...................................11 8. 附錄B.:作品實物照片.............................16 9. 參考文獻..........................................17 1616點陣LED電子顯示屏的設計 1. 引言 1.1 設計意義 目前廣告牌具有顯示內容豐富、信息量大、信息更換速度快等特點。因此傳統(tǒng)的LED顯示屏控制系統(tǒng)已經越來越不能滿足現(xiàn)代廣告宣傳業(yè)的需要。而利用PC機通信技術控制LED顯示屏,則具有顯示內容豐富,信息更換靈活等優(yōu)點。 1.2 系統(tǒng)功能要求 本設計是一1616點陣LED電子顯示屏的設計。整機以40腳單片機AT89C51為核心,通過該芯片控制列驅動器74HC595來驅動顯示屏顯示。該電子顯示屏可以顯示各種文字或單色圖像,全屏能顯示1個漢字。顯示可以采用動態(tài)顯示,使得圖形或文字能夠實現(xiàn)靜止、移入移出等多種顯示方式。開關控制顯示“礦大電氣五班”、“電子綜合設計”的字幕。 同時還要實現(xiàn)的功能:5V的電壓輸入,時鐘電路的設置,復位電路的設置,單片機給74HC154芯片同時給E1和E2低電平,74LS154才能正常的工作。例如如果想使左上角LED點亮,則Y0=1,X0=0即可。應用時限流電阻可以放在X軸或Y,16*16LED點陣如圖1.2.1所示。 圖1.2.1 2.方案設計 16X16點陣LED工作原理說明 : 16X16點陣共需要256個發(fā)光二極管組成,且每個發(fā)光二極管是放置在行線和列線的交叉點上,當對應的某一列置1電平,某一行置0電平,則相應的二極管就亮;因此要實現(xiàn)一根柱形的亮法,對應的一列為一根豎柱,或者對應的一行為一根橫柱,因此實現(xiàn)柱的亮的方法如下所述:一根豎柱:對應的列置1,而行則采用掃描的方法來實現(xiàn)。 一根橫柱:對應的行置0,而列則采用掃描的方法來實現(xiàn)。需要實現(xiàn)的功能如下圖流程圖圖2.2所示 圖2.2 本電路使用AT89C51實現(xiàn)行驅動,對顯示模塊從上至下的掃描,用74HC154和三極管實現(xiàn)列驅動,對顯示模塊從左至右的掃描,然后顯示字符。在中規(guī)模集成電路中譯碼器有幾種型號,使用最廣的通常是74HC154譯碼器,74HC154是一款高速CMOS器件,74HC154引腳兼容低功耗肖特基TTL(LSTTL)系列。 2. 硬件設計 3.1 單片機系統(tǒng)及外圍電路 3.1.1 單片機的選擇 本設計選用了AT89C51單片機作控制3.1.2 AT89C51芯片介紹 概述:AT89C51為40 腳雙列直插封裝的8 位通用微處理器,采用工業(yè)標準的C51內核,在內部功能及管腳排布上與通用的8xc52 相同,其主要用于會聚調整時的功能控制。功能包括對會聚主IC 內部寄存器、數據RAM及外部接口等功能部件的初始化,會聚調整控制,會聚測試圖控制,紅外遙控信號IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1(19 腳)和XTAL2(18 腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST(9 腳)為復位輸入端口,外接電阻電容組成的復位電路。VCC(40 腳)和VSS(20 腳)為供電端口,分別接+5V電源的正負端。P0~P3 為可編程通用I/O 腳,其功能用途由軟件定義,在本設計中,P0 端口(32~39 腳)被定義為N1 功能控制端口,分別與N1的相應功能管腳相連接,13 腳定義為IR輸入端,10 腳和11腳定義為I2C總線控制端口,分別連接N1的SDAS(18腳)和SCLS(19腳)端口,12 腳、27 腳及28 腳定義為握手信號功能端口,連接主板CPU 的相應功能端,用于當前制式的檢測及會聚調整狀態(tài)進入的控制功能。AT89C51的引腳圖如下圖3.1所示: 圖 3.1 3.1.3 單片機系統(tǒng)外圍電路 單片機外圍電路一般有兩塊:時鐘電路(如圖3.1.3)和復位電路(3.1.4) 時鐘電路由一個晶振和兩個小電容組成,用來產生時鐘頻率。 復位電路由一個電阻、按鍵和一個電容組成,用來產生復位信號,使單片機上電的時候復位。 圖 3.1.3 AT89C52單片機芯片內部有一個反向放大器構成的振蕩器,XTAL1和XTAL2分別為振蕩器電路的輸入端和輸出端,時鐘可由內部和外部生成,在XTAL1和XTAL2引腳上外接定時元件,內部振蕩電路就會產生自激振蕩。系統(tǒng)采用的定時元件為石英晶體和電容組成的并聯(lián)諧振回路。晶振頻率選擇12MHz,C1、成的電容值取22PF,電容的大小頻率起微調的作用 圖3.1.4 單片機有多種復位電路,本系統(tǒng)采用電平式開關復位與上電復位方式,當上電時,C1相當于短路,使單片機復位,在正常工作時,按下復位時單片機復位。在有時碰到干擾時會造成錯誤復位,但是大多數條件下,不會出現(xiàn)單片機錯誤復位,而可能會引起內部某些寄存器錯誤復位,在復位端加一個去耦電容,則會得 到很好的效果。 3.2 驅動電路 3.2.1 74HC154芯片簡介 74HC154譯碼器可接受4位高有效二進制地址輸入,并提供16個互斥的低有效輸出。74HC154的兩個輸入使能門電路可用于譯碼器選通,以消除輸出端上的通常譯碼“假信號”,也可用于譯碼器擴展。該使能門電路包含兩個“邏輯與”輸入,必須置為低以便使能輸出端。任選一個使能輸入端作為數據輸入,74HC154可充當一個1-16的多路分配器。當其余的使能輸入端置低時,地址輸出將會跟隨應用的狀態(tài)。 3.2.2 驅動電路的構成 本設計的驅動電路由三極管的集電極輸出給點陣顯示屏,使其足夠亮。其驅動電壓為5V。行驅動由P0口列驅動電路如圖3.3.2所示: 圖 3.2.2 3.3 16*16LED顯示屏電路和原理 16*16LED顯示屏電路在proteus仿真中由四個8*8LED點陣組成的,其中二極管的正極控制器也就是AT89C51,負極接譯碼器也就是74HC154。顯示屏可以顯示字符、漢字、動畫等任何圖形。該電路充分利用了單片機的I/O口資源.使整機硬件達到最簡。 16*16點陣的原理:點陣LED掃描法介紹點陣LED一般采用掃描式顯示,實際運用分為三種方式:(1)點掃描;(2)行掃描;(3)列掃描。若使用第一種方式,其掃描頻率必須大于1664=1024Hz,周期小于1ms即可。電路如圖3.3所示: 圖 3.3 3.4 電源電路 本設計采用電源線直接從家用電路中接入電源,經變壓為5V,為電路供電。 3. 軟件設計 本軟件要求實現(xiàn)如下要求:漢字要穩(wěn)定、明亮并且文字要以一定速度上升滾動顯示。 顯示屏軟件模塊:初始化程序、主程序、多字滾動、顯示程序、掃描程序。顯示程序的主要功能是向屏體提供顯示數據,并產生各種控制信號,使屏幕按設計的要求顯示。軟件設計中,顯示屏的軟件系統(tǒng)分為兩層;第一層是底層的顯示驅動程序,第二層是上層的系統(tǒng)應用程序。顯示驅動程序負責向屏體送顯示數據,并負責產生行掃描信號和其他控制信號,配合完成LED顯示屏的掃描顯示工作。顯示驅動器程序由定時器T0中斷程序實現(xiàn)。系統(tǒng)應用程序完成系統(tǒng)環(huán)境設置(初始化)、顯示效果處理等工作,由主程序來實現(xiàn)。 4.1顯示驅動程序 顯示驅動程序在進入中斷后首先要對定時器T0重新賦初值,以保證顯示屏刷新率的穩(wěn)定,1/16掃描顯示屏的刷新率(幀頻)計算公式如下: 刷頻率(幀頻)=1/16T0溢=1/16f/12(65536-t) 其中f位晶振頻率,t為定時器T0初值(工作在16位定時器模式)。 然后顯示驅動程序查詢當前燃亮的行號,從顯示緩存區(qū)內讀取下一行的顯示數據,并通過串口發(fā)送給移位寄存器。為消除在切換行顯示數據的時候產生拖尾現(xiàn)象,驅動程序先要關閉顯示屏,即消隱,等顯示數據打入輸出鎖存器并鎖存,然后再輸出新的行號,重新打開顯示。圖六為顯示驅動程序(顯示屏掃描函數)流程圖 進入中斷 消 隱 定時器賦初值 切換顯示數據 讀取行號并增加1 發(fā)送新行號,打開顯示 送新行顯示數據 退出中斷 圖4.1.1 4.2系統(tǒng)主程序 本設計的系統(tǒng)軟件能使系統(tǒng)LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。 系統(tǒng)主程序開始以后,首先是對系統(tǒng)環(huán)境初始化,包括設置串口、定時器、中斷和端口;然后以“卷簾出”效果顯示圖形,停留約幾秒;接著向上滾動顯示“--------”這幾個漢字及一個圖形,然后以“卷簾入”效果隱去圖形。由于單片機沒有停機指令,所以可以設置系統(tǒng)程序不斷的循環(huán)執(zhí)行上述顯示效果。 單元顯示屏可以接收來自控制器(主控制電路板)或上一級顯示單元模塊傳輸下來的數據信息和命令信息,并可將這些數據信息和命令信息不經任何變化地再傳送到下一級顯示模塊單元中,因此顯示板可擴展至更多的顯示單元,用于顯示更多的顯示內容。如果想改變些事內容,先用字模產生字代碼,將用這段代碼覆蓋原來的代碼,即可顯示你想要的內容。 圖4.2.1是系統(tǒng)主程序流程圖。 開始 系統(tǒng)初始化 “卷簾出”顯示效果 “上滾屏”顯示效果 “卷簾入”顯示效果 圖4.2.1 5.系統(tǒng)調試 u 調試主要分為硬件調試和軟件調試: 硬件調試:在焊接電路板的時候,應該從最基本的最小系統(tǒng)開始,分模塊,逐個進行焊接測試。在對各個硬件模塊進行測試時,要保證軟件正確的情況下去測試硬件,要不然發(fā)生錯誤時,不知道到底是哪一方出錯了。當然,在設計的過程中也存在著失誤和不足,在調試中進行修改了。焊接完成后,檢驗點陣、及線路的好壞:燒進檢驗程序,點陣將自第一排向下(上)點亮。檢驗無異常,下載主程序 u 軟件調試:軟件為老師所提供提供,其原理在上一模塊以作說明,在這里 再作說明,軟件經調試無誤,直接將其下再到單片機中,看是否達到所要的效果 軟件部分是先參考書上的例子,然后自己根據硬件電路寫程序, 由于以前所學是單片機匯編語言,所以這個系統(tǒng)在編寫程序過程中都采用匯編語言編寫。剛剛開始,編寫不會一次性通過,經過仔細分析修改最后編譯成功。但是,在實際寫如S51中,LED顯示屏出現(xiàn)各種各樣的亂碼,通過再次認真仔細分析多次修改程序后,程序能夠正常運行 6. 設計總結 本文設計的點陣LED圖文顯示屏,能夠在目測條件下LED顯示屏各點亮度均勻、充足,可顯 示 圖 形 和 文 字,顯 示 的 圖 形 和 文 字 較 穩(wěn) 定、清 晰。在本次設計過程中,我們得到以下體會:通過兩個星期和大家的一起的努力,我收獲了很多,本設計是用四個8x8的點陣顯示模塊組成的16x16的點陣LED圖文顯示屏,能夠在目測條件下LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。本系統(tǒng)具有硬件少,結構簡單,容易實現(xiàn),性能穩(wěn)定可靠,成本低等特點。 總結本文的研究工作,主要做了下面幾點工作: 一、通過查閱大量的相關資料,詳細了解了LED的發(fā)光原理和LED顯示屏的原理,了解了LED的現(xiàn)狀,清楚地了解了LED顯示屏與其它顯示屏相比較有那些優(yōu)點,明確了研究目標。并且通過對單片機資料的查閱和應用,更進一步增加了對單片機知識的理解和運用能力。并證實了自己的思路:“查資料→思考總結→運用→找出差錯,再查資料和向別人詢問→再次運用”的正確性。 二,本文設計的LED顯示屏能夠實現(xiàn)在目測條件下LED顯示屏各點亮度均勻、充足,可顯示圖形和文字,顯示圖形和文字應穩(wěn)定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。 三,本文列出了系統(tǒng)具體的硬件設計方案,硬件結構電路圖,軟件流程圖和具體C語言程序設計與調試等方面。 四,通過這次課程設計,重新復習并進一步增強了動手的能力,學以致用,把只是運用到實際生活中才是根本目的 總體來說這次的課程設計不算成功,沒達到預想的目的:但學到了知識,提高了能力,完成了任務。有點缺憾是時間有限,實物沒能做成功,不能進一步深入和擴散學習和研究。希望有時間可以對程序和電路圖作更進一步的改進. 7. 附錄A:源程序 *************************************** ; * * ; * 單個16x16的點陣電子屏字符顯示器 * ; * ATA89C52 12MHz晶振 * ; * 2004.2.11 LRM * ; *************************************** ;顯示字用查表法,不占用內存,字符用16x16共陽LED點陣, ;效果:向上滾動顯示5個字,再重復循環(huán)。 ;R1:查表偏址寄存器,B:查表首址,R2:掃描地址(從00~0FH)。 ;R3:滾動顯示時控制移動速度,單字顯示可控制靜止顯示的時間。 ;*************; ;中斷入口程序 ; ;*************; ; ORG 0000H LJMP START ORG 0003H RETI ORG 000BH LJMP INTTO ORG 0013H ERTI ORG 001BH ERTI ORG 0023H RETI ORG 002BH RETI ; ;***********; ;初始化程序; ;***********; ; ; ;***********; ; 主程序 ; ;***********; ; START: MOV 20H,#00H ;清零標志,00H為第16行開始掃描標志,01為1幀 ;掃描結束標志 MOV A,#0FFH ;端口初始化 MOV P1,A MOV P1,A MOV P3,A MOV P0,A CLR P1.6 ;串行寄存器輸入打入輸出控制位 MOV TMOD,#01H ;使用T0做16位定時器,行掃描用。 MOV TH0,#0FCH ;1ms初值(12MHz) MOV TL0,#18H MOV SCON,#00H ;串口0方式傳送顯示字節(jié) MOV IE,#82H ;T0中斷允許,總中斷允許 MOV SP,#70H MAIN: LCALL DISI ;顯示準備,黑屏,1.5s MOV DPTR,#TAB LCALL MOVDISP ;向上滾動顯示一頁(8個字) INC DPH LCALL MOVDISP ;向上滾動顯示一頁(8個字) INC DPH LACLL MOVDISP ;向上滾動顯示一頁(8個字) AJMP MAIN ; ; ;***********************; ; 多字滾動顯示程序 ; ;***********************; ;每次8個字,入口時定義好DPTR值 ; MOVDISP: MOV B,#00H ;向上移動顯示,查表偏值暫存(從00開始) DISLOOP: MOV R3,#07H ;移動速度 DISMOV: MOV R2,00H ;第0行開始 MOV R1,B SETB TR0 ;開掃描(每次一幀) WAITMOV: JBC 01H,DISMOV1 ;標志為1掃描一幀結束(16ms為1幀,每行1ms) AJMP WAITMOV DISMOV1: DJNZ R3,DISMOV ;1幀重復顯示(控制移動速度) INC B ;顯示字的下一行(每行2字節(jié)) INC B MOV A,R1 ;R1為0,8個字顯示完 JZ MOVOUT AJMP DISLOOP MOVOUT: RET ;移動先是結束 ; ; ;****************; ; 單字顯示程序 ; ;****************; ;顯示表中某個字; ;****************; DIS1: MOV R3,#5AH ;靜止顯示時間控制(16ms*#=1.6s) DIS11: MOV R2,#00H ;一幀掃描初始值(行地址從00~0FH) MOV DPTR,#TAB ;取表首址 MOV R1,#00H ;查表偏址(顯示第一個字) SETB TR0 ;開掃描(每次一幀) WAIT11: JBC 01H,DIS111 ;為1,掃描一幀結束 AJMP WAIT11 DIS111: DJNZ R3,DIS11 RET ; ; ;************; ; 掃描程序 ; ;************; ;1ms刷新一次,每行顯示1s INTT0: PUSH ACC MOV TH0,#0FCH ;1ms初值重裝 MOV TL0,#18H JBC 00H,GOEND ;16行掃描標志為1,結束 INC R1 ;取行右邊字節(jié)偏址 MOV A,R1 MOVC A,@A+DPTR ;查表 MOV SBUF,A ;串口0方式發(fā)送 WAIT: JBC TI,GO ;等待發(fā)送完畢 AJMP WAIT1 GO: DEC R1 ;取行左邊字節(jié)偏址 MOV A,R1 MOVC A,@A+DPTR MOV SBUF,A WAIT1: JBC T1,GO1 AJMP WAIT1 GO1: SETB P1.7 ;關行顯示,準備刷新 NOP ;串口寄存器數據穩(wěn)定 SETB P1.6 ;產生上升沿,行數據打入輸出端 NOP NOP CLR P1.6 ;恢復低電平 MOV A,R2 ;修改顯示行地址 ORL A,#0F0H ;修改顯示行地址 MOV R2,A ;修改顯示行地址 MOV A,P1 ;修改顯示行地址 ORL A,#0FH ;修改顯示行地址 ANL A,R2 ;修改顯示行地址 MOV P1,A ;修改完成 CLR P1.7 ;開行顯示 INC R2 ;下一行掃描地址值 INC R1 INC R1 ;下一行數據地址 MOV A,R2 ANL A,#0FH JNZ GO2 SETB 00H ;R2為01H,現(xiàn)為末行掃描,置標志 GO2: POP ACC RETI GOEND: CLR TR0 ;一幀掃描完畢,關掃描 SETB 01H ;一幀掃描完畢,置結束標志 POP ACC RETI ;退出 ; ; ;***************; ; 掃描文字表 ; ;***************; ; TAB:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,00FFH,0FFH,0FFH ;黑屏 DB 0F9H,0BFH,0C7H,0AFH,0F7H,0B7H,0F7H,0B7H,0F7H,0BFH,000H,001H,0F7H,0BFH,0F7H,0B7H ;我 DB 0F1H,0D7H,0C7H,0CFH,037H,0DFH,0F7H,0AFH,0F6H,06DH,0F7H,0F5H,0D7H,0F9H,0EFH,0FDH ; DB 0FFH,007H,0C0H,06FH,0EDH,0EFH,0F6H,0DFH,0C0H,001H,0DDH,0FDH,0BDH,0FFH,0C0H,003H ;愛 DB 0FBH,0FFH,0F8H,00FH,0F3H,0DFH,0F4H,0BFH,0EFH,03FH,09CH,0CFH,073H,0F1H,0CFH,0FBH ; DB 0F7H,0DFH,0F9H,0CFH,0FBH,0BFH,0C0H,007H,0DEH,0F7H,0C0H,007H,0DEH,0F7H,0DEH,0F7H ;單 DB 0C0H,007H,0DEH,0F7H,0FEH,0FFH,000H,001H,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0FEH,0FFH DB 0FFH,0BFH,0EFH,0BFH,0EFH,0BFH,0EFH,0BBH,0E0H,001H,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH ;片 DB 0E0H,00FH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0DFH,0EFH,0DFH,0EFH,0BFH,0EFH,07FH,0FFH DB 0EFH,0FFH,0EFH,007H,0EFH,077H,001H,077H,0EFH,077H,0EFH,077H,0C7H,077H,0CBH,077H ;機 DB 0ABH,077H,0AFH,077H,06EH,0F7H,0EEH,0F5H,0EDH,0F5H,0EDH,0F5H,0EBH,0F9H,0EFH,0FFH ; DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH ;黑屏 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH ; END 8. 附錄B:作品實物圖片 9.參考文獻 [1] 劉欣銘,張廣斌.LED顯示屏技術綜述[J].黑龍江電力,2003, 25(4):294-296. [2] 陽進.基于單片機的LED顯示屏的漢字顯示[J].中國科技信息,2005,(12):112. [3] Mark Nelson著.瀟湘工作室譯.串行通信開發(fā)指南[M].中國水利水電出版社,2002. [4] 王宜懷.單片機原理及其嵌入式應用教程[M].北京希望電子出版社,2002. [5] 韓潤萍,陳小萍.點陣LED顯示屏控制系統(tǒng)[J].微計算機信息,2003,19(10):50-51.- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 16 點陣 LED 電子顯示屏 設計 機器人 創(chuàng)新
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.hcyjhs8.com/p-9263479.html