基本指令
1、清除显示(DispClear 0x01)
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
L |
L |
L |
L |
L |
H |
功能:将 DDRAM 填满 “20H” (空格)代码,并且设定 DDRAM 的地址计数器(AC)为
00H;更新设置进入设定点将 I/D 设为 1,游标右移 AC 加 1。
2、地址归 0(HOME 0x20)
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
L |
L |
L |
L |
1 |
X |
功能:设定 DDRAM 的地 址寄存器为 00H,并且将游标移到开头原点位置;这个指
令并不改变 DDRAM 的内 容。
3、进入设定点ENTRY MODE SET(InputSet 0x04|1<<1|0) 0x06
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
L |
L |
L |
H |
I/D |
S |
功能:指定在显示数据的读取与写入时,设定游标的移动方向及指定显示的移位
I/D=1,游标右移,DDRAM 地址计数器(AC)加 1
I/D=0,游标左移,DDRAM 地址计数器(AC)减 1
S:显示画面整体位移
S I/D 功能描述
H H 画面整体左移
H L 画面整体右移
4、显示开/关设置 DISPLAY SET(DispSet 0x08|1<<2|1<<1|0) 0x0c
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
L |
L |
H |
D |
C |
B |
功能:控 制整体显示开关,游标开关,游标位置显示反白开关
D=1,整体显示开;D=0,整体显示关,但是不改变DDRAM 内容
C=1,游标显示开;C=0,游标显示关
B=1,游标位置显示反白开,将游标所在地址上的内容反白显示;B=0,正常显示
5、游标或显示移位控制CURSOR AND DISPLAY SHIFT CONTROL
(DispMov 0x10|0<<3|1<<2) 0x14
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
L |
H |
S/C |
R/L |
X |
X |
功能:这条指令不改变 DDRAM 的内容
S/C R/L 方向 AC 的值
L L 游标向左移动 AC=AC-1
L H 游标向右移动 AC=AC+1
H L 显示向左移动,游标跟着移动 AC=AC
H H 显示向右移动,游标跟着移动 AC=AC
6、功能设定FUNCTION SET (DispMod 0x20|1<<4|0<<2 ) 0x30
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
L |
H |
DL |
X |
RE |
X |
X |
功能:DL:8/4 位接口控制位 DL=1,8 位 MPU 接口;DL=1,4 位 MPU 接口
RE:指令集选择控制位 RE=1,扩充指令集;RE=0,基本指令集
同一指令的动作不能同时改变 DL 和 RE,需先改变 DL 再改变 RE 才能确保设置正确
7、设定 CGRAM地址 (CGRAM 0x40)
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
H |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
功能:设定 CGRAM 地址 到地址计数器(AC) ,AC 范围为 00H~3FH 需确认扩充指令
中 SR=0(卷动位置或 RAM 地址选择)
8、设定 DDRAM地址 (DDRAM 0x80)
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
H |
AC6 |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
功能:设定 DDRAM 地址到地址计数器(AC)
第一行 AC 范围 80H~8FH
第二行 AC 范围 90H~9FH
备注:ST7920 控制器的 128×64 点阵液晶其实原理上等同 256×32 点阵,第三行对应的 DDRAM 地址紧接第一行;第四行对应的 DDRAM 地址紧接第二行。用户在使用行反白功能时, 如果第一行反白,第三行必然反白。第二行反白,第四行必然反白。这是正常现象。
9、状态检测 忙标志位(StatusBusy 1<<7)
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
H |
L |
BF |
L |
ON/OFF |
RST |
L |
L |
L |
L |
功能:读 忙信号标志位(BF)、复位标志位(RST)以及显示状态位(ON/OFF)。
BF=H:内部正在 执行操作; BF=L:空闲状态。
RST=H:正处于 复位初始化状态; RST=L:正常状态。
ON/OFF=H: 表示显示关闭; ON/OFF=L:表示显示开。
10、写显示数据
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
H |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
功能:写 数据到DD RAM,DD RAM是存储图形显示数据的,写指令执行后Y地址计数器自动加1。D7-D0位数据为1表示显示,数据为0表示不显示。写数据到DD RAM前,要先执行“设置页地址”及“设置列地址”命令。
11、读显示数据
CODE: RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
H |
H |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
功能:从DD RAM读数据,读指令 执行后Y地址计数器自动加1。从DD RAM读数据前要先执行“设置页地址” 及“设置列地址”命令。
12、设置显示起始行 (Start_line 0xc0|0xxx)
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
H |
H |
行地址(0~63) |
功能:执 行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫描同 步,当扫描完一行后自动加一。
13、设置页地址 (Page_add 0xb8|0xxx)
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
H |
L |
H |
H |
H |
页地址(0~7) |
功能:执 行本指令后,下面的读写操作将在指定页内,直到重新设置。页地址就是DD RAM 的行地址,页地址存储在X地址计数器中,A2-A0可表示8页,读写数据对页地址没有影响,除本指令可改变 页地址外,复位信号(RST)可把页地址计数器内容清零。
DD RAM地址映像 表
14、设置列地址 (Col_add 0x40|0xxx)
CODE: R/W D/I DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L |
L |
L |
H |
列地址(0~63) |
功能: DD RAM 的列地址存储在Y地址计数器中,读写数据对列地址有影响,在对DD RAM进行读写操作后,Y地址自动加一。
绘图 RAM( GDRAM)