16X2字符型液晶顯示模塊驅(qū)動)DOC_第1頁
16X2字符型液晶顯示模塊驅(qū)動)DOC_第2頁
16X2字符型液晶顯示模塊驅(qū)動)DOC_第3頁
16X2字符型液晶顯示模塊驅(qū)動)DOC_第4頁
16X2字符型液晶顯示模塊驅(qū)動)DOC_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘數(shù)理與信息工程學院課程設計題 目:16X2字符型液晶顯示模塊驅(qū)動專 業(yè):班 級:姓 名:學號:實驗地點:指導老師:成 績:(2006.6 )目錄第1節(jié)引言 31.1 1 6 X 2 液晶顯示模塊概述31.2 本設計任務 31.3 系統(tǒng)基本功能3第2節(jié)系統(tǒng)硬件設計 42.1 系統(tǒng)的硬件構(gòu)成及功能 42.2 AT89C2051單片機及其引腳說明 52.3 MD 162液晶顯示模塊及其引腳說明 6第3節(jié)系統(tǒng)軟件設計 73.1 系統(tǒng)主程序設計 73.2 字符發(fā)生存儲器 83.3 MD-162內(nèi)部控制器的指令 93.4 字符發(fā)生器RAM地址設

2、置 9第4節(jié)系統(tǒng)調(diào)試與測試結(jié)果分析第5節(jié)結(jié)束語 10液晶顯示模塊的比較并舉例其在實際中的應用等參考文獻 11附錄 121. 液晶顯示字符使用說明 122. 在第一行顯示” HELLO全部源程序13采用查表的方法實現(xiàn)字符顯示 15-2 -浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘16X2字符型液晶顯示模塊的驅(qū)動液晶顯示器(LCD)以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點, 在袖珍式儀表和低功耗應用系統(tǒng)中得到越來越廣泛的應用。字符型液晶模塊是一種用5x7點陣圖形來顯示字符的液晶顯示器,根據(jù)顯示的容量可以分為1行16個字、2行16個字、2行20個字等等.這里以常用的2

3、行16個字的DM-162液晶模塊來驅(qū)動 顯示字符.1.1 16 X 2液晶顯示模塊的驅(qū)動概述16X2液晶顯示模塊的驅(qū)動采用 AT89C2051芯片及DM-162顯示模塊實現(xiàn)16X2 個字符的左移或者右移顯示.AT89C2051用以控制顯示字符的位置,字符的顯示方式, 及傳遞字符字碼.1.2 本設計任務使用AT89C2051實現(xiàn)液晶模塊的字符控制顯示.1.3 系統(tǒng)主要功能16 X 2液晶顯示模塊的外觀如圖1所示。其主要功能有:在液晶顯示模塊的某個具體的存儲位置顯示指定的字符;控制一連串字符向左或者向右移動;控制單行或者雙行顯示。圖1:第2節(jié) 系統(tǒng)硬件設計本系統(tǒng)主要實現(xiàn)的硬件設計,包括三個方面的內(nèi)

4、容:第一,我們所熟悉的單片機AT89C205的引腳定義及設置;第二,DM-162與TA89C205的引腳連接;第三,DM-162的電源部分2.1 系統(tǒng)的硬件構(gòu)成及功能液晶顯示模塊的原理框圖如圖2所示。它由以下幾個部件組成:單片機AT89C2051電源、液晶字符顯示部件 DM-162電源供電部分。單片機部分:采用AT89C2051芯片實現(xiàn)對DM-162的控制顯示字符顯示模塊:選擇2行16個字的顯示容量.電源部分:+5V電壓供電,維持系統(tǒng)的正常工作,同時加載10K電位器以適應不 用亮度的顯示字符即對比度的調(diào)整.顯示驅(qū)動電源供電AT8DM-162圖2液晶顯示系統(tǒng)原理框圖2. 2 AT89C2051單

5、片機及其引腳說明AT89C205仲片機是51系列單片機的一個成員,是8051單片機的簡化版。內(nèi)部 自帶2K字節(jié)可編程FLASH存儲器的低電壓、高性能 COMSJ位微處理器,與Intel MCS-51系列單片機的指令和輸出管腳相兼容。由于將多功能八位CPU和閃速存儲器結(jié)合在單個芯片中,因此,AT89C2051構(gòu)成的單片機系統(tǒng)是具有結(jié)構(gòu)最簡單、造價最 低廉、效率最高的微控制系統(tǒng),省去了外部的RAM ROM和接口器件,減少了硬件開銷,節(jié)省了成本,提高了系統(tǒng)的性價比。AT89C2051是一個有20個引腳的芯片,引腳配置如圖3所示。與8051相比,AT89C2051減少了兩個對外端口(即P0、P2 口)

