單片機(jī)用串口液晶顯示屏_第1頁
單片機(jī)用串口液晶顯示屏_第2頁
單片機(jī)用串口液晶顯示屏_第3頁
單片機(jī)用串口液晶顯示屏_第4頁
單片機(jī)用串口液晶顯示屏_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余8頁可下載查看

下載本文檔

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

文檔簡介

1、一、OCM12864液晶顯示模塊概述1. OCM12864液晶顯示模塊是128X64點(diǎn)陣型液晶顯示模塊,可顯示各種字符及圖形,可與CPU直接接口,具有8位標(biāo)準(zhǔn)數(shù)據(jù)總線、6條控制線及電源線。采用KS0107控制IC。2. 外觀尺寸:113X65X11mm(ocm12864-1),93x70X10mm(ocm12864-2)78x70x10mm(ocm12864-3),3. 視域尺寸:73.4X38.8mm(ocm12864-1)70.7x38mm(ocm12864-2),64M4mm(ocm12864-3)4. 重量:大約gl補(bǔ)充說明:外觀尺寸可根據(jù)用戶的要求進(jìn)行適度調(diào)整。二、最大工作范圍1、邏

2、輯工作電壓(Vcc):4.55.5V2、電源地(GND):0V3、LCD驅(qū)動電壓(Vee):0-10V4、輸入電壓:VeeVdd5、工作溫度(Ta):055c(常溫)/-2070c(寬溫)6、保存溫度(Tstg):-1065c三、電氣特性(測試條件Ta=25,Vdd=5.0+/-0.25V)1、輸入高電平(Vih):3.5Vmin2、輸入低電平(Vil):0.55Vmax3、輸出高電平(Voh):3.75Vmin4、輸出低電平(Vol):1.0Vmax5、工作電流:2.0mAmax四、接口說明1.12864-1,12864-2接口說明表管腳號管腳電平說明1VSS0V邏輯電源地。2VDD5.0V

3、邏輯電源正。3 V0LCD驅(qū)動電壓,應(yīng)用時在VEE與V0之間加一2K可調(diào)電阻。4 D/IH/L數(shù)據(jù)指令選擇:高電平:數(shù)據(jù)D0-D7將送入顯示RAM;低電平:數(shù)據(jù)D0-D7將送入指令寄存器執(zhí)行。5 R/WH/L讀寫選擇:高電平:讀數(shù)據(jù);低電平:寫數(shù)據(jù)。6 EH.H/L讀寫使能,高電平有效,下降沿鎖定數(shù)據(jù)。7 DB0H/L數(shù)據(jù)輸入輸出引腳。8 DB1H/L數(shù)據(jù)輸入輸出引腳。9 DB2H/L數(shù)據(jù)輸入輸出引腳。10DB3H/L數(shù)據(jù)輸入輸出引腳。11DB4H/L數(shù)據(jù)輸入輸出引腳。12DB5H/L數(shù)據(jù)輸入輸出引腳。13DB6H/L數(shù)據(jù)輸入輸出引腳。14DB7H/L數(shù)據(jù)輸入輸出引腳。15CS1H/L片選擇信

4、號,低電平時選擇前64歹U。16CS2H片選擇信號,低電平時選擇后64列。17RETL復(fù)位信號,低電平有效。2. 12864-3A接口說明表管腳號管腳電平說明1 CSAH/L片選擇信號,低電平時選擇前64列。2 CSBH片選擇信號,低電平時選擇后64列。3 GND0V邏輯電源地。4 VCC5V邏輯電源。5 VEE-10VLCD驅(qū)動電源。6 D/IH/L數(shù)據(jù)指令選擇,高電平:數(shù)據(jù)D0-D7將送入顯示RAM;低電平:數(shù)據(jù)D0-D7將送入指令寄存器執(zhí)行。7 R/WH/L讀寫選擇,高電平:讀數(shù)據(jù);低電平:寫數(shù)據(jù)。8 EH.H/L讀寫使能,高電平有效,下降沿鎖定數(shù)據(jù)。9 DB0H/L數(shù)據(jù)輸入輸出引腳。1

5、0 DB1H/L11 DB2H/L12 DB3H/L13 DB4H/L14 DB5H/L15 DB6H/L16 DB7H/L數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。數(shù)據(jù)輸入輸出引腳。3. 12864-3B接口說明表管腳號管腳電平說明1 CSAH/L片選擇信號,低電平時選擇前64列。2 CSBH片選擇信號,低電平時選擇后64列。3 GND0V邏輯電源地。4 VCC5V邏輯電源。5 V0-10VLCD驅(qū)動電源。6 D/IH/L數(shù)據(jù)指令選擇,高電平:數(shù)據(jù)D0-D7將送入顯示RAM;低電平:數(shù)據(jù)D0-D7將送入指令寄存器執(zhí)行。7 R/

