8C单片机的系统扩展m研讨.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8C单片机的系统扩展m研讨

7.4.3 LCD1602模块的命令 序号 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清屏 0 0 0 0 0 0 0 0 0 1 2 光标归位 0 0 0 0 0 0 0 0 1 * 3 输入模式设置 0 0 0 0 0 0 0 1 I/D S 4 显示与不显示设置 0 0 0 0 0 0 1 D C B 5 光标或屏幕内容移位选择 0 0 0 0 0 1 S/C R/L * * 6 功能设置 0 0 0 0 1 DL N F * * 7 CGRAM地址设置 0 0 0 1 CGRAM地址 8 DDRAM地址设置 0 0 1 DDRAM地址 9 读忙标志和计数器地址设置 0 1 BF 计数器地址 10 写DDRAM或CGRAM 1 0 要写的数据 11 读DDRAM或CGRAM 1 1 读出的数据 * * S/C R/L=01右移光标 I/D S=10,光标右移一格且地址计数器加1(06H) DCB=111,开显示和光标,光标闪烁(0FH) DL N F=110 8位数据,两行,5*7点阵(38H) 清屏:DDRAM全写空格,光标回到屏幕左上角,地址计数器清0 (01H); 光标归位:光标回到屏幕左上角; 输入模式设置:I/D光标移动方向;S全部屏幕。 I/D S 0 0,光标左移一格且地址计数器减1 0 1,屏幕内容全部右移一格,光标不动 1 0,光标右移一格且地址计数器加1(06H) 1 1,屏幕内容全部左移一格,光标不动 显示与不显示设置:D、C、D分别为字符显示、光标显示、光标闪烁 开关。 DCB=111,显示字符和光标,光标闪烁(0FH) 光标或屏幕内容移位选择:S/C屏幕内容/光标移动选择,0移动光标, 1移动屏幕内容;R/L移动方向选择,0左移,1右移。 S/C R/L=01,右移光标 功能设置:DL数据接口位数选择,0为4位,1为8位;N单/双行显示选 择,0单行,1双行;F点阵选择,0为5*7点阵,1为5*10点阵。 DL N F=110,8位数据,两行,5*7点阵(38H) #includereg51.h #includeintrins.h #define uchar unsigned char #define LCD_D P3 sbit RS=P2^5; sbit RW=P2^6; sbit E=P2^7; char code tab1[]={W,E,L,C,O,M,E,0x00}; char code tab2[]={Y,O,U,0x00}; * * 接口电路 7.4.4 LCD1602模块的接口示例 设计要求 液晶显示 WELCOME YOU P 3 . 0 1 0 P 3 . 1 1 1 P 3 . 2 1 2 P 3 . 3 1 3 P 3 . 4 1 4 P 3 . 7 1 7 P 3 . 6 1 6 P 3 . 5 1 5 P 2 . 7 2 8 P 2 . 5 2 6 P 2 . 6 2 7 U1 AT89C51 GND D 7 1 4 D 6 1 3 D 5 1 2 D 4 1 1 D 3 1 0 D 2 9 D 1 8 D 0 7 E 6 R W 5 R S 4 V S S 1 V D D 2 V E E 3 LCD1 LM016L VCC void delay(uchar N) {uchar i; while(N--) for(i=0;i250;i++);} void write_cmd(uchar cmd)// 写指令 {LCD_D=cmd;RS=0;RW=0;E=0;delay(15);E=1;} void write_byte(uchar dat)//写字节 {LCD_D=dat;RS=1;RW=0;E=0;delay(15);E=1;} void main() {uchar i;SP=0x70;E=1; write_cmd(0x01); //清屏 write_cmd(0x38); //功能设置: 8位数据,两行,5*7点阵 write_cmd(0x0F); //显示设置:开显示和光标,光标闪烁 write_cmd(0x06); //输入模式设置:光标右移1格且地址计数器加1 i=0;write_cmd(0x80); //DDRAM地址设置:00H,即第一行1列 while(tab1[i]!=0x00) {write_byte(tab1[i]);i++;} i=0; write_cmd(0xC0);//DDRAM地址设置:40H,即第二行1列 while(tab2[i]!=0x00) {write_byte(tab

文档评论(0)

ccx55855 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档