6、,使它最大可能地減少了對外引腳,因而芯片尺 寸有所減小。#浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘PDIP/SOK(RXD)PID 匚 2(TXDJPll 口XTAI2 匚 ©XFAL1 匚 5(INT0)P3.2 匚 6(M1JP33C7P14匚8(njpiscfCNDCh3VCC3 Pl? 3P1-6 3PL5 3PL4DPI 3JPL2PL1AIN1)12 3P1.0(AIN0)JP3.720191817161514131!#浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘#浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘圖3

7、AT89C2051引腳配置AT89C2051芯片的20個引腳功能為:VCC電源電壓GNDRST接地。復位輸入。當RST變?yōu)楦唠娖讲⒈3?個機器周期時,所有I/O引腳復位“1”。XTAL1反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2來自反向振蕩放大器的輸出。P1 口 8位雙向I/O 口。引腳P1.2P1.7提供內(nèi)部上拉,當作為輸入并被外部 下拉為低電平時,它們將輸出電流,這是因內(nèi)部上拉的緣故。P1.0和P1.1需要外部上拉,可用作片內(nèi)精確模擬比較器的正向輸入(AIN0)和反向輸入(AIN1),P1 口輸 出緩沖器能接收20mA電流,并能直接驅(qū)動LCD顯示器;P1 口引腳寫入“ 1”后

8、,可 用作輸入。在閃速編程與編程校驗期間,P1 口也可接收編碼數(shù)據(jù)。P3 口 引腳P3.0P3.5與P3.7為7個帶內(nèi)部上拉的雙向I/O引腳。P3.6在內(nèi)部已 與片內(nèi)比較器輸出相連,不能作為通用I/O弓I腳訪問。P3 口的輸出緩沖器能接收20mA 的灌電流;P3 口寫入“1”后,內(nèi)部上拉,可用輸入。P3 口也可用作特殊功能口,其功能見表1。P3 口同時也可為閃速存儲器編程和編程校驗接收控制信號 表1 P3 口特殊功能P3 口引腳特殊功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2IMTO (外部中斷0)P3.3INT1 (外部中斷1)P3.4T0 (定時器0外部輸入)P3.

9、5T1 (定時器1外部輸入)2. 3 DM-162液晶模塊及其引腳說明DM-162采用標準的14腳接口,其中:VSS為地電源VDD接5V正電源V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最 高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比 度。RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當 RS和RW 共同為低電平時可以寫入指令或者顯示地址, 當RS為低電平RW為高電平時可 以讀忙信號,當RS為高電平RW為低電平時可以寫入數(shù)據(jù)。E端為使能端,當E端由高電平跳變成低電平

10、時,液晶模塊執(zhí)行命令。D0D7為8位雙向數(shù)據(jù)線。2. 4 DM-162液晶模塊與單片機連接圖DM-162液晶顯示模塊可以和單片機 AT89C2051直接相連,電路如圖4所示TA89C2051RSEDOD604D5D1D2D35浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘#浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘圖4芯片連接圖#浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘第3節(jié)系統(tǒng)的軟件設計本系統(tǒng)的軟件設計主要考慮到幾個方面:第一,顯示控制的初始設置 即控制指令的選擇;第二,顯示字符的位置選擇即顯示存儲單位的確定 第三,顯示字符的內(nèi)碼的對

11、應選擇.3. 1系統(tǒng)主程序設計圖8系統(tǒng)程序流程圖3. 2字符發(fā)生存儲器DM-162液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了 160個不同的點 陣字符圖形,如表2所示,這些字符有:阿拉伯數(shù)字、英文字母的大小寫、常用的符 號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B (41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我 們就能看到字母“ A ” .衰I扣4 CGROM和CGRAM中字符代碼與字符S0理對應關(guān)蘇(KKM>001000110100OtOl011010111j10iL1100譏011110miXX X X

12、0000CGRAM<D0PiP三*,pX XX X0MI(2)4IAQaq7厶« ra4xx xxocio4>zBRbTr/paXXX XDOtl<4)U3C5c*J1 «"5< X x xoiooi4DTd工卜七pnXX XXQ101<6>%5Eu;遷U口1才工B0X X X X0110&FVtV亍.力3Psxxx xom1>?GwswrKscxx xxiooo<n<aHXhK彳?皋i 9JXXXX X1CM19IYiyrJ-yX XX xioicaJZj£X號VjX X X X1011AK

13、Ck(才t口戛r萬X X x xtioo(5>7<L¥1icy7AX XX X 1101M0m)JL7電+XX x Xllic<7)Npin3te卓八nXXXXU11/T0aI -7口6一.:;表2字符代碼對應表3.3 MD-162內(nèi)部控制器的指令DM-162液晶模塊內(nèi)部的控制器共有11條控制指令,如表3所示,它的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平)推令RSR/WD7D6D5D4D2D1DOi -清顯示K00000Q002光標返回QQ0000001、耳輸入?yún)柺?00Q000:1/Ds *顯示開/關(guān)控制1000000DJ