6、WH/L讀寫選擇,高電平:讀數(shù)據(jù);低電平:寫數(shù)據(jù)。8 EH.H/L讀寫使能,高電平有效,下降沿鎖定數(shù)據(jù)。9 DB0H/L數(shù)據(jù)輸入輸出引腳。10DB111DB212DB313DB414DB515DB616DB717RETH/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。H/L數(shù)據(jù)輸入輸出引腳。L復(fù)位信號,低電平有效。五、指令描述1、顯示開/關(guān)設(shè)置CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHHHHH/L功能:設(shè)置屏幕顯示開/關(guān)。DB0=H,開顯示;DB0=L,關(guān)顯示。

7、不影響顯示RAM(DDRAM)中的內(nèi)容。2、設(shè)置顯示起始行DB2CODE:R/WD/IDB7DB6DB5DB4DB3DB1DB0LLHH行地址(063)功能:執(zhí)行該命令后,所設(shè)置的行將顯示在屏幕的第一行。顯示起始行是由Z地址計數(shù)器0-63范圍內(nèi)任意控制的,該命令自動將A0-A5位地址送入Z地址計數(shù)器,起始地址可以是一行。Z地址計數(shù)器具有循環(huán)計數(shù)功能,用于顯示行掃描同步,當(dāng)掃描完一行后自動加一。3、設(shè)置頁地址CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0LLHLHHH頁地址(07)功能:執(zhí)行本指令后,下面的讀寫操作將在指定頁內(nèi),直到重新設(shè)置。頁地址就是DDRAM的行地址,

8、頁地址存儲在X地址計數(shù)器中,A2-A0可表示8頁,讀寫數(shù)據(jù)對頁地址沒有影響,除本指令可改變頁地址外,復(fù)位信號(RST)可把頁地址計數(shù)器內(nèi)容清零。DDRAM地址映像表Y地址012616263DB0/PAGE0DB7X=0DB0PPAGE1DB7X=1PAGE6DB7DB0X=7PAGE7DB7X=84、設(shè)置列地址CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0LLLH列地址(063)功能:DDRAM進(jìn)行讀寫操作后,的列地址存儲在Y地址計數(shù)器中,Y地址自動加一。讀寫數(shù)據(jù)對列地址有影響,在DDRAM5、狀態(tài)檢測DB5DB4DB3DB2CODE:R/WD/IDB7DB6DB1DB

9、0HLBFLON/OFFRSTLLLL功能:讀忙信號標(biāo)志位(BF)、復(fù)位標(biāo)志位BF=H:內(nèi)部正在執(zhí)行操作;RST=H:正處于復(fù)位初始化狀態(tài);ON/OFF=H:表示顯示關(guān)閉;6、寫顯示數(shù)據(jù)CODE:R/WD/IDB7(RST)以及顯示狀態(tài)位(ON/OFF)。BF=L:空閑狀態(tài)。RST=L:正常狀態(tài)。ON/OFF=L:表示顯示開。DB6DB5DB4DB3DB2DB1DB0D0LHD7D6D5D4D3D2D1功能:寫數(shù)據(jù)到DDRAM,DDRAM是存儲圖形顯示數(shù)據(jù)的,寫指令執(zhí)行后Y地址計數(shù)器自動加1。D7-D0位數(shù)據(jù)為1表示顯示,數(shù)據(jù)為0表示不顯示。寫數(shù)據(jù)到DDRAM前,要先執(zhí)行“設(shè)置頁地址”及“設(shè)置

10、列地址”命令。7、讀顯示數(shù)據(jù)CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0功能:從DDRAM讀數(shù)據(jù),讀指令執(zhí)行后Y地址計數(shù)器自動加1。從DDRAM讀數(shù)據(jù)前要先執(zhí)行“設(shè)置頁地址”及“設(shè)置列地址”命令。六、接口時序1.寫操作時序4. 讀操作時序*串行連接操作程序新勢力單片機(jī)網(wǎng)站:url/url對外函數(shù)列表:voidLCD_Init(void);/初始化voidLCD_PutStr(unsignedcharrow,unsignedcharcol,unsignedchar*puts);/寫入文本voidLCD_PutBMP(unsignedch

11、ar*puts);/寫入圖片voidLCD_ClearTXT(void);/清除文本voidLCD_ClearBMP(void);/清除圖片*/#defineLCDNOP()NOP();NOP()以下配置IO管腳=#defineLCDSIDPORTPORTE/SIDPORT#defineLCDSIDDDRDDRE/SIDDDR#defineLCDSIDPINPINE/SIDPINE#defineLCDSIDIO2/SIDIO#defineLCDSCLKPORTPORTE#defineLCDSCLKDDRDDRE#defineLCDSCLKPINPINE#defineLCDSCLKIO3#def

12、ineLCDRSTPORTPORTE#defineLCDRSTDDRDDRE#defineLCDRSTPINPINE# defineLCDRSTIO4/=# defineOUTLCDSCLK()LCDSCLKDDR|=1<<LCDSCLKIO/設(shè)置輸出# defineSETLCDSCLK()LCDSCLKPORT|=1<<LCDSCLKIO/拉高# defineCLRLCDSCLK()LCDSCLKPORT&=(1<<LCDSCLKIO)/拉低# defineOUTLCDSID()LCDSIDDDR|=1<<LCDSIDIO/設(shè)置輸出#

