資源描述:
《LCD12864液晶顯示器C51單片機(jī)子程序.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、#include#ifndef__LCD12864_H__#define__LCD12864_H__#include#defineucharunsignedchar#defineuintunsignedint/*端口定義*/#defineLCD_dataP0//數(shù)據(jù)口sbitLCD_RS=P2^7;//寄存器選擇輸入sbitLCD_RW=P2^6;//液晶讀/寫控制sbitLCD_EN=P2^5;//液晶使能控制sbitLCD_PSB=P1^4;//串/并方式控制#definedelayNOP()
2、;{_nop_();_nop_();_nop_();_nop_();};/*延時(shí)函數(shù)*/voiddelay1(intms){while(ms--){uchari;for(i=0;i<250;i++){_nop_();_nop_();_nop_();_nop_();}}}/*檢查LCD忙狀態(tài)*//*lcd_busy為1時(shí),忙,等待。lcd-busy為0時(shí),閑,可寫指令與數(shù)據(jù)。*/bitlcd_busy(){bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;delayNOP();result=(bit)(P0&0x8
3、0);LCD_EN=0;return(result);}/*寫指令到LCD*//*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。*/voidlcd_wcmd(ucharcmd){//while(lcd_busy());LCD_RS=0;LCD_RW=0;LCD_EN=0;_nop_();_nop_();P0=cmd;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}/*寫數(shù)據(jù)到LCD*//*RS=H,RW=L,E=高脈沖,D0-D7=數(shù)據(jù)。*/voidlcd_wdat(uchardat){//whi
4、le(lcd_busy());LCD_RS=1;LCD_RW=0;LCD_EN=0;P0=dat;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;}/*顯示字符串函數(shù)*/voidlcd_string(uchar*pt){while(*pt!='