14、光標或宇符參胞00Q00 1S/CR/L#£ ' JT功協(xié)Q0001DLN,F .*#7置字符蛍生存貯器宛址10Q01字符發(fā)生存上器地址(AGGt置狡據(jù)算社粘地址Q01顯示數(shù)抵楸潘it址佔DD)讀忙標志或地址01PT計歎養(yǎng)地址皿1寫歆劉CGRAM或DDRNM10整寫的做J 從 CGRAM 或 DDRAM 讀Ulim1|誘岀的數(shù)據(jù)表3 11條指令表 960秒旋轉(zhuǎn)電子鐘指令1清顯示,指令碼01H,光標復位到地址00H位置指令2:光標復位,光標返回到地址 00H指令3:光標和顯示模式設置I/D:光標移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效

15、,低電平則無效指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示C :控制光標的開與關(guān),高電平表示有光標,低電平表示無光標B:控制光標是否閃爍,高電平閃爍,低電平不閃爍指令5:光標或顯示移位S/C:高電平時移動顯示的文字,低電平時移動光標指令6:功能設置命令.DL :高電平時為4位總線,低電平時為8位總線N :低電平時為單行顯示,高電平時雙行顯示F:低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符指令7:字符發(fā)生器RAM地址設置指令8: DDRAM地址設置指令9:讀忙信號和光標地址 BF :為忙標志位,高電平表示忙,此時模塊不能接收 命令或者數(shù)據(jù),如

16、果為低電平表示不忙。指令10:寫數(shù)據(jù)指令11:讀數(shù)據(jù)3. 4字符發(fā)生器RAM!址設置液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的 忙標志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地 址,也就是告訴模塊在哪里顯示字符,表4是DM-162的內(nèi)部顯示地址,比如第二行第一個字符的地址是40H,那么是否直接寫入40H就可以將光標定位在第二行第一 個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位 D7恒定為高電平1所 以實際寫入的數(shù)據(jù)應該是 01000000B (40H) +10000000B(80H)=11000000B(C0H).1234 $ 0 7

17、 8 » 10 II 12 13 14 1$ 16表4字符發(fā)生器RAM地址本系統(tǒng)的實現(xiàn)相對比較簡單,主要了解了 AT89C2051與DM-162的連接顯示.AT89C2051對液晶字符的控制顯示.通過本系統(tǒng)的學習也讓我比較深刻的認識到 DM-162的顯示原理及內(nèi)部結(jié)構(gòu)特征.這與書上8051芯片與HD44780顯示模塊的連接 顯示功能相近,也是經(jīng)過兩個主要的過程顯示控制字符,首先就是對液晶顯示模塊進 行初始化設置,即包括清除顯示,功能設置,開關(guān)顯示,方式設置等然后,在判斷為不 忙的情況下寫入顯示的字符數(shù)據(jù)看起來功能可能比較單一,只是涉及到了單處機對 DM-162液晶字符模塊的控制顯示,

18、而且這個字符的字碼是每次經(jīng)過人為的改變而實 現(xiàn)其顯示,所以從實用性方面考慮不怎么理想但是從AT89C2051本身的功能特性考 慮,我們可以設想,通過AT89C2051的串口自動得到外部的可變數(shù)據(jù),再經(jīng)過字碼對照 表所得待顯示的數(shù)據(jù)不失為一種好的辦法在這里,自動獲得的數(shù)據(jù)可以通過傳感器來實現(xiàn).比如,加油站里面的加油量控制顯示,就可以通過測量檢測傳感器來實現(xiàn)輸出 的油量,然后輸入到單片機的串口 ,再經(jīng)過字碼對應表來獲得在液晶顯示字符模塊中 顯示的數(shù)據(jù)再比如由溫度傳感器獲取的溫度經(jīng) A/D轉(zhuǎn)換后,讀入到AT89C205憚片機 中,就可以顯示出當時的溫度.總之,DM-162作為一種小型的字符顯示器,在

