基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)

上传人:gg****m 文档编号:217462334 上传时间:2021-12-02 格式:DOCX 页数:12 大小:307.84KB
返回 下载 相关 举报
基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)_第1页
第1页 / 共12页
基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)_第2页
第2页 / 共12页
基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)_第3页
第3页 / 共12页
基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)_第4页
第4页 / 共12页
基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)》由会员分享,可在线阅读,更多相关《基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)(12页珍藏版)》请在金锄头文库上搜索。

1、基于proteus仿真1602液晶电子时钟(附1602字符液晶详细资料)LCD1-LMf6LXTAL1XTA12RSTALE EAP0.0/AXI P0.1/A31 P0.2/A32P0.3/A P0.4/A34 P0.5/A35 卩0.6/如6 P0.7/7P2D临P2.1ZCQP2.2/A10 P2.3/A11 P2.4/A12P2.5/M3 P2.6仙 4P2.7/A1521 22OOOOOOOOD0D1D2D3WD5D6D7PI.0/12P1.1/T2BRDO rsO rw0 e-#include#definc uint unsigncd int#define uchar unsign

2、ed charucharcodetablet = 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a;sbit rs=P2 0;sbit rw=P21;sbit e=P22;uchar hshi, hgc, mshi, mgc, shi, go, num,numl, num2, aa;void delay(uint z)uint x, y;for (x=z;x0;x)for(y=l10;y0;y-);void lcd_com(uchar com)rs=0;rw=0;Pl=com; delay(1); e二 1;e 二

3、0;void led dat (uchar dat)rs=l;rw=0;Pl=dat;delay (1);e=l;e=0;void init()led com(0x38);delay (1);lcd_com(0x0c);delay (1);led com(0x01);delay (1);TMOD二0X01;TH1二(65536-50000)/256;TL1= (65536-50000)%256;EA=1;ETO=1;TRO=1;void display(uchar hshi, uchar hgc, uchar mshi, uchar mgc, uchar shi, uchar ge)lcd_c

4、om(0x80);lcd_dat(tablehshi);lcd_com(0x81);led dat(tablchge);lcd_com(0x82);lcd_dat(table10);led com(0x83);lcd_dat(tablemshi);lcd_com(0x84);leddat( tablemge);lcd_com(0x85);lcd_dat(table10);lcd_com(0x86);led dat(tableshi);led com(0x87);lcddat (tablege);void main()init ();wh i1e (1)if (aa=20)aa=0;num+;n

5、um2=3;numl=34;if(num=60)num=0;numl+;if (numl=60)rm ml=0;num2+;if (num=24) num2二0;hshi=num2/10;hge=num2%10;mshi=numl/10;mge=numl%10;shi二 rm m/10;ge=num%10;display (hshi, hge, mshi, mge, shi, ge);)ivoid timerO() interrupt 1THO= (65536-50000)/256;THO二(65536-50000)/256;aa+;所谓1602是指显示的内容为16*2,即可以显示两行,每行1

