LCD1602帮助手册.docx

上传人:b****3 文档编号:10214216 上传时间:2023-05-24 格式:DOCX 页数:8 大小:862.34KB
下载 相关 举报
LCD1602帮助手册.docx_第1页
第1页 / 共8页
LCD1602帮助手册.docx_第2页
第2页 / 共8页
LCD1602帮助手册.docx_第3页
第3页 / 共8页
LCD1602帮助手册.docx_第4页
第4页 / 共8页
LCD1602帮助手册.docx_第5页
第5页 / 共8页
LCD1602帮助手册.docx_第6页
第6页 / 共8页
LCD1602帮助手册.docx_第7页
第7页 / 共8页
LCD1602帮助手册.docx_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

LCD1602帮助手册.docx

《LCD1602帮助手册.docx》由会员分享,可在线阅读,更多相关《LCD1602帮助手册.docx(8页珍藏版)》请在冰点文库上搜索。

LCD1602帮助手册.docx

LCD1602帮助手册

LCD1602帮助手册

正面图

背面图

正面图为第一图,管脚应排列在左上方,左边第一脚为管脚1,向右依次为2,3,4………15,16。

背面一般也有标注,并且附带了管脚对应的作用。

其中第三脚VO为对比度调节脚,一般外接滑动变阻器,调节输入的电压,来调节明暗度(可以直接接地,不过直接接地,需要斜着屏幕,才能看见LCD是否显示字符,正面看都是黑黑的一格一格的)。

15,16角一般为背光LED灯源,一个接VCC(一般为15脚),一个接GND(一般为16脚),最好接入限流电阻,不接也可使用,不过会缩短寿命,这两角可以不接,如果不接,在黑暗的室内,显示效果欠佳。

管脚编号如下图所示:

管脚对应符号

对LCD的操作,有四种操作,分别为:

读状态,读数据,写指令和写数据,一般常用的为读状态,写指令和写数据。

操作图如下:

当RS端为低电平,RW端为高电平,E为高电平是,对LCD1602的操作为读状态操作,这时,可以对LCD的状态进行读取,读取通过D0~D7的端口读取。

其他操作相似,对照图,即可完成,但是有个读写时序的要求,时序图见下图:

读操作时序

对LCD进行读操作时,先将RS置为低电平(0V),然后将RW样置为高电平(+5V),然后有个tsp1的延迟(但是一般这个延迟为ns级,一个单片机的指令周期通常都为us级,一般不需要特别延迟,如果程序有一定错误的时候,可以稍微延迟一下),然后再将E置为1,然后延迟td时间(td一般也为ns级,可以适当延迟一点点),然后读取D0~D7的数据。

写操作也是类似的,将RS,RW,E端口进行相应操作即可完成,写数据和写命令的操作,延迟的时间都很短,程序不稳定的话,可以延迟个1us,一般就可以了。

LCD1602的指令有11条,如下图:

(指令表)

从之前的操作来看,对照此表,不难看出,指令表的前8条都是命令指令,RS,RW都为0,所以操作时,都是写命令操作,D7~D0的数值的不同,代表了操作的不同,比如D0~D7为0x01时,对LCD的操作命令就为清屏显示,第二条指令为光标返回指令,在D0处有个※标记,这表示,不论此位的数据为1还是为0,对此命令都无效,即D0~D7端口写入0x20为光标返回指令,D0~D7端口写入0x03,此命令也为光标返回指令。

其他带※的也是如此,不过我一般都将※为置为0,这样在写数据的时候比较好算,否则还要加加减减的,比较麻烦。

指令表中的第三条指令为设置输入模式,数据D2~D7已经定型,但是D0和D1不是※号,也没定型,这就是我们要选择的指令,比如D1框内为I/D,I/D如果为1,则为光标增量式后移,如果I/D为0,则减量式左移。

S位为1,则表示整体可以移位,S为0,则表示整体不能移位。

表中的这些参数,可在LCD使用手册中查看,这里就不多讲了。

显存地址DDRAM

接下来,讲解上面这个图,上面写着LCD16字X2行,这代表的意思是,LCD1602一行可以显示16个字符,最多可以显示2行,左边有一个斜线,右边有一个斜线,这表示,在这里面的地址的都是可以直接显示在LCD屏幕上的,即地址为:

00~0f,40~4f都是直接显示出来的,我们只要将字符写入到这个地址就可以显示在屏幕上,00~0f,正好是16个,但是0f地址后面还有一串地址,10~27的地址,这个地址是不能直接显示在LCD屏幕上的,但是并不代表,不能显示在LCD屏幕上,这些地址也可以写入字符,但是LCD屏幕上,并不能看到,但是我们可以通过整体左移的命令,将这些地址上的写的字符显示在LCD屏幕上,这是他们存在的价值。

0x50~0x67的地址也是一样的。

但是我们将字符写入LCD可以显示的地址(显存地址,即可以显示字符的地址)的指令是一个写命令,对应指令表,即第7条指令,从指令表中可以看出,指令中的数据的D7位被置为1,所以我们写指令时,必须加上故,显存地址为0x00的地址,写入指令时,就变成了0x80,0x0F的显存地址写入命令时,就变成了0x8f。

上图为CGROM表,也就是LCD1602已经写好了的字符,这些字符都存在CGROM表,比如说我们要写字符H,那么对应表中就是0x48,对CGROM的操作为写数据操作(只有指令表的前8条是命令),我们在LCD上写字符时,先将光标定位到你要写的位置,然后再查找你要写入的字符的CGROM地址,LCD屏幕即显示你要的字符了,由于LCD中CGROM的字符表的代码和电脑的ASIIC是对应的,所以我们在写数据时,也可以直接写为P0=’H’,电脑会自动将H字符代码转换为0x48,,这样我们写字符就很方便。

看到这里,你已经大概知道LCD是怎么一回事了,只是还没实践过,所以你需要写代码了,在对LCD操作时,我们首先需要对工作方式进行设置,显示状态进行设置,然后清屏显示,设置输入方式,这是你在写字符之前要对LCD进行的设置,对照指令即可了,然后你可以随意写入你想写的任何字符了。

下面要讲的就是,如何自己进行字符的写入,有时候你想在LCD1602上写入自己想要显示的字符,但是CGROM中显然没有,这就需要你自己去写了,所以你首先需要使用字模软件,去你想要的字符进行取模,比如你要写入一个“日”字到LCD中,你首先要对它取模,因为LCD1602液晶只支持5X7和5X10,所以你取模也要在这个范围内,如下图:

这是一个5X8大小的取模,因为最后一行为光标行,所以我们只能对上面七个进行取模,所以也就是5X7大小的,因为16进制,四个为一个,所以第一行的代码也就是1F,其他也是按规则取的,取模后,你就得到了8个字节的数据,这8个字节数据就是一个“日”字,但是我们没办法把它写入到LCD的显存00H~27H位,我们只能先写入CGRAM,CGRAM其实也就是CGROM,CGRAM只是在CGROM上很小的一块,如下图:

这是我们之前讲的CGROM图,这个是LCD自带的,按照电脑的ASIIC码规则存放的,但是其中高位为0000H的一列,下面写着一个CGRAM,其实这一列就是我们可以自己写入字符的地址,

可以看到这个就是CGRAM,它是CGROM的第一列,数一下,就可以知道一共有16个,理论上应该是可以写16个自定义的字符才对。

但是这只是理论,其实我们只能写入8个和4个,为什么呢?

因为我们这个操作被指令表里的指令限制了。

这是之前讲的指令表,我们要讲字符写入CGRAM,我们就要使用表格中的第7个指令,可以看到指令表中D6和D7被限制了,只能是01,D7~D4是高位,而我们将字符写入CGRAM不用考虑高位地址,因为他们都一样是0000,我们只要考虑地位地址就可以,但是因为指令表限制了,所以1000~1111我们是没有办法使用了,所以我们能用的只有0000~0111的这八个,所以我们需要使用D5~D3,因为有八个地址,我们需要3位,才能表示完,而且我们自定义的字符也需要八位才能写入

所以,D0~D2我们需使用,这样我们才能表示完000表示第一行,我们需要写入1FH,001表示第二行,我们需要写入11H,以此类推,D5~D3则是表示CGRAM地址的,000表示第一个,001表示第二个,一直表示到0111为止,当然LCD1602也可以显示5X10的字符,所以你应该知道了,5X10,我们只能表示4个的原因了吧,写入和5X7的“日”字是一样的。

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

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2