19、日常生活 中碰到的一些儀器設備中還是比較有實用價值,因此值得我們?nèi)チ私馑?,掌握如何?運用它.參考文獻1高鋒單片機應用系統(tǒng)設計及實用技術(shù)機械工業(yè)出版社.2004.4附 錄1. 液晶顯示字符使用說明DM-162液晶顯示模塊的字符顯示,可分為好幾種顯示模式,這主要取 決于對具體的應用.如靜態(tài)的顯示,還是動態(tài)的左移或者右移顯示.那么 這個主要是在程序設計的過程中,進行初始化所決定的.因此,在使用之 前先確定使用的目的,選擇好顯示的方式,當然得找出相應的顯示字符的 字符代碼及在DM-162液晶顯示模塊的相應顯示位置的 RAM地址.然后進 行每個字符的寫入顯示.在使用的過程中,還得注意的一點是,可能是顯

20、 示驅(qū)動電壓的不穩(wěn)定性,或者是由于驅(qū)動電壓的過高,會形成一種"鬼 影"的現(xiàn)象,因此需要手動對10K的電位器進行對比度調(diào)整以達到顯示的 良好效果.11浙江師范大學數(shù)理與信息工程學院課程設計一一新穎60秒旋轉(zhuǎn)電子鐘2. 在第一行顯示” HELLO全部源程序 程序設計步驟詳解:參照圖I 234 5 (i 7 8 » 10 II 12 13 14 1$ 16表5:HELLO根據(jù)所給字符首先確定它的字碼對應情況H:01001000BE:01000101BL:01001100BO:01001111B根據(jù)表5所顯示字符的具體位置找出相應的RAM地址位置:H: 00000000B

21、(00H)+00000110B(06H)=00000110B(06H)E: 00000000B( 00H)+00000111B(07H)=00000111B(07H)L(1): 00000000B(00H)+00001000B(08H)=00001000B(08H)L(2): 00000000B( 00H)+00001001B(09H)=00001001B(09H)O: 00000000B( 00H)+00001010B(0A0H)=00001010B(0A0H)這里須注意的地方:如果HELLO顯示在第二行的話,那么公式中前的00H應該換成 40H,即最高位D7應保持高電平狀態(tài).1360秒旋轉(zhuǎn)

22、電子鐘具體程序如下:ORG 0000HRS EQU P3.7;確定硬件連接方式RW EQU P3.5確定硬件連接方式E EQU P3.4 ;確定硬件連接方式MOV P1,#OOOOOOO1B;清屏并光標復位ACALL ENABLE;用寫入命令子程序MOV P1,#OO111OOOB;設置顯示模式:8位2行5x7點陣ACALL ENABLE調(diào)用寫入命令子程序MOV P1,#OOOO1111B ;顯示器開、光標開、光標允許閃爍ACALL ENABLE調(diào)用寫入命令子程序MOV P1,#OOOOO11OB ;文字不動,光標自動右移;顯示HACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 06

23、H ;寫入顯示起始地址(第一行第六個位置)ACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 01001000B ;字母 H 的代碼SETB RS; RS=1CLR RW RW=0準備寫入數(shù)據(jù)CLR E ; E=0 ;執(zhí)行顯示命令ACALL DELAY判斷液晶模塊是否忙?SETB E ; E=1 ;顯示完成,程序停車;顯示EACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 07H ;寫入顯示起始地址(第一行第七個位置)ACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 01000101B ;字母 E 的代碼SETB RS; RS=1CLR RW RW=0準備寫入數(shù)據(jù)C

24、LR E ; E=0 ;執(zhí)行顯示命令ACALL DELAY判斷液晶模塊是否忙?SETB E ; E=1 ;顯示完成,程序停車;顯示第一個LACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 08H ;寫入顯示起始地址(第一行第八個位置)ACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 01001100B ;字母 L 的代碼SETB RS; RS=1CLR RW RW=0準備寫入數(shù)據(jù)CLR E ; E=0 ;執(zhí)行顯示命令ACALL DELAY判斷液晶模塊是否忙?SETB E ; E=1 ;顯示完成,程序停車;顯示第二個LACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 08H ;寫入顯示起始地址(第一行第九個位置)ACALL ENABLE調(diào)用寫入命令子程序MOV P1,# 01001100B ;字母 L 的代碼SETB RS; RS=1CLR RW RW=0準備寫入數(shù)據(jù)CLR E ; E=0 ;執(zhí)行顯示命令ACALL DELAY判斷液晶模塊是否忙?SETB E ; E=1 ;顯示完成,

溫馨提示

  • 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

提交評論