LCD1602A顯示屏_第1頁(yè)
LCD1602A顯示屏_第2頁(yè)
LCD1602A顯示屏_第3頁(yè)
LCD1602A顯示屏_第4頁(yè)
LCD1602A顯示屏_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、LCD顯示屏1602A,LCD1602蘭屏,帶背光藍(lán)底白字標(biāo)準(zhǔn)型16X2液晶顯示字符模塊(背光/藍(lán)屏)1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:VSS為地電源第2腳:VDD接5V正電源第3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫(xiě)信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和RW共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平

2、時(shí)可以寫(xiě)入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光電源正極第16腳:背光電源負(fù)極1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGRoM已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,女口表1所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫(xiě)的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。以下是在液晶模塊的第二行第一個(gè)字符的位置顯示字母“A”的程序:ORG0000HRSEQUP3.7;確

3、定具體硬件的連接方式RWEQUP3.6;確定具體硬件的連接方式EEQUP3.5;確定具體硬件的連接方式MOVP1,#000000016;清屏并光標(biāo)復(fù)位ACALLENABLE調(diào)用寫(xiě)入命令子程序MOVP1,#00111000B;設(shè)置顯示模式:8位2行5x7點(diǎn)陣ACALLENABLE;調(diào)用寫(xiě)入命令子程序MOVP1,#00001111B;顯示器開(kāi)、光標(biāo)開(kāi)、光標(biāo)允許閃爍ACALLENABLE;調(diào)用寫(xiě)入命令子程序MOVP1,#00000110B;文字不動(dòng),光標(biāo)自動(dòng)右移ACALLENABLE;調(diào)用寫(xiě)入命令子程序MOVP1,#0C0H;寫(xiě)入顯示起始地址(第二行第一個(gè)位置)ACALLENABLE;調(diào)用寫(xiě)入命令子

4、程序MoVP1,#01000001B;字母A的代碼SETBRS;RS=1CLRRW;RW=0;準(zhǔn)備寫(xiě)入數(shù)據(jù)CLRE;E=0;執(zhí)行顯示命令A(yù)CALLDELAY;判斷液晶模塊是否忙?SETBE;E=1;顯示完成,程序停車(chē)AJMP$ENABLE:CLRRS;寫(xiě)入控制命令的子程序CLRRWCLREACALLDELAYSETBERETDELAY:MoVP1,#0FFH;判斷液晶顯示器是否忙的子程序CLRRSSETBRWCLRENoPJBP1.7,DELAY;如果P1.7為高電平表示忙就循環(huán)等待RETEND程序在開(kāi)始時(shí)對(duì)液晶模塊功能進(jìn)行了初始化設(shè)置,約定了顯示格式。注意顯示字符時(shí)光標(biāo)是自動(dòng)右移的,無(wú)需人工

5、干預(yù),每次輸入指令都先調(diào)用判斷液晶模塊是否忙的子程序DELAY然后輸入顯示位置的地址OCoH最后輸入要顯示的字符A的代碼41H。SMC1602A(16*2)模擬口線接線方式連接線圖:ILCM-51|LCM-51|LCM51|I|DBOP1.O|DB4-P1.4|RW-P2.O|DB1-P1.1|DB5P1.5|RSP2.1|DB2-P1.2|DB6P1.6|EP2.2|IDB3-P1.3|DB7-P1.7|VLCD接1K電阻至UGNDI注:AT89s52使用12M晶振# defineLCM_RWP2_O/定義引腳# defineLCM_RSP2_1# defineLCM_EP2_2# defi

6、neLCM_DataP1# defineBUSy0x80/用于檢測(cè)LCM犬態(tài)字中的BUSy標(biāo)識(shí)#include<at89x51.h>voidWriteDataLCM(UnSignedcharWDLCM);voidWriteCommandLCM(UnSignedcharWCLCM,BUySC);UnsignedcharReadDataLCM(void);UnsignedcharReadStatUSLCM(void);voidLCMInit(void);voidDiSplayOneChar(UnSignedcharX,UnsignedcharY,UnsignedcharDData);v

