LCD1602和LCD12864

来源:本站
导读:目前正在解读《LCD1602和LCD12864》的相关信息,《LCD1602和LCD12864》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《LCD1602和LCD12864》的详细说明。
简介:LCD1602和LCD12864是我们经常会用到的液晶显示屏,这里为它们做了一些总结和比较。

一:了解LCD1602液晶显示屏

字符型点阵式LCD液晶显示屏:

LCD的应用很广泛,简单如手表上的液晶显示屏,仪表仪器上的液晶显示器或者是电脑笔记本上的液晶显示器,都使用了LCD。在一般的办公设备上也很常见,如传真机,复印机,以及一些娱乐器材玩具等也常常见到LCD的足迹。

本站要介绍的LCD为字符型点阵式LCD模块(liquid Crystal Display Module)简称LCM,或者是字符型LCD。

字符型液晶显示模块是一类专门用于显示字母,数字,符号等的点阵式液晶显示模块。在显示器件上的电极图型设计,它是由若干个5*7或5*11等点阵符位组成。每一个点阵字符位都可以显示一个字符。点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用。

目前市面上常用的有16字*1行,16字*2行,20字*2行和40字*2行等的字符模块组。这些LCM虽然显示字数各不相同,但是都具有相同的输入输出界面。

本章将以WINTECH 16*2字符型液晶显示模块WM-C1602N为例,详细介绍字符兴高采烈晶显示模块的应用技术。

一般字符LCD模块的控制器为日本日立新华通讯社司的HD44780及其替代集成电路,驱动器为HD44100及其替代的集成电路以下将会略做介绍。

一般初学者由字符型LCD入手比较简单,学完之后,再进一步控制图案型LCD模块。

二:LCD液晶显示屏的内部结构

液晶显示模块WM-C1602N的内部结构可以分成三部份:一为LCD控制器,二为LCD驱动器,三为LCD显示装置,目前大多数的LCD液晶显示器的控制器都有采用一颗型号为HD44780的集成电路作控制器。HD44780是集控制器,驱动器于一体,专用于字符显示控制驱动集成电路。HD44780是字符型液晶显示控制器的代表电路。

HD44780集成电路的特点:

1:HD44780不仅作为控制器而且还具有驱动40*16点阵液晶像素的能力,并且HD44780的驱动能力可通过外接驱动器扩展360列驱动。

2:HD44780的显示缓冲区及用户自定义的字符发生器CGRAM全部内藏在芯片内。

3:HD44780具有适用于M6800系列MPU的接口,并且接口数据传输可为8位数据和4位数据传输两种方式。

4:HD44780具有简单而功能较强的指令集,可实现字符移动,闪烁等显示功能。

由于HD44780的DDRAM容量所限,HD44780可控制的字符高达每行80个字,也就是5*80=400点,HD44780内藏有16路行驱动器和40路列驱动器,所以HD44780本身就具驱动有16*40点阵LCD能力(即单行16个字符或两行8个字符)。如果在外部加一HD44100外扩展多40路/列驱动,则可驱动16*2LCD。

HD44780内藏的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表2.3所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码。比如数字“1”的代码是00110001B(31H),又如大写的英文字母“A”的代码是01000001B(41H)。

液晶显示模块WM-C1602N在显示“1”时,则我们只需将ASCII码31H存入DDRAM即可。显示时模块把地址31H中的点阵字符图形显示出来,我们就能看到数字“1”了。

DDRAM有80bytes空间,共可显示80个字,地址与实际显示位置的排列顺序跟LCD的型号有关.

基本了解液晶显示模块WM-C1602N的内部结构后,便可再去熟悉指令的用法。

12864液晶

一、概述

带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,

内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字.

也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

基本特性:

l低电源电压(VDD:+3.0--+5.5V)

l显示分辨率:128×64点

l内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)

l内置 128个16×8点阵字符

l2MHZ时钟频率

