通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
通用 1602
液晶显示模块使用手册
伟纳电子http://www.willar.com
- 1 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
一. 基本特征
1.显示特性
z 单 5V 电源电压,低功耗、长寿命、高可靠性
z 内置 192 种字符(160 个 5×7 点阵字符和 32 个 5×10 点阵字符)
z 具有 64 个字节的自定义字符 RAM,可自定义 8 个 5×8 点阵字符或四个 5×11 点阵字符
z 显示方式:STN、半透、正显
z 驱动方式:1/16DUTY,1/5BIAS
z 视角方向:6点
z 背光方式:底部 LED
z 通讯方式:4位或 8 位并口可选
z
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
的接口特性,适配 MC51 和 M6800 系列 MPU 的操作时序。
2.物理特性
外型尺寸 80*36*14 单位
可视范围 64.6(W) X 16.0(H) mm
显示容量 16字符二行
点尺寸 0.55 X 0.75 mm
点间距 0.08 mm
3.外型尺寸图
4.结构块图
- 2 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
二 电气参数:
1 极限参数
项 目 符 号 最小值 最大值 单位 注 释
逻辑 Vdd 0 7.0 V 电源电压
LCD 驱动 Vdd – Vee 0 6.5 V
输入电压 Vi 0 Vdd V
操作温度 Top 0 50 ℃
储存温度 Tstg -20 70 ℃
湿度 — — 90 %RH
说明:倘若在超过上述极限参数的条件下长期使用,极易永久性地损坏本模块,因而建议用户在下列
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
中的电性能参数范围内,使用本模块。
2 电气参数 (Vcc=5v±5%,Ta=+25℃)
项 目 符 号 条 件
最小值 典型值 最大值
单 位
逻辑 Vdd 4.5 5.0 5.5 电源电压
LCD 驱动 Vdd–Vee
0 — 5.0
高电平 Vih 0.7Vdd — Vdd 输入电压 低电平 Vil -0.3 — 0.55
高电平 Voh -Ioh=1mA 0.75Vdd — — 输出电压 低电平 Vol Iol=1mA — — 0.2Vdd
V
频 率 fosc Rf=91kΩ±2% 190 270 350 KHz
工作电流 IDD VDD=5.0V 2.0 2.4 mA
- 3 -
- 4 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
LCD 驱动电压
(推荐电压) Vdd–Vee 0 5.0 5.0 V
三 接口定义:
管脚号 符号 功 能
1 Vss 电源地(GND)
2 Vdd 电源电压(+5V)
3 V0 LCD 驱动电压(可调)
4 RS
寄存器选择输入端,输入 MPU 选择模块内部寄存器类型信号:
RS=0,当 MPU 进行写模块操作,指向指令寄存器;
当 MPU 进行读模块操作,指向地址计数器;
RS=1,无论 MPU 读操作还是写操作,均指向数据寄存器
5 R/W
读写控制输入端,输入 MPU 选择读/写模块操作信号:
R/W=0 读操作;R/W=1 写操作
6 E
使能信号输入端,输入 MPU 读/写模块操作使能信号:
读操作时,高电平有效;写操作时,下降沿有效
7 DB0 数据输入/输出口,MPU 与模块之间的数据传送通道
8 DB1 数据输入/输出口,MPU 与模块之间的数据传送通道
9 DB2 数据输入/输出口,MPU 与模块之间的数据传送通道
10 DB3 数据输入/输出口,MPU 与模块之间的数据传送通道
11 DB4 数据输入/输出口,MPU 与模块之间的数据传送通道
12 DB5 数据输入/输出口,MPU 与模块之间的数据传送通道
13 DB6 数据输入/输出口,MPU 与模块之间的数据传送通道
14 DB7 数据输入/输出口,MPU 与模块之间的数据传送通道
4 位方式通讯时,不
使用 DB0-DB3
15 A 背光的正端+5V
16 K 背光的负端 0V
四 操作时序图
1 写操作时序
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
tAS
- 5 -
项 目 符号 条件 最小值 最大值 单位
E 周期 tcycE 1,000 —
E 脉宽(高电平) PWEN 450 —
E 上升/下降时间 tEr,tEf — 25
地址设置时间(RS,R/WtoE) tAS 140 —
地址保持时间 tAH 10 —
数据设置时间 tDSW 195 320
数据保持时间 tH
Vdd=5V±5%
Vss=0V
Ta=25℃
10 —
ns
2.读操作时序
PWEN
tEr
tAH
tAH
tEr
tDSW tH
tcycE
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIL1 VIL1
VIL1
RS
R/W
E
DB0~DB7 Valid data
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
Valid dataDB0~DB7
E
R/W
RS
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
VIH1
VIL1
- 6 -
项 目 符号 条件 最小值 最大值 单位
E 周期 tcycE 1,000 —
E 脉宽(高电平) PWEN 450 —
E 上升/下降时间 tEr,tEf — 25
地址设置时间(RS,R/WtoE) tAS 140 —
地址保持时间 tAH 10 —
数据延迟时间 tDDR — 320
数据保持时间 tDHR
Vdd=5V±5%
Vss=0V
Ta=25℃
20 —
ns
五 模块显示特性详解:
z 本模块适宜与 4 位或者 8 位 MPU 接口,接口由使能信号 E 控制;标志位 BF 为模块内部工作状态标
志,MPU 访问模块时,首先应判断状态标志位 BF;在电源 Vdd=+5V 情况下,模块与 MPU 通讯速度
可以达到 2MHz;
z 本模块提供 5X8 点阵或者 5X7 点阵、带光标显示的字符结构的显示模式,用户通过指令设置可以方
便地进行选择;
z 本模块提供了显示数据缓冲区 DDRAM、字符发生器 CGROM 和字符发生器 CGRAM;用户可以使用
CGRAM 来存储自己定义的最多 8 个 5X8 点阵的图形字符的字模数据;
z 本模块字符在 LCD 显示屏上的显示位置与该字符的字符代码在显示缓冲区 DDRAM 内的存储地址一
一对应;
z 本模块通过指令设置来选择占空比(duty)周期,选择参数如下:
单行 5X8 点阵字符带光标显示:1/8
单行 5X10 点阵字符带光标显示:1/11
双行 5X8 点阵字符带光标显示:1/16
z 本模块提供了较为丰富的指令设置:
清显示;光标回原点;显示开/关;光标开/关;显示字符闪烁;光标移位;显示移位
通过选择相应的指令设置,用户可以实现多种字符显示样式;
z 本模块提供了内部上电自动复位电路,当外加电源电压超过+4.5v 时,自动对模块进行初始化操作,
将模块设置为默认的显示工作状态;
tcycE
tDHRtDDR
tEr
tAH
tAH
tEr
PWEN
tAS
VIH1 VIH1
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
z 本模块采用低功耗 CMOS
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
1 软硬件注解
1-1 模块组件内部结构
模块组件内部主要由 LCD 显示屏(LCD panel)、控制器(controller)、列驱动器(segment driver)和
偏压产生电路构成。
LCD 显示屏为 common 和 segment 交叉形成的点阵,以 5×8 点阵的字符结构模式和设置的显示字符
数目,选择适宜的行数,分单屏、双屏或者多屏显示规定的字符。对于双屏或者多屏显示结构的 LCD,每
一显示屏结构部分,均由各自独立的使能信号 E 控制。
列驱动器与控制器配套使用,它接收来自控制器的振荡、帧同步输出、串行输出的数据和移位及锁存
脉冲,产生列 segment 交流扫描驱动信号。
控制器接收来自 MPU 的指令和数据,控制着整个模块的工作,由 CGROM、CGRAM 和 DDRAM 等
字符存储区域、以及与 MPU 和列驱动器的 I/O 接口、指令寄存和译码机构、地址计数器等部分组成。在
控制器的控制下,模块通过数据总线 DB0~DB7 和 E、R/W、RS 三个输入控制端与 MPU 接口。这三根控
制线按照规定的时序相互协调作用,使控制器通过数据总线DB接收MPU发送来的指令和数据,从CGROM
中找到欲显示字符的字符码,送入 DDRAM,在 LCD 显示屏上与 DDRAM 存储单元对应的规定位置显示
出该字符。控制器还可以根据 MPU 的指令,实现字符的显示、闪烁和移位等显示效果。
控制器主要由指令寄存器 IR、数据寄存器 DR、忙标志 BF、地址计数器 AC、DDRAM、CGROM、
CGRAM 以及时序发生电路组成:
z 指令寄存器(IR)和数据寄存器(DR)
本模块内部具有两个 8 位寄存器:指令寄存器(IR)和地址寄存器(DR)。用户可以通过 RS 和 R/W
输入信号的组合选择指定的寄存器,进行相应的操作。下表中列出了组合选择方式。
E RS R/W 说 明
1 1 分别将状态标志 BF 和地址计数器(AC)内容读到 DB7 和
DB6~DB0
1→0
0
0 将 DB0~DB7 的指令代码写入指令寄存器中
1 1 将数据寄存器内的数据读到 DB0~DB7,模块的内部操作自
动将 DDRAM 或者 CGRAM 中的数据送入数据寄存器中
1→0
1
0 将 DB0~DB7 的数据写入数据寄存器中,模块的内部操作
自动将数据写到 DDRAM 或者 CGRAM 中
指令寄存器 IR,内部存储 DDRAM 和 CGRAM 中的数据显示的指令代码和地址信息,只能由 MPU 对
其执行写操作;
数据寄存器 DR,内部暂时存储 MPU 与模块内部 DDRAM 和 CGRAM 之间的传送数据,内部操作使
DR 与 DDRAM 或者 CGRAM 之间的数据传送自动进行:
接口控制 自动执行
写操作 写操作
MPU 数据 DR 数据 DDRAM(CGRAM)
读操作 读操作
z 忙标志位 BF
忙标志 BF=1 时,表明模块正在进行内部操作,此时不接受任何外部指令和数据。当 RS=0、R/W=1
以及 E 为高电平时,BF 输出到 DB7。每次操作之前最好先进行状态字检测,只有在确认 BF=0 之后,MPU
- 7 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
才能访问模块;
z 地址计数器(AC)
AC 地址计数器是 DDRAM 或者 CGRAM 的地址指针。随着 IR 中指令码的写入,指令码中携带的地
址信息自动送入 AC 中,并行做出 AC 作为 DDRAM 的地址指针还是 CGRAM 的地址指针的选择。
AC 具有自动加 1 或者减 1 的功能。当 DR 与 DDRAM 或者 CGRAM 之间完成一次数据传送后,AC
自动会加 1 或减 1。在 RS=0、R/W=1 且 E 为高电平时,AC 的内容送到 DB6~DB0;
高 3 位 低 4 位
- 8 -
AC6 AC5 AC4 AC3 AC2 AC1 AC0
z 显示数据寄存器(DDRAM)
DDRAM 存储显示字符的字符码,其容量的大小决定着模块最多可显示的字符数目。DDRAM 地址与
LCD 显示屏上的显示位置的对应关系如下:
执行显示移位操作时,对应的 DDRAM 地址也发生移位,以每行 16 个字符的显示为例,移位前后的地
址对应关系如下:
左移一位
右移一位
z 字符发生器 ROM
在 CGROM 中,模块已经以 8 位二进制数的形式,生成了 5X8 点阵的字符字模组字符字模(一个字符
对应一组字模)。字符字模是与显示字符点阵相对应的 8X8 矩阵位图数据(与点阵行相对应的矩阵行的高
三位为“0”),同时每一组字符字模都有一个由其在 CGROM 中存放地址的高八位数据组成的字符码对应。
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
就单屏结构的模块而言,字符码地址范围为 00H~FFH,其中 00H~07H 字符码与用户在 CGRAM 中生
成的自定义图形字符的字模组相对应;至于双屏或者多屏结构的模块,由于各显示屏结构部分的工作分别
由独立的使能信号 E 控制,因而各结构部分间字符的发生互不影响,每一显示屏结构部分的字符码地址范
围为 00H~FFH,其中 00H~07H 字符码与用户在 CGRAM 中生成的自定义图形字符的字模组相对应。
z 字符发生器 RAM
在 CGRAM 中,用户可以生成自定义图形字符的字模组。就单屏结构的模块而言,可以生成 5×8 点
阵的字符字模 8 组,相对应的字符码从 CGROM 的 00H~07H 范围内选择;至于双屏或者多屏结构的模块,
由于各显示屏结构部分的工作分别由独立的使能信号 E 控制,因而各结构部分间字符的发生互不影响,对
于每一显示屏结构部分,可以生成 5×8 点阵的字符字模 8 组,相对应的字符码从本结构部分中 CGROM
的 00H~07H 范围内选择。
5X8 点阵字符的 CGROM 地址、字符字模和字符码三者之间的关系示意图例如下:
C ursor position
光标位置
L ine position
行地址
C haracter code
字符码
D ataC G R O M A ddress
注释:
高八位 CGROM 地址 A11~A4 组合形成字符码;
低四位 CGROM 地址 A3~A0 定义字模数据存储行地址;
数据 O4~O0 为字符字模数据;
必须将高三位数据 O5~O7 赋值为 0;
对应数据 1 的位置为显示位(黑);
对于 5X8 点阵字体,第九行以下(包括第九行)数据应赋值为 0;
- 9 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
用户自定义 5X8 点阵字符的 CGRAM 地址、字符码和字符字模间关系示意图例如下:
- 10 -
注释:
字符码 0~2 位与 CGRAM 地址 3~5 位对应;
CGRAM 地址 0~2 位生成字模数据行位置。第八行是光标位置,因此构成字符字模数据时,在设
置光标显示的情况下,应赋值为 0;如果赋值为 1,不论光标显示与否,第八行均处于显示状态;
字符字模数据 0~4 位的赋值状态构成了自定义字符的位图数据;
从图中可以看出,字符码 3 位的赋值状态并不影响用户自定义字符在 CGROM 中的字符码,用
户自定义字符码的范围为 00H~07H 或者 08H~0FH,也就是说字符码 00H 与 08H 对应同一组用户自定
义字符字模;
CGRAM 数据为 1 时,处于显示状态;
2 指令表
指令名称
指 令 码
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1
说 明
执行周期
FCP=250KHZ
清 屏 L L L L L L L L L H 清除屏幕,置 AC 为零 1.64ms
返 回 L L L L L L L L H
设 DDRAM 地址为零,显示
回原位,DDRAMM 内容不变
1.64ms
(2)
(1)
C ursor position
C haracter patterns
C ursor position
C haracter patterns
C G R A M address C haracter patternsC haracter code
低高 低高低高
02 1357 6 401234567 012345
*
*
**00
10
1 00 0 1
111 11
1
1 0 0 0
**
0111
1 1
* 110 0 0 0
0001
01
0011
01
00* 00
1000
**0100
0111
10 01
0000
0 100
11
000
0 1
10
0* 0**
0 11 0
11
111
0 01 001000 0*000 0
*** *
* *
0 1 0 0 1 1 1 00 1 0 1 0 0 1 00 1 1 0 0 0 0 10 1 0 1 0 0 1 00 1 0 0 1 1 1 0
0 0 000*00
1 0 1 0 1 0 1 01 1 0 0 1 1 0 01 1 1 1 0 0 0 0
000
e 字符码 CGRAM地址 字符字模
字符字模
光标位置
字符字模
光标位置
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
输入方式
设置
L L L L L L L H I/D S
设光标移动方向并指定整体显示
是否移动
40us
显示开关
控制
L L L L L L L H D C B
调整体显示开关(D),光标开关
(C)及光标位的字符闪耀(B)
40us
移 位 L L L L L H S/C R/L
移动光标或整体显示,同时不改
变 DD RAM 内容
40us
功能设置 L L L L H DL N F
投接口数据位数(DL)显示行数
(L)及字形(F)
40us
CG RAM
地址设置
L L L H ACG
设 CG RAM 地址,设置后 DD
RAM 数据被发送和接收
40us
DD RAM
地址设置
L L H ADD
设 DD RAM 地址,设置后 DD
RAM 数据被发送和接收
40us
读忙信号
(BF)
及地址高
数器
L H BL AC
读忙信号位(BF)判断内部操作
正在执行并读地址计数器内容
0us
写数据
CG/DD
RAM
H L 写数据 写数据到 CG 或 DD RAM
40us
Tadd=6ns
读 数 据
由 CG/DD
RAM
H H 读数据 写数据到 CG 或 DD RAM
40us
Tadd=6ns
I/D 1:增量方式,0:减量方式
S 1:移位
S/C1:显示移位,0:光标移位
R/L1:右移,0:左移
D L1:8 位,0:4 位
N 1:2 行,0:1 行
F 1:5×10。0:5×7
DD RAM 显示数据 RAM
CG RAM 字符生成 RAM
AC:用于 DD 和 CG RAM
地址的地址计数器
执行周期随主
频而改变
例如:当 fcp
或 Fosc 为
270KHZ
40us×250/270
BF 1:内部操作,0:接收指令
RS :寄存器选择
R/W :读/写
=37us
3 指令说明
- 11 -
- 12 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
由于 MPU 可以直接访问模块内部的 IR 和 DR,作为缓冲区域,IR 和 DR 在模块进行内部操作之前,
可以暂存来自 MPU 的控制信息。这样就给用户在 MPU 和外围控制设备的选择上,增加了余地。模块的内
部操作由来自 MPU 的 RS、R/W、E 以及数据信号 DB 决定,这些信号的组合形成了模块的指令。
本模块向用户提供了 11 条指令,大致可以分为四大类:
模块功能设置,诸如:显示格式、数据长度等;
设置内部 RAM 地址;
完成内部 RAM 数据传送;
完成其他功能;
一般情况下,内部 RAM 的数据传送的功能使用最为频繁,因此,RAM 中的地址指针所具备的自动加
一或减一功能,在一定程度上减轻了 MPU 编程负担。此外,由于数据移位指令与写显示数据可同时进行,
这样用户就能以最少系统开发时间,达到最高的编程效率。
这里值得一提的是,在每次访问模块之前,MPU 应首先检测忙标志 BF,确认 BF=0 后,访问过程才
能进行。
z Clear display 清显示
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 0 0 0 1
清显示指令将空位字符码 20H 送入全部 DDRAM 地址中,使 DDRAM 中的内容全部清除,显示消失;地
址计数器 AC=0,自动增 1 模式;显示归位,光标或者闪烁回到原点(显示屏左上角);但并不改变移位设
置模式;
z Return home 归位
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 0 0 1 *
归位指令置地址计数器 AC=0;将光标及光标所在位的字符回原点;但 DDRAM 中的内容并不改变;
z Entry mode set 设置输入模式
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 0 1 I/D S
I/D:字符码写入或者读出 DDRAM 后 DDRAM 地址指针 AC 变化方向标志:
I/D=1,完成一个字符码传送后,AC 自动加 1;
I/D=0,完成一个字符码传送后,AC 自动减 1;
S:显示移位标志:
S=1,将全部显示向右(I/D=0)或者向左(I/D=1)移位;
S=0,显示不发生移位;
S=1 时,显示移位时,光标似乎并不移位;此外,读 DDRAM 操作以及对 CGRAM 的访问,不发生
显示移位;
- 13 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
z Display on/off control 显示开/关控制
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 0 1 D C B
D:显示开/关控制标志:D=1,开显示;D=0,关显示;
关显示后,显示数据仍保持在 DDRAM 中,立即开显示可以再现;
C:光标显示控制标志:C=1,光标显示;C=0,光标不显示;
不显示光标并不影响模块其它显示功能;显示 5X8 点阵字符时,光标在第八行显示,显示 5X10 点阵
字符时,光标在第十一行显示;
B:闪烁显示控制标志:B=1,光标所指位置上,交替显示全黑点阵和显示字符,产生闪烁效果,Fosc=250kHz
时,闪烁频率为 0.4ms 左右;通过设置,光标可以与其所指位置的字符一起闪烁;
z Cursor or display shift 光标或显示移位
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 0 1 S/C R/L * *
光标或显示移位指令可使光标或显示在没有读写显示数据的情况下,向左或向右移动;运用此指令可以实
现显示的查找或替换;在双行显示方式下,第一行和第二行会同时移位;当移位越过第一行第四十位时,
光标会从第一行跳到第二行,但显示数据只在本行内水平移位,第二行的显示决不会移进第一行;倘若仅
执行移位操作,地址计数器 AC 的内容不会发生改变;
S/C R/L 说 明
0 0 光标向左移动,AC 自动减 1
0 1 光标向右移动,AC 自动加 1
1 0 光标和显示一起向左移动
1 1 光标和显示一起向右移动
z Function set 功能设置
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 0 1 DL N F * *
功能设置指令设置模块数据接口宽度和 LCD 显示屏显示方式,即 MPU 与模块接口数据总线为 4 位或者是
8 位、LCD 显示行数和显示字符点阵规格;所以建议用户最好在执行其它指令设置(读忙标志指令除外)
之前,在程序的开始,进行功能设置指令的执行;
DL:数据接口宽度标志:DL=1,8 位数据总线 DB7~DB0;DL=0,4 位数据总线 DB7~DB4,DB3~DB0
不用,使用此方式传送数据,需分两次进行;
N:显示行数标志;
F:显示字符点阵字体标志;
N F 显示行数 字符点阵字体 驱动路数 备 注
- 14 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
0 0 1 5X8 1/8
0 1 1 5X10 1/11
1 * 2 5X8 1/16 模块不能双行显示 5X10 点阵字符字体
z Set CGRAM address CGRAM 地址设置
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 0 1 ACG5 ACG4 ACG3 ACG2 ACG1 ACG0
CGRAM 地址设置指令设置 CGRAM 地址指针,它将 CGRAM 存储用户自定义显示字符的字模数据的首地
址 ACG5~ACG0 送入 AC 中,于是用户自定义字符字模就可以写入 CGRAM 中或者从 CGRAM 中读出;
z Set DDRAM address DDRAM 地址设置
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 0 1 ADD6 ADD5 ADD4 ADD3 ADD2 ADD1 ADD0
DDRAM 地址设置指令设置 DDRAM 地址指针,它将 DDRAM 存储显示字符的字符码的首地址
ADD6~ADD0 送入 AC 中,于是显示字符的字符码就可以写入 DDRAM 中或者从 DDRAM 中读出;
值得一提的是:在 LCD 显示屏一行显示方式下,DDRAM 的地址范围为:00H~4FH;两行显示方式下,
DDRAM 的地址范围为:第一行 00H~27H,第二行 40H~67H;
z Read busy flag and address 读忙标志 BF 和 AC
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0
当 RS=0 和 R/W=1 时,在 E 信号高电平的作用下,BF 和 AC6~AC0 被读到数据总线 DB7~DB0 的相应位;
BF:内部操作忙标志,BF=1,表示模块正在进行内部操作,此时模块不接收任何外部指令和数据,直到
BF=0 为止;
AC6~AC0:地址计数器 AC 内的当前内容,由于地址计数器 AC 被 CGROM、CGRAM 和 DDRAM 的公用
指针,因此当前 AC 内容所指区域由前一条指令操作区域决定;同时,只有 BF=0 时,送到 DB7~DB0 的
数据 AC6~AC0 才有效;
z Write data to CGRAM or DDRAM 写数据到 CGRAM 或 DDRAM
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
1 0 D7 D6 D5 D4 D3 D2 D1 D0
写数据到 CGRAM 或 DDRAM 指令,是将用户自定义字符的字模数据写到已经设置好的 CGRAM 的地址
中,或者是将欲显示字符的字符码写到 DDRAM 中;欲写入的数据 D7~D0 首先暂存在 DR 中,再由模块
的内部操作自动写入地址指针所指定的 CGRAM 单元或者 DDRAM 单元中;
- 15 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
z Read data from CGRAM or DDRAM 从 CGRAM 或 DDRAM 中读数据
指令码:
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
1 1 D7 D6 D5 D4 D3 D2 D1 D0
从 CGRAM 或 DDRAM 中读数据指令,是从地址计数器 AC 指定的 CGRAM 或者 DDRAM 单元中,读出
数据 D7~D0;读出的数据 D7~D0 暂存在 DR 中,再由模块的内部操作送到数据总线 DB7~DB0 上;需要
注意的是,在读数据之前,应先通过地址计数器 AC 正确指定读取单元的地址;
4 内部复位电路初始化
1602 模块设有内部复位电路,上电后,当电源电压超过+4.5v 时,自动对模块进行初始化。此期间,
忙标志 BF=1,直到初始化结束后,忙标志 BF 才为 0。初始化大约持续 10ms 左右。
上电复位初始化,对模块进行了下列指令的操作:
z 清显示;
功能设置:
DL=1:8 位数据接口;
N=0:一行显示;
F=0:5X8 点阵字符字体;
z 显示开/关控制:
D=0:关显示;
C=0:不显示光标;
B=0:关闪烁;
z 输入模式设置:
I/D=1:AC 自动加 1;
S=0:不移位;
需要说明的是,倘若供电电源达不到要求,模块内部复位电路非正常操作,上电复位初始化就会失败。此
时,建议用户通过指令设置对模块进行初始化。
5 MPU 接口
本模块可以利用总线模式,直接与 4 位或 8 位 MPU 接口。在控制信号 E 高电平或下降沿的作用下,
模块通过区分控制信号 RS 和 R/W 的组合形式,来区分数据总线 DB7~DB0 上传送的指令和数据。数据总
线 DB7~DB0 是 MPU 访问模块和与模块之间信息交换的数据通道。
下面举出一个本模块应用实例。
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
应用电路:
EDM
MODULE
8031
RD
WR
E
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
P1.4
P1.3
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
应用程序
①检测忙标志 BF
BF:CLR A
CLR RS
SETB R/W
MOVX A,@R0
JB ACC.7,BF
RET
②写数据到指令寄存器 IR ③写数据到数据寄存器 DR
R1:暂存指令码 R2:暂存字符码或字符字模数据
WI:CLR R/W WD:SETB RS
CLR RS CLR R/W
MOV A,R1 MOV A,R2
MOVX @R0,A MOVX @R0,A
RET RET
④延时 65ms
DELAY:MOV R7,#0FFH
LOOP0:MOV R6,#0FFH
DJNZ R6,$
DJNZ R7,LOOP0
RET
⑤写自定义字符字模数据到 CGRAM
WCG: MOV DPTR,#TAB
MOV R1,#40H
LCALL BF
LCALL WI
MOV R4,#40H ;字符字模数据传送计数指针
- 16 -
- 17 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
LOOP4:CLR A
MOVC A,@A+DPTR
MOV R2,A
LCALL BF
LCALL WD
INC DPTR
DJNZ R4,LOOP4
RET
⑥指令初始化模块:
INI: MOV R3,#03H
MOV R1,#38H ;功能设置:8 位数据,1/16DUTY,5X8 字体
LCALL WI
DJNZ R3,INI
MOV R1,#01H ;清显示
LCALL BF
LCALL WI
MOV R1,#06H ;输入方式设置:AC 自动加 1
LCALL BF
LCALL WI
MOV R1,#0CH ;开显示
LCALL BF
LCALL WI
RET
⑦自定义字符
字模数据组
TAB
DB 1FH,00H,00H,00H,00H,00H,00H,00H
DB 00H,1FH,00H,00H,00H,00H,00H,00H
DB 00H,00H,1FH,00H,00H,00H,00H,00H
DB 00H,00H,00H,1FH,00H,00H,00H,00H
DB 00H,00H,00H,00H,1FH,00H,00H,00H
DB 00H,00H,00H,00H,00H,1FH,00H,00H
DB 00H,00H,00H,00H,00H,00H,1FH,00H
DB 00H,00H,00H,00H,00H,00H,00H,1FH
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
自定义字符字模构成位图示意
⑧写显示字符的字符码到 DDRAM:
WDD: MOV DPTR,#0300H
MOV R5,#11H ;共显示 16 个字符
LOOP2:MOV R1,#80H ;显示第一行和第三行
LCALL BF
LCALL WI
MOV R3,#29H ;每个字符显示 40 次
LOOP1:CLR A
MOVC A,@A+DPTR
MOV R2,A
LCALL BF
LCALL WD
DJNZ R4,LOOP1
MOV R1,#0C00H ;显示第二行和第四行
LCALL BF
LCALL WI
LOOP3:CLR A
MOVC A,@A+DPTR
MOV R2,A
LCALL BF
LCALL WD
DJNZ R4,LOOP3
RET
- 18 -
- 19 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
⑨显示字符的字符码表:
ORG 0300H
DB 00H,01H,02H,03H,04H,05H,06H,07H
DB 06H,05H,04H,03H,02H,01H,00H,38H
⑩显示主程序:
START:RS EQU P1.3
R/W EQU P1.4
ORG 0000H
LCALL INI
LCALL WCG
LCALL WDD
LCALL DELAY
LCALL DELAY
LJMP START
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
z 显示程序流程图
- 20 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
6 可靠性项目
项目 条件 标 准
1) 高温操作 60℃ 96hrs
2) 低温操作 -20℃ 96hrs 外观无变化,对比度与初始值不会相差 ±10%。总电流消耗不会超过初始值的 2 倍。.
3) 湿度 40℃, 90%RH, 96hrs
4) 高温 70℃ 96hrs
5) 低温 -30℃ 96hrs
6) 热冲击
25℃→30℃→25℃→70℃
5(min) 30(min) 5(min) 30(min)
5 cycle, 55~60%RH
外观无变化,对比度与初始值不会相差 ±20%。
总电流消耗不会超过初始值的 2 倍。.
7) 振动
10~55~10hz
amplitude: 1.5mm
2hrs for each direction
外观和性能无变化。
总电流消耗不会超过初始值的 2 倍。
附录:1.模块供电电路
使用前可按上图接好电源线,然后调整 V0 端,这时屏幕上
应出现 1/2 屏的全显示底影。可简单判断为功能正常,否则
你的模块可能存在故障!
- 21 -
通用 1602 液晶显示模块使用手册
☆☆☆☆ Email: support@willar.com
2. 字符码与字符字模之间的对应关系表
- 22 -
项 目
符 号
条 件
单 位
电源电压
逻辑
外观无变化,对比度与初始值不会相差 ±10%。
外观无变化,对比度与初始值不会相差 ±20%。