LCD1602指令说明详见表7-5。
表7-5 LCD1602指令说明(DB0~DB7为指令的内容)
LCD1602液晶模块内部的控制器共有11条控制指令,按表7-5中的序号进行以下说明:
指令1:清除显示,指令码0x01,其实质是将DDRAM全部写入空格的ASCII码0x20,地址计数器AC清0。该过程需要的时间相对较长。
指令2:光标复位,光标返回到地址00H(即复位到屏左上方),地址计数器AC清0,DDRAM内容不变,完成光标复位的时间相对较长。
指令3:光标和显示模式设置。N——设置光标的移动方向,当N=1时,读或写一个字符后,地址指针加1,光标加1;当N=0时,读或写一个字符后,地址指针减1,光标减1。S——用于设置整屏字符是否左移或右移,当S=1且N=1时,则写一个字符时整屏显示左移;当S=1且N=0时,则写一个字符时整屏显示右移。若设置S=0时,则整屏字符移动无效。所以常用的光标右移指令为0x06。
指令4:显示开/关控制。D——控制整体显示的开与关,高电平表示开显示,低电平表示关显示;C——控制光标的开与关,高电平表示有光标,低电平表示无光标;B——控制光标是否闪烁,高电平闪烁,低电平不闪烁。常用的开显示关光标指令为0x0c。
指令5:命令光标或字符移动。S/C控制光标或字符,R/L控制左、右,具体如下:
(S/C)(R/L)=(0)(0)时,文字不动,光标左移一格,AC减1;(www.xing528.com)
(S/C)(R/L)=(0)(1)时,文字不动,光标右移一格,AC加1;
(S/C)(R/L)=(1)(0)时,文字全部右移一格,光标不动;
(S/C)(R/L)=(1)(1)时,文字全部左移一格,光标不动。
指令6:功能设置命令。DL——高电平时为8位数据总线,低电平时为4位数据总线;N——低电平时单行显示,高电平时双行显示;F:——低电平时显示5×7的点阵字符,高电平时显示5×10的点阵字符。常用的两行、8位数据、5×7的点阵的指令为0x38。
指令7:指令为0x40+add(注:可这样理解,当DB7~DB0的低6位全为0时,DB7~DB0可写成0x04,当DB7~DB0的高两位全为0时,DB7~DB0可写成add,合在一起则为0x40+add,该指令用于设置自定义字符CGRAM地址。Add(DB5~DB0)的前3位即D5D4D3选择字符,D2D1D0选择字符的8位字模数据。
指令8:指令为0x80+add,用于设置下一个要存入数据的DDRAM地址。add范围是0x00~0x27,对应第一行显示,0x40~0x67对应第一行显示。每一行可存入40个字符,默认情况下1602只能显示其中的前16个字符,可以通过指令6的字符移动指令来显示其他内容。
指令9:读忙信号和光标地址。BF为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果低电平表示闲,可以操作。
总结:LCD1602的常用指令有:清除显示—0x20,光标右移—0x06,开关显示光标—0x0c,两行8位数据5×7点阵—0x38。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。