l显示方式:STN、半透、正显

l驱动方式:1/32DUTY,1/5BIAS

l视角方向:6点

l背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10

l通讯方式:串行、并口可选

l内置DC-DC转换电路,无需外加负压

l无需片选信号,简化软件设计

l工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃

模块接口说明

*注释1:如在实际应用中仅使用串口通讯模式,可将PSB接固定低电平,也可以将模块上的J8和“GND”用焊锡短接。

*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。

*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。

2.2并行接口

管脚号

管脚名称

电平

管脚功能描述

1

VSS

0V

电源地

2

VCC

3.0+5V

电源正

3

V0

-

对比度(亮度)调整

4

RS(CS)

H/L

RS=“H”,表示DB7——DB0为显示数据

RS=“L”,表示DB7——DB0为显示指令数据

5

R/W(SID)

H/L

R/W=“H”,E=“H”,数据被读到DB7——DB0

R/W=“L”,E=“H→L”, DB7——DB0的数据被写到IR或DR

6

E(SCLK)

H/L

使能信号

7

DB0

H/L

三态数据线

8

DB1

H/L

三态数据线

9

DB2

H/L

三态数据线

10

DB3

H/L

三态数据线

11

DB4

H/L

三态数据线

12

DB5

H/L

三态数据线

13

DB6

H/L

三态数据线

14

DB7

H/L

三态数据线

15

PSB

H/L

H:8位或4位并口方式,L:串口方式(见注释1)

16

NC

-

空脚

17

/RESET

H/L

复位端,低电平有效(见注释2)

18

VOUT

-

LCD驱动电压输出端

19

A

VDD

背光源正端(+5V)(见注释3)

20

K

VSS

背光源负端(见注释3)

*注释1:如在实际应用中仅使用并口通讯模式,可将PSB接固定高电平,也可以将模块上的J8和“VCC”用焊锡短接。

*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。

*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。

四.模块主要硬件构成说明

控制器接口信号说明:

1、RS,R/W的配合选择决定控制界面的4种模式:

RS

R/W

功能说明

L

L

MPU写指令到指令暂存器(IR)

L

H

读出忙标志(BF)及地址记数器(AC)的状态

H

L

MPU写入数据到数据暂存器(DR)

H

H

MPU从数据暂存器(DR)中读出数据

2、E信号

E状态

执行动作

结果

高——>低

I/O缓冲——>DR

配合/W进行写数据或指令

DR——>I/O缓冲

配合R进行读数据或指令

低/低——>高

无动作

● 忙标志:BF

BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数据.

利用STATUS RD 指令,可以将BF读到DB7总线,从而检验模块之工作状态.●字型产生ROM(CGROM)

字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM

的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。DFF 的状态是指令DISPLAY ON/OFF和RST信号控制的。●

