lcd1602怎么利用按键清屏_LCD1602指令集解读

本文详细介绍了LCD1602显示模块的11条指令,包括清屏、光标归位、模式设置、显示控制、移动方向设置、功能设定、CGRAM地址设置、DDRAM地址设置、读取状态和数据写入等操作。这些指令对于理解和使用LCD1602至关重要,特别是对于自定义字符和控制显示内容的移动方向有着重要作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LCD1602指令集(11个)

1、清屏指令(clear display)   RS=0 ,R/w=0, 01H

功能:清除液晶显示器,即将DDRAM中的内容全部填入20H(空白字符)

光标撤回显示屏左上方

将地址计数器(AC)设为0,

光标移动方向为从左向右,并且DDRAM的自增量为1(I/D=1).

5801363.html

95ae8f16c6e90545e26eebd0efbaad02.png

2、光标归位指令(Return Home)RS=0 ,R/w=0, 0000_001X

功能:将地址计数器(AC)设为00H,

DDRAM内容保持不变,光标移至左上脚

63b6e7ec81d58ded229be0187dd59c7c.png

5801363.html

3、进入模式设置指令(Entry Mode Set)

功能: 设 定 每 次 定 入 1 位 数据 后 光 标 移 位 方 向 并且设 定 次 写 入 一 个 字符是 否移动 。

I/D = 0  光标左移,DDRAM地址自增1     I/D = 1  光标右移,DDRAM地址自增1 (当从CGRAM中读取或写入数据时,CGRAM操作与DDRAM相同)

SH = 0 且 DDRAM是读操作(CGRAM读或写),整个屏幕不移动

SH = 1 且 DDRAM是写操作,整个屏幕移动,移动方向由I/D决定

71a0873c77378494b21ead5be74caac7.png

5801363.html

4、显示开关控制(Display ON/OFF Control)

功能: D = 1 , 显示功能开   D = 0 , 显示功能关,但是DDRAM中的数据依然保留

C = 1 , 有光标          C = 0 , 没有光标

B = 1 , 光标闪烁       B = 0 , 光标不闪烁

5801363.html

12c354eb5682c0e327167f27cbed4c4e.png

5、设置显示屏或光标移动方向的指令

功能:整屏的移动或光标移动

S/C =0  R/L =0 光标左移 ,地址计数器减1(即显示内容和光标一起左移)

S/C =0  R/L =1 光标右移 ,地址计数器加1(即显示内容和光标一起右移)

S/C =1  R/L =0 显示内容左移 ,光标不移动

S/C =1  R/L =1 显示内容右移 ,光标不移动

c1b0e62f2494c7244f2c89d10a06af8f.png

5801363.html

6、功能设定指令

功能:设定数据总线位数、显示的行数及字形。

DL=1 ,数据总线是8位    DL=0 ,数据总线是4位

N =0  ,显示一行             N=1  ,显示两行

F  =0 , 5*8 点阵/字符                   F=1 ,5*11点阵/字符

835bafe11dfb0820193c498e24a2020b.png

5801363.html

7、设定 CGRAM地址指令

功能:设定下一个要存入数据的CGRAM地址

DB5DB4DB3为字符号,即将显示该字符用到的字符地址

DB2DB1DB0为行号

6e6c374f3c097b65ea206ab1a9e372b1.png

5801363.html

补充理解:在芯片中内置了192个常用字符的字模,存于CGROM(character generate ROM)中,还有8个允许用户自定义字符(也就是可以显示八个中文字)的RAM,也就是CGRAM。具体描述为下图:

0c22da740c4588088578021b1dc9f849.png

5801363.html

当输入的地址是41H时,显示字符A.

由上图可知:

我想将自定义的一个汉子或图形放在第六个CGRAM中,所以可以确定字符码就为101(字符码000-->111),

所以   DB5DB4DB3 = 101

因此CGRAM的地址设置为01101X'X'X

这是要输入字符5的过程(原理如下图所示)

01101000    0x07

01101001    0x10

.................

01101111    0x00

5801363.html

6d247eb146f4729d226c0ef65c1d2b6c.png

8、设置DDRAM地址

f5bce1c01b8b51a9c73a2d7a5036ce2d.png

DDRAM的地址与显示屏对照关系(N=LOW)

f66c9dcb8f39257f18557577c12a1587.png

5801363.html

5801363.html

9、读取忙信号或AC地址指令

如果BF=1 忙碌,无法接收数据或指令

BF=0可以接收数据、指令

读取地址计数器的内容

5801363.html

59fa6ecb1dea55ff1d0669342d9f6f96.png

10、向DDRAM或CGRAM写入数据

写指令    输 入 : RS=L , RW=L , E= 下 降沿脉冲 , DB0 ~ DB7= 指令 码

写数据    输 入 : RS=H , RW=L , E= 下 降沿脉冲 , DB0 ~ DB7= 数据

5801363.html

ac728b9ddc66038d9ae46afec01d8429.png

11、从DDRAM或者CGRAM读数据

读状态   输 入 : RS=L , RW=H , E=H 输出: DB0 ~ DB7= 状态字

读数据   输 入 : RS=H , RW=H , E=H 输出: DB0 ~ DB7= 数据

e0249e9cc7000d585fd1caaa94540044.png

5801363.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值