单片机+LCD1602液晶显示字符串.doc

单片机+LCD1602液晶显示字符串.doc

ID:55955195

大小:359.00 KB

页数:9页

时间:2020-06-18

单片机+LCD1602液晶显示字符串.doc_第1页
单片机+LCD1602液晶显示字符串.doc_第2页
单片机+LCD1602液晶显示字符串.doc_第3页
单片机+LCD1602液晶显示字符串.doc_第4页
单片机+LCD1602液晶显示字符串.doc_第5页
资源描述:

《单片机+LCD1602液晶显示字符串.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1602液晶显示字符串(附带程序)(注意说明:使用的实验板是郭天祥老师的52单片机板)基本操作电路状态字说明RAM地址映射图初始化相关指令的意思读时序图写时序图要想通过1602液晶来显示你想要显示字符串,其实是很简单的,程序虽然有点长,但是都是按照步骤来的。1602的五大步骤第一个步骤:检查LCD忙状态lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。第二个步骤:写指令数据到LCDRS=L,RW=L,E=高脉冲,D0-D7=指令码。第三个步骤:写显示数据到LCDRS=H,RW=L,E=高脉冲

2、,D0-D7=数据。第四个步骤:设定显示位置第五个步骤:LCD初始化设定只要这五步你弄懂了,什么样的字符串都可以按照你的方式显示。至于这其中的步骤的具体的方式,我们就要参照1602的资料和时序图!不过你大可不必,这份文档就足够了!#include#include#defineucharunsignedchar#defineuintunsignedintsbitdula=P2^6;sbitwela=P2^7;sbitLCD_RS=P3^5;sbitLCD_RW=P3^6;sbitL

3、CD_EN=P3^4;ucharcodedis1[]={"WLCOMETO"};ucharcodedis2[]={"JIANGGANHUA"};ucharcodedis3[]={"NANCHANG"};ucharcodedis4[]={"HANGKONGDX"};voiddelay(intms){inti;while(ms--){for(i=0;i<110;i++){_nop_();}}}bitlcd_busy(){bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;_nop_();_nop_()

4、;_nop_();_nop_();result=(bit)(P0&0x80);LCD_EN=0;returnresult;}voidlcd_wcmd(ucharcmd){while(lcd_busy());LCD_RS=0;LCD_RW=0;LCD_EN=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();_nop_();_nop_();LCD_EN=1;_nop_();_nop_();_nop_();_nop_();LCD_EN=0;}voidlcd_wdat(uchardat){whi

5、le(lcd_busy());LCD_RS=1;LCD_RW=0;LCD_EN=0;P0=dat;_nop_();_nop_();_nop_();_nop_();LCD_EN=1;_nop_();_nop_();_nop_();_nop_();LCD_EN=0;}voidlcd_pos(ucharpos){lcd_wcmd(pos

6、0x80);//数据指针=80+地址变量}voidlcd_init(){dula=0;wela=0;lcd_wcmd(0x38);//16*2显示,5*7点阵,8位数据delay(5);lc

7、d_wcmd(0x38);delay(5);lcd_wcmd(0x38);delay(5);lcd_wcmd(0x0c);//显示开,关光标delay(5);lcd_wcmd(0x06);//移动光标delay(5);lcd_wcmd(0x01);//清除LCD的显示容delay(5);}main(){uchari;delay(10);lcd_init();//初始化LCDwhile(1){lcd_wcmd(0x06);//向右移动光标lcd_pos(0);//设置显示位置为第一行的第1个字符i=0;while(dis

8、1[i]!=''){//显示字符lcd_wdat(dis1[i]);i++;delay(50);//控制两字之间显示速度}lcd_pos(0x40);//设置显示位置为第二行第1个字符i=0;while(dis2[i]!=''){lcd_wdat(dis2[i]);//显示字符"i++;delay(50);//控制两字之间显示速度}//闪动二次lcd_wcmd(0x01);//清除LCD的显示容delay(200);//控制转换时间lcd_wcmd(0x04);//向左移动光标lcd_pos(15);//设置显

9、示位置为第一行的第16个字符i=0;delay(50);while(dis3[i]!=''){//显示字符""lcd_wdat(dis3[i]);i++;delay(50);//控制两字之间显示速度}lcd_pos(0x4F);//设置显示位置为第二行的第16个字符i=0;while(dis4[i]!=''){lcd_wd

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。