显示数据RAM(DDRAM)模块内部显示数据RAM提供64×2个位元组的空间,最多可控制4行16字(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是半角英数字型(16*8)、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在0000H—0006H的编码中(其代码分别是0000、0002、0004、0006共4个)将选择CGRAM的自定义字型,02H—7FH的编码中将选择半角英数字的字型,至于A1以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码BIG5(A140—D75F),GB(A1A0-F7FFH)。

●字型产生RAM(CGRAM)字型产生RAM提供图象定义(造字)功能,

可以提供四组16×16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGROM中的定义一样地通过DDRAM显示在屏幕中。●

地址计数器AC地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6——DB0中。

●光标/闪烁控制电路

此模块提供硬体光标及闪烁控制电路,由地址计数器的值来指定DDRAM中的光标或闪烁位置。

原理的另一半在12864液晶 原理-2中

五、指令说明

模块控制芯片提供两套控制命令,基本指令和扩充指令如下:

指令表1:(RE=0:基本指令)

指 令 码

功 能

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

清除

显示

0

0

0

0

0

0

0

0

0

1

将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H"

地址

归位

0

0

0

0

0

0

0

0

1

X

设定DDRAM的地址计数器(AC)到"00H",并且将游标移到开头原点位置;这个指令不改变DDRAM 的内容

显示状态开/关

0

0

0

0

0

0

1

D

C

B

D=1: 整体显示 ON

C=1: 游标ON

B=1:游标位置反白允许

进入点

设定

0

0

0

0

0

0

0

1

I/D

S

指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位

游标或显示移位控制

0

0

0

0

0

1

S/C

R/L

X

X

设定游标的移动与显示的移位控制位;这个指令不改变DDRAM 的内容

功能

设定

0

0

0

0

1

DL

X

RE

X

X

DL=0/1:4/8位数据

RE=1: 扩充指令操作

RE=0: 基本指令操作

设定CGRAM

地址

0

0

0

1

AC5

AC4

AC3

AC2

AC1

AC0

设定CGRAM 地址

设定DDRAM

地址

0

0

1

0

AC5

AC4

AC3

AC2

AC1

AC0

设定DDRAM 地址(显示位址)

第一行:80H-87H

第二行:90H-97H

读取忙标志和地址

0

1

BF

AC6

AC5

AC4

AC3

AC2

AC1

AC0

读取忙标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值

写数据到RAM

1

0

数据

将数据D7——D0写入到内部的RAM (DDRAM/CGRAM/IRAM/GRAM)

读出RAM的值

1

1

数据

从内部RAM读取数据D7——D0

(DDRAM/CGRAM/IRAM/GRAM)

指令表2:(RE=1:扩充指令)

指 令 码

功 能

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

待命

模式

0

0

0

0

0

0

0

0

0

1

进入待命模式,执行其他指令都棵终止

待命模式

卷动地址开关开启

0

0

0

0

0

0

0

0

1

SR

SR=1:允许输入垂直卷动地址

SR=0:允许输入IRAM和CGRAM地址

反白

选择

0

0

0

0

0

0

0

1

R1

R0

选择2行中的任一行作反白显示,并可决定反白与否。初始值R1R0=00,第一次设定为反白显示,再次设定变回正常

睡眠

模式

0

0

0

0

0

0

1

SL

X

X

SL=0:进入睡眠模式

SL=1:脱离睡眠模式

扩充

功能

设定

0

0

0

0

1

CL

X

RE

G

0

CL=0/1:4/8位数据

RE=1: 扩充指令操作

RE=0: 基本指令操作

G=1/0:绘图开关

设定绘图RAM

地址

0

0

1

0

AC6

0

AC5

0

AC4

AC3

AC3

AC2

AC2

AC1

AC1

AC0

AC0

设定绘图RAM

先设定垂直(列)地址AC6AC5…AC0

再设定水平(行)地址AC3AC2AC1AC0

将以上16位地址连续写入即可

备注;当IC1在接受指令前,微处理器必须先确认其内部处于非忙碌状态,即读取BF标志时,BF需为零,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指令确实执行完成。

应用举例:

1 、使用前的准备

先给模块加上工作电压,再按照下图的连接方法调节LCD的对比度,使其显示出黑色的底影。

此过程亦可以初步检测LCD有无缺段现象。

2、字符显示

带中文字库的128X64-0402B每屏可显示4行8列共32个16×16点阵的汉字,每个显示RAM可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供128×2字节的字符显示RAM缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:0000~0006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H~7FH显示半宽ASCII码字符,A1A0H~F7FFH显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H~9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如下表所示。

80H

81H

82H

83H

84H

85H

86H

87H

90H

91H

92H

93H

94H

95H

96H

97H

88H

89H

8AH

8BH

8CH

8DH

8EH

8FH

98H

99H

9AH

9BH

9CH

9DH

9EH

9FH

3 、图形显示

先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址)

垂直地址范围 AC5...AC0

水平地址范围 AC3…AC0