6、6个字符。 目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同 的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型 液晶。1602液晶的正面(绿色背光,黑色字体)1602液晶背面(绿色背光,黑色字体)另一种1602液晶模块,显示屏是蓝色背光白色字体字符型LCD 1602通常有14条引脚线或16条引脚线的LCD,多出来的2 条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完 全一样,引脚定义如下表所示:引脚号引脚名电平输入/输出作用1USS,电源地2UCC电源*5V)3Uee对比调整电压4(RS:i0/1输入5

7、R/W0/1输入“问LCD写入指今或数据从LCDi矣取信意6E1,10输入使能信号,1吐谟取信息.一 0(下降沿朋行指令1DBO0/1输入/输岀数据总线Hne0(最低位8DB10/1输入/输岀数据总线Hne19DB20/1输入/输岀数据总线Hne210DB30/1输入/输岀数据总线Hne311DBIi|0/1输入/输岀数据总线HneU12DB5j0/1输入/输岀数据总线HneS13DB6j0/1输入/输岀数据总线Hne6仙DB70/1输入/输出数据总线Hne?(最高位)15AUCCD背光电源正极16K接地“D背光电源负极HD44780 内置了 DDRAM、CGROM 和 CGRAM。DDRAM

8、就是显示数据RAM,用来寄存待显示的字符代码。共80个字节, 其地址和屏幕的对应关系如下表:並示位置123A56140DDRAH第一行01H02H03H04HOSH96H27H地址第二行JlOHMH2H3H1山H06H67H也就是说想要在LCD 1602屏幕的第一行第一列显示一个A字,就要向DDRAM的 00H地址写入“A”字的代码(指A的字模代码,0x200x7F为标准的ASCII码, 通过这个代码,在CGROM中查找到相应的字符显示)就行了。但具体的写入是要 按LCD模块的指令格式来进行的,后面我会说到的。那么一行可有40个地址呀? 是的,在1602中我们就用前16个就行了。第二行也一样用

9、前16个地址。对应 如下:OOH 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH :40H 41H 42H 43H 44H 45H 46H 47H 48H 49H 4AH 4BH 4CH 4DH 4EH 4FH :DDRAM地址与显示位置的对应关系(事实上我们往DDRAM里的00H地址处送一个数据,譬如0x31(数字1 的代码,见字模关系对照表)并不能显示1出来。这是一个令初学者很容易出错 的地方,原因就是如果你要想在DDRAM的00H地址处显示数据,则必须将00H 加上8011,即8011,若要在DDRAM的01H处显示

10、数据,则必须将0111加上8011即 81H。依次类推。大家看一下控制指令的的8条:DDRAM地址的设定,即可以明 白是怎么样的一回事了),1602液晶模块内部的字符发生存储器(CGROM)已经 存储了 160个不同的点阵字符图形(无汉字),如下表所示,这些字符有:阿拉伯数字、英文字母的人小写、常用的符号、和日文假名等,每个字符都有个 固定的代码,比如大写的英文字母“A”的代码是01000001B (41II),显示时模 块把地址41H中的点阵字符图形显示出来,我们就能看到字母00000018R0W中宇符码与宇宇苻宇模关系对照表001000110100010101100111100010011

11、0101011itoo110111101111xxxxOOOOxxxxOOOlJ 了序IQ目xxxxOOIO xxxxOOUH)(6)xxxxGl 10 I (7)MXXXO1O0xxxxOtOIxxxxOIII (8)xxxxIOOO J (Dxxxx1001 (2)h|2IB|R|b|r| #I3C|S|g|s| $l4|D|T|d|t i|5!E|U|e|u| SISIFIUIfM ?|?|G|ld|g|w| l9TIVli|y|l柑IxxxxIOW xxxx1011l4)*:IJZ3|zl+|5|K|k|INnnW上表中的字符代码与我们PC中的字符代码是基本一致的。因此 我们在向DDR

12、AM写C51字符代码程序时甚至可以直接用Pl = A这样的方法。PC 在编译时就把先转为41H代码了。字符代码0x00OxOF为用户自定义的字符图形RAM(对于5X8 点阵的字符,可以存放8组,5X10点阵的字符,存放4组),就是CGRAM 了。后 面我会详细说的。0x200x7F为标准的ASCII码,OxAOOxFF为日文字符和希腊 文字符,其余字符码(0x10OxlF及0x800x9F)没有定义。那么如何对DDRAM的内容和地址进行具体操作呢,下面先说说 1ID44780的指令集及其设置说明,请浏览该指令集,并找出对DDRAM的内容和地 址进行操作的指令。共11条指令:HD44780的指令集1.清屏指令i指令功能指令编码执行 时I可 /RSRSR/VDB7DB6DBSDB4DB3DB2DB1DB0清屏000011-64功能:1清除液晶显示器,即将DDRAM的内容全部填入空白的ASCTT码20H;2光标归位,即将光标撤回液晶显示屏的左上方;3将地址计数器(AC)的值设为0。2 光标归位指令:指令功能指令编码驕/ASRSR/WDB7DB6DBSDBUDB3DB2DB108 0光标归位8-0x1.64功能:1把光标撤回到显示器的左上方;2把地址计数器(AC)的值设置为0;3保持DDRAM的内容不变3.进入模式设置指令指令功能指令编码/USRSR/WDB7DB6DB

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号