用单片机来控制LCM模块,方式十分简单,LCM模块其内部可以看成两组寄存器,一个为指令寄存器IR,一个为数据寄存器DR,由RS引脚来控制。所有对指令寄存器或数据寄存器的存取均需检查LCM内部的忙碌标志BF,此标志用来告知LCM内部正在工作,并不允许接收任何的控制命令。而此位的检查可以令RS=0,用读取D7来加以判断,当D7为0时,才可以写入指令或数据寄存器。LCM控制指令共有11组,以下分别介绍。
1.清屏
清屏指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D00000000001
指令代码为01H,将DDRAM数据全部填入“空白”的ASCII代码20H,执行此指令将清除显示器的内容,同时光标移到左上角。
2.光标归位
光标归位指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D0000000001×
指令代码为02H,地址计数器AC被清0,DDRAM数据不变,光标移到左上角。×表示可以为0或1。
3.输入方式设置
输入方式设置指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D000000001I/DS
该指令用来设置光标、字符移动的方式。具体情况如下表所示。
状态位指令代码
功能
I/DS0004H光标左移1格,AC值减1,字符全部不动0105H光标不动,AC值减1,字符全部右移1格1006H光标右移1格,AC值加1,字符全部不动1107H光标不动,AC值加1,字符全部左移1格
4.显示开关控制
显示开关控制指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D00000001DCB
指令代码为08H~0FH。该指令控制字符、光标及闪烁的开与关,有3个状态位D、C、B,这3个状态位分别控制着字符、光标和闪烁的显示状态。
D是字符显示状态位。D=1时,为开显示;D=0时,为关显示。注意关显示仅是字符不出现,而DDRAM内容不变。这与清屏指令不同。
C是光标显示状态位。C=1时,为光标显示;C=0时,为光标消失。光标为底线形式(5×1点阵),光标的位置由地址指针计数器AC确定,并随其变动而移动。当AC值超出了字符的显示范围,光标将随之消失。
B是光标闪烁显示状态位。B=1时,光标闪烁;B=0时,光标不闪烁。
5.光标、字符位移
光标、字符位移指令的格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D0000000S/CR/L××
执行该指令将产生字符或光标向左或向右滚动一个字符位。如果定时间隔地执行该指令,将产生字符或光标的平滑滚动。具体情况如下表所示。
状态位指令代码
功能
S/CR/L0010H光标左滚动0114H光标右滚动1018H字符左滚动111CH字符右滚动
6.功能设置
功能设置指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D000000DLNF00
该指令用于设置控制器的工作方式,有3个参数DL、N和F,它们的作用是:
DL用于设置控制器与计算机的接口形式。接口形式体现在数据总线长度上。DL=1设置数据总线为8位长度,即D7~D0有效;DL=0设置数据总线为4位长度,即D7~D4有效。在该方式下8位指令代码和数据将按先高4位后低4位的顺序分两次传输。
N用于设置显示的字符行数。N=0为一行字符行;N=1为两行字符行。
F用于设置显示字符的字体。F=0为5×7点阵字符体;F=1为5×10点阵字符体。
7.CGRAM地址设置
CGRAM地址设置指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D00001A5A4A3A2A1A0
该指令将6位的CGRAM地址写入地址指针计数器AC内,随后,单片机对数据的操作是对CGRAM的读/写操作。
8.DDRAM地址设置
DDRAM地址设置指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D0001A6A5A4A3A2A1A0
该指令将7位的DDRAM地址写入地址指针计数器AC内,随后,单片机对数据的操作是对DDRAM的读/写操作。
9.读BF及AC值
读BF及AC指令的格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D001BFAC6AC5AC4AC3AC2AC1AC0
LCD的忙碌标志BF用以指示LCD目前的工作情况。当BF=1时,表示正在进行内部数据的处理,不接受单片机送来的指令或数据;当BF=0时,则表示已准备接收命令或数据。当程序读取此数据的内容时,D7为忙碌标志,而另外D6~D0的值表示CGRAM或DDRAM中的地址,至于是指向哪一地址则根据最后写入的地址设定指令而定。
10.写数据到CGRAM或DDRAM
写数据到CGRAM或DDRAM的指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D010
先设定CGRAM或DDRAM地址,再将数据写入D7~D0中,以使LCD显示出字形。也可将使用者自创的图形存入CGRAM。
11.从CGRAM或DDRAM读取数据
从CGRAM或DDRAM读取数据的指令格式如下:
控制信号控制代码RSR/WD7D6D5D4D3D2D1D011
先设定CGRAM或DDRAM地址,再读取其中的数据。
本文是关于液晶模块指令的介绍:http://www.xyhlcd.com/knowshow_938.html