13、defineINLCDSID()LCDSIDDDR&=(1<<LCDSIDIO);LCDSIDPORT|=1<<LCDSIDIO/設(shè)置輸入# defineSETLCDSID()LCDSIDPORT|=1<<LCDSIDIO/拉高# defineCLRLCDSID()LCDSIDPORT&=(1<<LCDSIDIO)/拉低# defineGETLCDSID()(LCDSIDPIN&(1<<LCDSIDIO)>>LCDSIDIO)/讀IO值第一行漢字位置第二行漢字位置第三行漢字位置第四行漢字位置/左移一

14、位0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x98,0x99,0x9a,0x9b,0x9c,0x9d,0x9e,0x9f,);串口發(fā)送一個字節(jié)voidLCD_WriteByte(unsignedcharDbyte)(unsignedchari;OUTLCDSCLK();OUTLCDSID();for(i=0;i<8;i+)(CLRLCDSCLK();Dbyte=Dbyte<<1;

15、if(SREG&1)SETLCDSID();elseCLRLCDSID();SETLCDSCLK();LCDNOP();CLRLCDSCLK();)return;)串口接收一個字節(jié)/僅在讀取數(shù)據(jù)的時候用到/而讀出的數(shù)據(jù)是一次只能讀出4bit的unsignedcharLCD_ReadByte(void)(unsignedchari,temp1,temp2;temp1=temp2=0;OUTLCDSCLK();INLCDSID();for(i=0;i<8;i+)(temp1=temp1<<1;CLRLCDSCLK();LCDNOP();SETLCDSCLK();LCDNO

16、P();CLRLCDSCLK();if(GETLCDSID()temp1+;)for(i=0;i<8;i+)temp2=temp2<<1;CLRLCDSCLK();LCDNOP();SETLCDSCLK();LCDNOP();CLRLCDSCLK();if(GETLCDSID()temp2+;)return(0xf0&temp1)+(0x0f&temp2);voidLCD_CheckBusy(void)LCDNOP();/11111,RW,RS(0),0BF(.7)=1Busyreturn;doLCD_WriteByte(0xfc);while(0x80&am

17、p;LCD_ReadByte();voidLCD_WriteCmd(unsignedcharCbyte)/LCD_CS=1;LCD_CheckBusy();LCD_WriteByte(0xf8);LCD_WriteByte(0xf0&Cbyte);11111,RW(0),RS(0),0高四位LCD_WriteByte(0xf0&Cbyte<<4);/低四位(先執(zhí)行<<)/LCD_CS=0;/LCD_CS=1;LCD_CheckBusy();LCD_WriteByte(0xfa);/11111,RW(0),RS(1),0LCD_WriteByte(0xf0

18、&Dbyte);高四位LCD_WriteByte(0xf0&Dbyte<<4);/低四位(先執(zhí)行<<)/LCD_CS=0;unsignedcharLCD_ReadData(void)(LCD_CheckBusy();LCD_WriteByte(0xfe);returnLCD_ReadByte();voidLCD_Init(void)(LCD_WriteCmd(0x30);LCD_WriteCmd(0x03);LCD_WriteCmd(0x0C);LCD_WriteCmd(0x01);LCD_WriteCmd(0x06);/文本區(qū)清RAM函數(shù)voidLCD

19、_ClearTXT(void)(unsignedchari;LCD_WriteCmd(0x30);LCD_WriteCmd(0x80);for(i=0;i<64;i+)LCD_WriteData(0x20);圖形區(qū)和文本區(qū)顯示在兩個不同的圖形區(qū)清RAM函數(shù)voidLCD_ClearBMP(void)(unsignedchari,j;LCD_WriteCmd(0x34);LCD_WriteCmd(0x36);for(i=0;i<32;i+)(/11111,RW(1),RS(1),0/8BitMCU,基本指令集合/AC歸0,不改變DDRAM內(nèi)容/顯示ON,游標(biāo)OFF,游標(biāo)位反白OFF/清屏,AC歸0寫入時,游標(biāo)右移動/8BitMCU,基本指令集合/AC歸起始位RAM區(qū)/8Bit擴(kuò)充指令集,即使是36H也要寫兩次/繪圖ON,基本指令集里面36H不能開繪圖/12864實際為256x32行位置列位置256/8=32byteLCD_WriteCmd(0x80|i);LCD_WriteCmd(0x80);for(j=0;j<32;j+)LCD_WriteData(0);voidLCD_PutStr(unsignedcharrow,unsignedcharcol,unsignedchar*puts)LCD_WriteCmd(0x30);/8BitMCU,基本指令集合LCD_Wr

溫馨提示

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

評論

0/150

提交評論