1602中文资料.docx

上传人:lao****ou 文档编号:396804 上传时间:2023-10-22 格式:DOCX 页数:27 大小:177.63KB
下载 相关 举报
1602中文资料.docx_第1页
第1页 / 共27页
1602中文资料.docx_第2页
第2页 / 共27页
1602中文资料.docx_第3页
第3页 / 共27页
1602中文资料.docx_第4页
第4页 / 共27页
1602中文资料.docx_第5页
第5页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《1602中文资料.docx》由会员分享,可在线阅读,更多相关《1602中文资料.docx(27页珍藏版)》请在第一文库网上搜索。

1、1602中文资料1602采用标准的16脚接口,其中:第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:Vo为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个IOK的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第

2、714脚:DOD7为8位双向数据线。第1516脚:空脚1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是OIOOOOO1B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”表13-4CGROM和CGRAM中字符代码与字符图形对应关系位000000101101000101O11OO11110101011I1OO11011110H110000CGRAM(1)09PP夕三PXOOO1(2)1

3、AQq口T十aqXOO1O(3)2BRbr川6XOOH(4)U3CSCSJJeCOO0100(5)$4DTdtX卜0101(6)%5EUeU口才tB00I10(7)&6FVfVT力二3PXO111(8)7GW8W7X=8x1000(1)(8HXhX*UJXX1OO12)9IYiy力J-1yX1O1O(3)tJZiZXVj千XX1O11(4)+IKCk(才tOX万11005)7N*n3八nn(8)/?O一O7-7D61602液晶模块内部的控制器共有11条控制指令,如表2所示,表指令表指令RSR/WD7D6D5D4D3D2D1DOI清显示000000000I2光标返回000000001置输入模式0

4、0000001I/DSU显示开/关控制0000001DCB5光标或字符移位000001S/CR/1*.6置功能00001D1NF*7置字符发生存贮器地址0001字符发生存贮器地址(AGG)S置数据存贮器地址001显示屐据存七藉地址(ADD)J读忙标志或地址01BF计数器地址(AC)P写数到CGRAM或DDRAM10要写的数,/从CGRAM或DDRAM读数11读出的数据它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址OOH位置指令2:光标复位,光标返回到地址OOH指令3:光标和显示模式设置I/D:光标移动方向,高

5、电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁指令5:光标或显示移位S/C:高电平时移动显示的文字,低电平时移动光标指令6:功能设置命令D1:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符指令7:字符发生器RAM地址设置指令8:DDRAM地址设置指令9:读忙信号和光标地址BF:为忙

6、标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据指令11:读数据DM-162液晶显示模块可以和单片机AT89C51直接接口,电路如图所示。AT89C51DMT62液晶模块液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,表3是DM-162的内部显示地址.12345678910I1121314151600010203040506070809OAOBOCODOEOF第一行404142434445464748494A4B4C4D4E4F

7、第二行比如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是C)IOOOOOoB(40H)+10000000B(80H)=11000000B(C0H)以下是在液晶模块的第二行第一个字符的位置显示字母“A”的程序:ORGOOOOHRSEQUP3.7;确定具体硬件的连接方式RWEQUP3.6;确定具体硬件的连接方式EEQUP3.5;确定具体硬件的连接方式MOVP1,#00000001B;清屏并光标复位ACA11ENAB1E;调用写入命令子程序MOVP1,#00111OOO

8、B;设置显示模式:8位2行5x7点阵ACA11ENAB1E;调用写入命令子程序MOVP1,#00001111B;显示器开、光标开、光标允许闪烁ACA11ENAB1E;调用写入命令子程序MOVP1,#0000011OB;文字不动,光标自动右移ACA11ENAB1E;调用写入命令子程序MOVP1,#0C0H;写入显示起始地址(第二行第一个位置)ACA11ENAB1E;调用写入命令子程序MOVP1,#01000001B;字母A的代码SETBRS;RS=IC1RRW;RW=O;准备写入数据C1RE;E=O;执行显示命令ACA11DE1A丫;判断液晶模块是否忙?SETBE;E=1;显示完成,程序停车AJ

9、MP$ENAB1E:C1RRS;写入控制命令的子程序C1RRWC1REACA11DE1AYSETBERETDE1AY:MOVP1,#OFFH;判断液晶显示器是否忙的子程序C1RRSSETBRWC1RENOPSETBEJBP1.7,DE1AY;如果P1.7为高电平表示忙就循环等待RETEND程序在开始时对液晶模块功能进行了初始化设置,约定了显示格式。注意显示字符时光标是自动右移的,无需人工干预,每次输入指令都先调用判断液晶模块是否忙的子程序DE1AY,然后输入显示位置的地址OCOH,最后输入要显示的字符A的代码41H。1602液晶仿真的一些发现看了JJJ的例子:字符液晶1602仿真;则试按自己习

10、惯也写了个,发现些问题JJJ说仿真时要屏蔽掉检查1CD忙的代码,否则会死循环WhiIe(DBPort&0x80);这句要屏蔽我写的程序总是无法正确仿真,因为不检查1CD忙,就不能保证1CD已经空闲查资料1CD清屏命令要1.64ms才完成,一般命令也要40us,最后加上足够的延时后才仿真通过后来又试了下其它1CD资料上的例程,仿真发现检查1CD忙标志也不会死循环分析了下,区别是:它不是一直在使能的情况下读忙信号,而是每次都有EN=O,再EN=I重新读取忙标志我还没做好实际实验电路板,没试过实际电路根据JJJ的描述和我的仿真实验,我猜仿真和实际硬件的区别是:实际硬件在EN=I的情况Fz1CD执行完

11、指令会更新1CD忙标志为0;而仿真需要EN=O,EN=I来重新读取忙信号,否则就不会更新,而一直以为是忙在JJJ的1CD1602.h加了几句,变成VVhiIe(DBPort&0x80)1cdEn=O;_nop_();1cdEn=I;_nop_();仿真就可以检查忙标志了自己的代码也做相应改动,都可以成功检查忙标志,也无需多加延时了在包含文件出里定义函数实体,则kei1调试时会出现莫名其秒的问题:在主程序.c里,执行”运行到指定行”,可能实际是执行到了.H里的函数所生成的代码,有点混乱暂停时,光标所指的行未必真是当前正在执行的,总之比较乱所以我把函数定义实体另放在一个c里,使用时添加到工程里,而

12、.h只有函数声明和主程序需要用的常量定义zu、还有一个奇怪的问题:执行命令0x05,输入方式设置为字符右移,光标不动时,仿真总是无法正常显示其它输入方式都正常!在液晶屏上显示一个字母A液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。这里介绍的字符型液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等等,这里以常用的2行16个字的DM-162液晶模块来介绍它的编程方法。DM-162采用标准的14脚接口,其中VSS为地电源,VDD接5V正电源,VO为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个IoK的电位器调整对比度。RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。D0D7为8位双向数据线。DM-162液晶模块内部的字符发生存储器(CGRoM)已经存储了160

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服