7、oidDiSplayLiStChar(UnSignedcharX,UnsignedcharY,Unsignedcharcode*DData);voidDelay5MS(void);voidDelay400MS(void);unsignedcharcodeuctech=HuctechH;unsignedcharcodenet="voidmain(void)Delay400Ms();Zz啟動(dòng)等待,等LCM講入工作狀態(tài)LCMInit();/LCM初始化Delay5Ms();ZZ延時(shí)片亥fj(可不要)DisplayListChar(O,5,uctech);DisplayListChar(O,

8、0,net);ReadDataLCM();ZZ測(cè)試用句無(wú)意義while(1);ZZ寫(xiě)數(shù)據(jù)voidWriteDataLCM(unsignedcharWDLCM)(ReadStatusLCM();ZZ檢測(cè)忙LCM_Data=WDLCM;LCM_RS=1;LCM_RW=0;LCM_E=0;ZZ若晶振速度太高可以在這后加小的延時(shí)LCM_E=0;ZZ延時(shí)LCM_E=1;ZZ寫(xiě)指令voidWriteCommandLCM(unsignedcharWCLCM,BuysC)ZZBuysC(為°時(shí)忽略忙檢測(cè)if(BuysC)ReadStatusLCM();ZZ根據(jù)需要檢測(cè)忙LCM_Data=WCLCM;

9、LCM_RS=0;LCM_RW=0;LCM_E=0;LCM_E=0;LCM_E=1;ZZ讀數(shù)據(jù)unsignedcharReadDataLCM(void)LCM_RS=1;LCM_RW=1;LCM_E=0;LCM_E=0;LCM_E=1;return(LCM_Data);/讀狀態(tài)unsignedcharReadStatusLCM(void)(LCM_Data=OxFF;LCM_RS=0;LCM_RW=1;LCM_E=0;LCM_E=0;LCM_E=1;while(LCM_Data&Busy);/檢測(cè)忙信號(hào)return(LCM_Data);voidLCMInit(void)/LCM初始化L

10、CM_Data=0;三次顯示模式設(shè)置,不檢測(cè)忙信號(hào)顯示模式設(shè)置,開(kāi)始要求每次檢測(cè)忙信號(hào)關(guān)閉顯示顯示清屏顯示光標(biāo)移動(dòng)設(shè)置顯示開(kāi)及光標(biāo)設(shè)置WriteCommandLCM(0x38,0);/Delay5Ms();WriteCommandLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,0);Delay5Ms();WriteCommandLCM(0x38,1);/WriteCommandLCM(0x08,1);/WriteCommandLCM(0x01,1);/WriteCommandLCM(0x06,1);/WriteCommandLCM(0x0C,1);/)/

11、按指定位置顯示一個(gè)字符voidDisplayOneChar(unsignedcharX,unsignedcharY,unsignedcharDData)<Y&=0x1;X&=0xF;限制X不能大于15,丫不能大于1if(Y)X|=0x40;/當(dāng)要顯示第二行時(shí)地址碼+0x40;X|=0x80;/算出指令碼WriteCommandLCM(X,0);這里不檢測(cè)忙信號(hào),發(fā)送地址碼WriteDataLCM(DData);/按指定位置顯示一串字符voidDisplayListChar(unsignedcharX,unsignedcharY,unsignedcharcode*DData)unsignedcharListLength;ListLength=0;Y&=0x1;X&=OxF;/限制X不能大于15,丫不能大于1while(DDataListLength>0x20)/若到達(dá)字串尾則退出(if(X<=OxF)/X坐標(biāo)應(yīng)小于OxF(DisplayOneChar(X,Y,DDataListLength);/顯示單個(gè)字符ListLength+;X+;)/5

溫馨提示

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

評(píng)論

0/150

提交評(píng)論