绘图RAM 的地址计数器(AC)只会对水平地址(X 轴)自动加一,当水平地址=0FH 时会重新设为00H但并不会对垂直地址做进位自动加一,故当连续写入多笔资料时,程序需自行判断垂直地址是否需重新设定。GDRAM的坐标地址与资料排列顺序如下图:

3、应用说明

用带中文字库的128X64显示模块时应注意以下几点:

①欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。

②显示ASCII字符过程与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。

③当字符编码为2字节时,应先写入高位字节,再写入低位字节。

④模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。⑤“RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。

五、指令描述

1、显示开/关设置

CODE: R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

L

L

L

L

H

H

H

H

H

H/L

功能:设置屏幕显示开/关。

DB0=H,开显示;DB0=L,关显示。不影响显示RAM(DD RAM)中的内容。

2、设置显示起始行

CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

L

L

H

H

行地址(0~63)

功能:执行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。

3、设置页地址

CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

L

L

H

L

H

H

H

页地址(0~7)

功能:执行本指令后,下面的读写操作将在指定页内,直到重新设置。页地址就是DD RAM 的行地址,页地址存储在X地址计数器中,A2-A0可表示8页,读写数据对页地址没有影响,除本指令可改变页地址外,复位信号(RST)可把页地址计数器内容清零。

DD RAM地址映像表

Y 地址

0

1

2

………………………

61

62

63

DB0

∫PAGE0

DB7

X=0

DB0

∫PAGE1

DB7

X=1

DB0

∫PAGE6

DB7

X=7

DB0

∫PAGE7

DB7

X=8

4、设置列地址

CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

L

L

L

H

列地址(0~63)

功能: DD RAM 的列地址存储在Y地址计数器中,读写数据对列地址有影响,在对DD RAM进行读写操作后,Y地址自动加一。

5、状态检测

CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

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:表示显示开。

6、写显示数据

CODE:R/WD/IDB7DB6DB5DB4DB3DB2DB1DB0

L

H

D7

D6

D5

D4

D3

D2

D1

D0

功能:写数据到DD RAM,DD RAM是存储图形显示数据的,写指令执行后Y地址计数器自动加1。D7-D0位数据为1表示显示,数据为0表示不显示。写数据到DD RAM前,要先执行“设置页地址”及“设置列地址”命令。

7、读显示数据

CODE:RSR/WDB7DB6DB5DB4DB3DB2DB1DB0

H

H

D7

D6

D5

D4

D3

D2

D1

D0

功能:从DD RAM读数据,读指令执行后Y地址计数器自动加1。从DD RAM读数据前要先执行“设置页地址” 及“设置列地址”命令。

六、接口时序

1.写操作时序

2.读操作时序

时序参数表:

名称

符号

最小值

典型值

最大值

单位

E周期时间

Tcyc

1000

ns

E高电平宽度

Pweh

450

ns

E低电平宽度

Pwel

450

ns

E上升时间

Tr

25

ns

E下降时间

Tf

25

ns

地址建立时间

Tas

140

ns

地址保持时间

taw

10

ns

数据建立时间

Tdsw

200

ns

数据延迟时间

Tddr

320

ns

写数据保持时间

Tdhw

10

ns

读数据保持时间

Tdhr

20

ns

七、屏幕显示与DD RAM地址映射关系

Y1

Y2

Y3

Y4

…………

Y62

Y63

Y64

X=0

Line 0

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB0

Line 1

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB1

Line 2

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB2

Line 3

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB3

Line 4

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB4

Line 5

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB5

Line 6

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB6

Line 7

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB7

…………

…………

…………

X=7

Line60

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB4

Line61

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB5

Line62

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB6

Line63

1/0

1/0

1/0

1/0

…………

1/0

1/0

1/0

DB7

提醒:《LCD1602和LCD12864》最后刷新时间 2024-03-14 01:14:13,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《LCD1602和LCD12864》该内容的真实性请自行鉴别。