版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、電氣專業(yè)核心課綜合課程設(shè)計報告題目:液晶顯示設(shè)計與實現(xiàn) 院 系: 機電與自動化學院 專業(yè)班級:電氣工程及其自動化 學生姓名: 學生學號: 指導教師: 徐春燕 (課程設(shè)計時間:2011 年 6 月 20 日2011年7 月8 日)華中科技大學武昌分校目 錄1課程設(shè)計目的32課程設(shè)計題目描述和要求 33課程設(shè)計報告內(nèi)容3元器件選型及總體設(shè)計方案描述 4硬件連接設(shè)計部分 5程序設(shè)計部分 93.4實驗調(diào)試與問題 164總結(jié)16參考文獻 171. 課程設(shè)計的目的掌握單片機應用開發(fā)全套基本技能,明確單片機應用開發(fā)中的要點與難點,掌握電氣工程領(lǐng)域的自動化/智能化控制手段(工具),訓練技能。2課程設(shè)計題目描述
2、和要求液晶顯示設(shè)計與實現(xiàn):要求自制單片機小系統(tǒng)板(或在單片機小系統(tǒng)開發(fā)板上),選定具體一款液晶,在液晶上實現(xiàn)顯示任意中文、英文、數(shù)字或圖形;或進一步實現(xiàn)滾屏,翻屏,閃爍,黑白反顯,漢字倒轉(zhuǎn)等功能。 (1)根據(jù)課題設(shè)計內(nèi)容進行元器件選型、列出元器件清單、自行購買、硬件電路制作與調(diào)試(硬件需帶串口下載功能),并且使用Protell軟件繪制電路原理圖; (2)掌握 Keil或HK-51開發(fā)仿真系統(tǒng),進行軟件編程與調(diào)試;(3)軟件編程選擇Asm或C51語言均可,要求繪制程序流程圖,對所編寫的軟件進行相應的注釋;(4)程序調(diào)試成功后,要求燒錄(固化)到程序存儲器中;(5)完成作品并進行功能驗收,完成課程
3、設(shè)計說明書(列出元器件清單、Protell軟件繪制電路原理3.課程設(shè)計報告內(nèi)容 元器件選型及總體設(shè)計方案描述 (1)元器件選型:武漢恒科電子教儀MCS-51仿真實驗開發(fā)板; STC89C52單片機 RT12232液晶顯示器(2)總體設(shè)計方案描述本實驗系統(tǒng)分為單片機最小系統(tǒng)板和液晶顯示兩部分。單片機最小系統(tǒng)負責接收個人計算機所編輯的文本及內(nèi)容,通過串行接口完成單片機與PC機之間的數(shù)據(jù)傳送,而個人計算機,主要完成顯示內(nèi)容編輯、字模數(shù)據(jù)的查找、顯示程序的發(fā)送(燒寫)等工作。文本編編輯軟件有多種,本次試驗我們選用的是集編輯、編譯、糾錯等多種功能于一體的Keil C。我們先將要顯示的內(nèi)容(包括漢字、中英
4、文字母等)編輯成一個文本文件,然后通過已經(jīng)編寫好的應用程序在特定的字庫中依次搜索到文本文件中的內(nèi)容,并且取出該字符的字模數(shù)據(jù)。整個程序建立好后通過編譯就可以生成一個可燒錄的hex文件存放在PC機的硬盤上,等到需要的時候通過串行通信軟件將該可燒錄文件燒入給液晶顯示系統(tǒng)模塊的單片機中。因此在單片機的選擇上我們選用了STC89C52。顯示系統(tǒng)模塊上電后,單片機小系統(tǒng)就會按照所編輯的固定一步步運行。在其控制下使液晶不斷接收需要顯示字符的字模數(shù)據(jù)。在液晶顯示屏上顯示出內(nèi)容。由于12232比較常見,故本次原則RT12232的液晶顯示器。根椐設(shè)計題目要求選用的是STC89C52單片機芯片和內(nèi)置控制器為RT1
5、2232的液晶顯示屏,總體設(shè)計共分為3個模塊:將在PC機上編譯的可執(zhí)行程序燒錄進單片機的串行燒錄模塊;儲存程序以及處理程序的STC89C52芯片;顯示效果的LCD液晶電路模塊。這3種模塊協(xié)同工作,組成了整個顯示系統(tǒng)。在整個系統(tǒng)中,STC89C52單片機是最重要的核心部件,與其它模塊一起協(xié)作,構(gòu)成了整個顯示系統(tǒng)。而單片機與復位電路,晶振電路,三者一起構(gòu)成了單片機最小系統(tǒng),只有在復位電路,晶振電路相輔助的情況下,單片機才能構(gòu)正常工作。復位電路提供給單片機的復位引腳一個確定的信號,在單片機在死機,程序跑偏等情況下,可以通過復位電路使單片機恢復到初始狀態(tài)重新開始工作。在單片機正常運行時可以保證單片機不
6、會誤復位。晶振電路提供給單片機一個固定的時鐘頻率。保證整個單片機各單元間協(xié)調(diào)統(tǒng)一地運行。串口燒錄電路是單片機與PC機之間通信的橋梁。通過燒錄電路,用戶可以將要顯示的字符程序燒進單片機的Flash保存起來。在脫離PC的狀態(tài)下,給系統(tǒng)通電時,單片機就會自動運行,控制顯示屏顯示出在程序中設(shè)定好的字符。12232液晶與STC89C52單片機電路連接圖如下圖1所示: 圖1液晶與STC89C52單片機電路連接圖由上圖可以看出,在本系統(tǒng)中只用到STC89C52單片機的P1口與P3口資源,系統(tǒng)采用最簡單的直接訪問方式,P1作為數(shù)據(jù)口向12232液晶傳送待顯示的圖形符號字模數(shù)據(jù),P3口的P3.4、P3.5、P3
7、.6、P3.7分別獨立由單片機控制。來使液晶模塊按指定要求正常工作。液晶顯示器RT12232由兩片SED1520構(gòu)成,下面將詳細介紹STC89C52單片機和SED1520液晶的功能和用法。 (1)STC89C52的引腳及功能STC89C52的外觀及引腳圖如下圖2所示:圖2 STC89C52引腳圖P0口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位驅(qū)動8個TTL邏輯電平。對PO口端口寫“1”時,引腳作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0口具有內(nèi)部上拉電阻。在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)
8、。程序校驗時,需要外部上拉電阻。P1口:P1口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P1端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和定時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX)。P2口:P2口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P2端口寫“1”時,與P1口相同。 P3口:與P2口相同。ALE/PROG當訪問外部程序儲器時,AL
9、E輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/16輸出固定的脈沖信號,因些它可對外輸出時鐘或用于定時目的。PSEN程序存儲允許(PSEN)輸出是外部程序存儲器的讀選通信號,當STC89C52由外部程序儲器器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。EA/VPP外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH)EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的
10、指令。(2)SED1520液晶顯示器SED1520液晶顯示驅(qū)動器是一種點陣圖形式液晶顯示驅(qū)動器,它可直接與8位微處理器相連,集行、列驅(qū)動器于一體,因此使用起來十分方便,作為內(nèi)藏式控制器被廣泛應用于點陣數(shù)較少的液晶顯示模塊。SED1520液晶顯示器的特性有(1)內(nèi)部顯示RAM容量為2560b。其每一位數(shù)據(jù)控制液晶屏上一點的亮滅狀態(tài)?!?”表示亮,“0”表示暗;(2)具有16個行驅(qū)動輸出和61個列驅(qū)動輸出;(3)可直接與80系列微處理器相連,亦可直接與68系列微處理器相連;(4)驅(qū)動占空比為1/16或1/32;(5)可以與SED1520級聯(lián)使用,以便擴展行、列驅(qū)動能力。序號符號狀態(tài)功能:1Vcc-
11、邏輯電源正, 9DB0三態(tài)數(shù)據(jù)總線(最低位),2GND-邏輯電源地, 10DB1三態(tài)數(shù)據(jù)總線,3V0-液晶顯示驅(qū)動電源, 11DB2三態(tài)數(shù)據(jù)總線,4RES-復位, 12DB3三態(tài)數(shù)據(jù)總線,5E1輸入主工作方式IC的使用信號, 13DB4三態(tài)數(shù)據(jù)總線,6E2輸入從工作方式IC的使用信號, 14DB5三態(tài)數(shù)據(jù)總線,7R/W輸入讀/寫選擇信號, 15DB6三態(tài)數(shù)據(jù)總線,8A0輸入寄存器選擇信號, 16DB7三態(tài)數(shù)據(jù)總線(最高位)SED1520控制指令要使內(nèi)置SED1520圖形液晶顯示模塊還需要了解其軟件特性,即SED1520的指令功能。SED1520指令一覽表如下表1所示:表1SED1520控制指令
12、指令名稱控制信號控制代碼A0 R/WD7 D6 D5 D4 D3 D2 D1 D0復位0 01 1 1 0 0 0 1 0顯示開關(guān)設(shè)置0 01 0 1 0 1 1 1 DI地址排序設(shè)置0 01 0 1 0 0 0 0 A休閑狀態(tài)設(shè)置0 01 0 1 0 0 1 0 S占空比設(shè)置0 01 0 1 0 1 0 0 DU顯示起始行設(shè)置0 01 1 0 L4 L3 L2 L1 L0頁面地址設(shè)置0 01 0 1 1 1 0 P1 P2列地址設(shè)置0 00 C6 C5 C4 C3 C2 C1 C0啟動改寫方式0 01 1 1 0 0 0 0 0結(jié)束改寫方式0 01 1 1 0 1 1 1 0讀取狀態(tài)字0 1
13、BUSY ADC ON/OFF RESET 0 0 0 0寫顯示數(shù)據(jù)1 0數(shù)據(jù)讀顯示數(shù)據(jù)1 1數(shù)據(jù)SED1520的13條指令從作用上可以分為兩大類:一類為顯示方式的設(shè)置指令,前六條指令為這一類指令,它們只需在初始化程序中寫入一次就可以了。另一類為顯示數(shù)據(jù)讀/寫操作的指令,從第七條往下(包括狀態(tài)字)都是這類指令,它們需要經(jīng)常地使用。程序開始運行后,要對液晶顯示進行初始化,初始化后清屏,為輸出數(shù)據(jù)準備。然后調(diào)用顯示程序,在顯示屏上顯示數(shù)據(jù)。如果有按鍵的話,程序會進行相應的處理,如此循環(huán)。主程序框圖如下圖3所示: 圖3 主程序流程圖下面將詳細描述各塊程序:(1)初始化程序初始化主要是完成對于SED1
14、520控制器的設(shè)置,由于采用C51語言進行編程,使得初始化十分簡捷,只需調(diào)用初始化程序分別對兩塊SED1520液晶進行復位、關(guān)休閑,進入正常工作狀態(tài)、占空比選擇1/32、adc選擇、設(shè)置起始行、開顯示、清屏等操作。在液晶顯示信息之前,必須先對液晶進行初始化。初始化的流程如圖4所示 圖4初始化程序流程圖程序如下:INIT: MOV COM,#0E2H ;復位 LCALL PR0 LCALL PR3 MOV COM,#0A4H ;關(guān)閉休閉狀態(tài) LCALL PR0 LCALL PR3 MOV COM,#0A9H ;設(shè)置1/32占空比 LCALL PR0 LCALL PR3 MOV COM,#0A0H
15、 ;正向排序設(shè)置 LCALL PR0 LCALL PR3 MOV COM,#0C0H ;設(shè)置顯示起始行為第一行 LCALL PR0 LCALL PR3 MOV COM,#0AFH ;開顯示設(shè)置 LCALL PR0 LCALL PR3 RET(2)清屏程序CLEAR: MOV R4,#00H ;頁面地址暫存器設(shè)置 CLEAR1: MOV A,R4 ;取頁地址值 ORL A,#0B8H ;"或"頁面地址設(shè)置代碼 MOV COM,A ;頁面地址設(shè)置 LCALL PR0 LCALL PR3 MOV COM,#00H ;列地址設(shè)置為"0" LCALL PR0 LC
16、ALL PR3 MOV R3,#50H ;一頁清80個字節(jié)CLEAR2: MOV DAT,#00H ;顯示數(shù)據(jù)為"0" LCALL PR1 LCALL PR4 DJNZ R3,CLEAR2 ;頁內(nèi)字節(jié)清零循環(huán) INC R4 CJNE R4,#04H,CLEAR1 ;RAM區(qū)清零循環(huán) RETPR0: CLR A0 ;AO0SETB R_W ;R_W1PR01: MOV P1,#0FFH ;P1口置"1"SETB E1 ;E11MOV A,P1 ;讀狀態(tài)字CLR E1 ;E10JB ACC.7,PR01 ;判"忙"標志為"0&q
17、uot;,否再讀CLR R_W ;R_W0MOV P1,COM ;寫指令代碼SETB E1 ;E11CLR E1 ;E10RET(2)顯示程序如下圖5所示,程序運行至中文顯示程序時,會在中文字庫中查找字符碼并計算字模地址。然后設(shè)置顯示屏的頁地址。在計算一列的位置后,程序依次從字庫中調(diào)出一列字模的數(shù)據(jù)輸出到顯示屏上,直到這一頁寫完為止。寫完一頁后,程序會調(diào)用換屏程序。換屏程序進行清屏,然后繼續(xù)依次調(diào)一列字模數(shù)據(jù)輸出到顯示屏上,直到寫完這一頁。程序可以不停運行,可以調(diào)用延時來控制。 圖5顯示程序流程圖比如要顯示一個“曾”字。它的字庫是:db 00h, 00h,0F0h, 11h, 52h, 14h
18、, 10h,0F0h ;曾db 10h, 14h, 52h, 11h,0F8h, 10h, 00h, 00hdb 00h, 00h, 01h, 01h,0FDh, 55h, 55h, 55hdb 55h, 55h,0FFh, 05h, 01h, 00h, 00h, 00h要在液晶屏上顯示出來,要執(zhí)行下面的程序:AAA: MOV A,#0D8H ;顯示起始行為第16行MOV COM,A ;COM是指令寄存器 通過COM寫指令LCALL PR0 ;調(diào)用寫指令代碼子程序LCALL PR1 ;調(diào)用寫數(shù)據(jù)子程序MOV CTEMP,#0 ;列初值MOV PAGE_,#01H ;頁面是第一頁MOV A,CT
19、EMP ;設(shè)置這個字要從哪一列顯示,這里是從00H就是0列ADD A,#00H MOV COLUMN,AMOV CODE_,#00H ;CODE是字符代碼寄存器,寫入要顯示字符的位置,00H是第0個字符,也就是首字符LCALL CCW_PR ; 調(diào)用中文顯示子程序;;-中文顯示子程序CCW_PR: MOV DPTR,#CCTAB ;確定字符字模塊首地址MOV A,CODE_ ;取代碼MOV B,#20H ;字模塊寬度為32個字節(jié)MUL AB ;代碼×32ADD A,DPL ;字符字模塊首地址MOV DPL,A ;字模庫首地址代碼×32MOV A,BADDC A,DPHMOV
20、 DPH,APUSH COLUMN ;列地址入棧PUSH COLUMN ;列地址入棧MOV CODE_,#00H ;代碼寄存器借用為間址寄存器CCW_1: MOV COUNT,#10H ;計數(shù)器設(shè)置為16MOV A,PAGE_ ;讀頁地址寄存器ANL A,#03HORL A,#0B8H ;”或”頁地址設(shè)置代碼MOV COM,A ;寫頁地址設(shè)置指令LCALL PR0LCALL PR3POP COLUMN ;取到地址值MOV A,COLUMN ;讀列地址寄存器CLR CSUBB A,#PD1 ;列地址減模塊參數(shù)JC CCW_2 ;0為左半屏顯示區(qū)域(E1)MOV COLUMN,A ;0為右半屏顯示
21、區(qū)域(E2)MOV A,PAGE_SETB ACC.3 ;設(shè)置區(qū)域標志位。MOV PAGE_,A ;”0”為E1,”1”為E2CCW_2: MOV COM,COLUMN ;設(shè)置列地址值MOV A,PAGE_ ;判區(qū)域標志以確定設(shè)置哪個控制器JNB ACC.3,CCW_3LCALL PR3 ;區(qū)域E2LJMP CCW_4CCW_3: LCALL PR0 ;區(qū)域E1CCW_4: MOV A,CODE_ ;取間址寄存器值MOVC A,A+DPTR ;取漢字字模數(shù)據(jù)MOV DAT,A ;寫數(shù)據(jù)MOV A,PAGE_JNB ACC.3,CCW_5LCALL PR4 ;區(qū)域E2LJMP CCW_6CCW_
22、5: LCALL PR1 ;區(qū)域E1CCW_6: INC CODE_ ;間址寄存器加一INC COLUMN ;列地址寄存器加一MOV A,COLUMN ;判列地址是否超出區(qū)域范圍CJNE A,#PD1,CCW_7CCW_7: JC CCW_8 ;未超出則繼續(xù)MOV A,PAGE_ ;超出則判是否在區(qū)域E2JB ACC.3,CCW_8 ;在區(qū)域E2則退出SETB ACC.3 ;在區(qū)域E1則修改成區(qū)域E2MOV PAGE_,AMOV COM,#00H ;設(shè)置區(qū)域E2列地址為”0”LCALL PR3CCW_8: DJNZ COUNT,CCW_4 ;當頁循環(huán)MOV A,PAGE_ ;讀頁地址寄存器JB
23、 ACC.7,CCW_9 ;判完成標志D7位,”1”則完成退出INC A ;否則頁地址加一SETB ACC.7 ;置完成位為”1”MOV PAGE_,AMOV CODE_,#10H ;間址寄存器設(shè)置為16LJMP CCW_1 ;大循環(huán)CCW_9: RET執(zhí)行完著一段后,整個“曾”字就顯示出來了。實驗調(diào)試與問題 這次課程設(shè)計主要是用STC89C52單片機控制由兩塊SED1520集成塊組合成的12232點陣液晶顯示器。調(diào)試過程中由于接線一些接觸不良和串口線的問題花費了我們很多的時間,發(fā)現(xiàn)問題出在驅(qū)動上后,我們及時更換了一個新的串口線,然后改良了接線穩(wěn)定性的問題,液晶上終于出現(xiàn)了顯示結(jié)果。此次系統(tǒng)的設(shè)計與制作工作已經(jīng)全部完成,基本達到了預期的目的與要求。但是在系統(tǒng)的調(diào)試方面還不夠健全。漢字的動態(tài)顯示、顯示內(nèi)容的實時更新等方面做得不夠好,但是由于時間倉促、條件有限,設(shè)計結(jié)果并不是很好,諸
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- CAD課程設(shè)計面粉廠
- 出售平房合同協(xié)議書(2篇)
- 施工導流課程設(shè)計規(guī)范
- 職工食堂設(shè)計方案
- 湖北理工學院《水污染控制工程》2022-2023學年期末試卷
- 湖北理工學院《電氣控制與PLC技術(shù)》2022-2023學年期末試卷
- 湖北工業(yè)大學《電力系統(tǒng)自動化》2022-2023學年期末試卷
- 湖北工業(yè)大學《電磁兼容技術(shù)》2022-2023學年期末試卷
- 湖北工程學院《電力系統(tǒng)繼電保護》2021-2022學年期末試卷
- 呼倫貝爾學院《服務器配置與管理》2021-2022學年期末試卷
- revit教程第22講:體量課件
- 新農(nóng)村普法宣傳工作課件:法律常識講座
- 反洗錢管理系統(tǒng)課件
- 部編人教版道德與法治六年級上冊《知法守法 依法維權(quán)》優(yōu)質(zhì)課件
- 計算機操作系統(tǒng)考研真題及答案(近10年)
- 五年級上冊數(shù)學課件-第5單元 4.方程的意義∣人教新課標 (共14張PPT)
- 地暖工程分項報價單
- 國家開放大學《可編程控制器應用實訓》形考任務2(實訓二)參考答案
- 六年級上冊美術(shù)課件-《戲曲人物》 浙美版(2014秋) (2)(共13張PPT)
- 蘇科版九年級數(shù)學上冊 圓的對稱性 專題培優(yōu)訓練【含答案】
- 作業(yè)中斷管理規(guī)范
評論
0/150
提交評論