这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 国产MCU » IIC的LCD1602的相关知识

共2条 1/1 1 跳转至

IIC的LCD1602的相关知识

专家
2023-10-21 15:05:31     打赏

  之前为了能测试芯圣HC18M003的IIC设备,准备使用IIC的LCD1602来测试。IIC的IIC接口控制使用PCF8574T。为此这里先介绍IIC的LCD1602的相关知识。PCF8574T芯片可以通过IIC协议进行IO口扩展。

一、PCF8574T与LCD1602的接线图

图片1.png由图可以看出,接线如下(只统计数据口、控制口):

PCF8574T

LCD1602

P0

RS

P1

RW

P2

CS

P7

DB7

P6

DB6

P5

DB5

P4

DB4

二、IIC操作时序

1、写模式(IO 用作输出)

  I2C 主机写入地址后,接着写入八位数据,这八位数据表示 PCF8574 八个 IO 的输出电平,例如写入的数据第 6 位为 1,则 PCF8574 的 P5 口输出高电平。

  I2C 主机写一字节数据流程:start > write_write_address > master_receive_ack > write_data > master_receive_ack > stop

图片2.png2、读模式(IO 用作输入)

  I2C 主机写入地址后,接着读取八位数据,这八位数据表示 PCF8574 八个 IO 的输入电平,例如读取的数据第 6 位为 1,则 PCF8574 的 P5 口输入为高电平。

  I2C 主机读一字节数据流程:start > write_read_address > master_receive_ack > receive_data > master_send_nack > stop

图片3.png三、LCD1602的操作

1、时序特性

图片4.png

图片5.png写时序

图片6.png 

读时序

2、引脚功能

图片7.png图片8.png:忙标志 为"1"时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结束,即忙标志为"0"时。

3、操作指令

图片9.png

4、显示位与DD RAM 地址的对应关系

  HD44780内置DDRAM、CGROM和CGRAM。

DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,地址和屏幕的对应关系如下:

图片10.png  也就是说想要在LCD1602屏幕上的第一行第一个位置显示一个“A”,就要向DDRAM的00H地址写“A”字的代码就OK了,但具体的写入是要按照LCD模块的指令格式来进行的。

  但是我们发现每一行有40个地址,而我们们每行只能显示16个字符,其实际多的位置可以实现字符的移动,我们在看大佬作品的时候可能会见到有的字符是从左面移过来,他的实现形式就用到了着些多的地址。将数据先写到未显示的地址然后使用指令进行左移就可以了。

  那么1602显示的地址又是什么呐?下图就是DDRAM地址与显示位置的对应关系。

图片11.png二、总结

  理解了LCD1602的特点,和PCF8574T的连接以及PCF8574T的特点,那么对它们两个构成的模块的编程应该就不难了。整个处理过程就是通过IIC协议,把数据由串行模式转换为并行模式,呈现给LCD1602的引脚上,间接向LCD1602发送指令或数据,从而实现字符的显示。这里要注意的是,通过IIC传递给PCF8574T的数据,最后会反映在PCF8574T的输出引脚上(具体是那些引脚,请查看最前面的电路图),这些数据中是包括LCD1602的CS、RS、RW信号的。而对LCD1602操作中用到的指令和数据,是通过PCF8574T的引脚P7~P4实现的,这就意味着对LCD1602的操作是以4位数据方式,而不是传统的8位数据来进行的。也就是说LCD1602的引脚中D0~D3是没有被使用的,这一点一定要注意。

 

 





关键词: IIC LCD1062     PCF8574T    

院士
2023-11-22 10:59:21     打赏
2楼

谢谢分享。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]