一·概述
12864J是一种图形点阵液晶显示器,它主要由行驱动器/ 列驱动器及128×64全点阵液晶显示器组成.可完成图形显示,也可以显示8×4个(16×16点阵)汉字.
主要技术参数和性能:
1.电源:VDD:+5V;模块内自带-10V负压,用于LCD的驱动电压。
2.显示内容:128(列)×64(行)点
3.全屏幕点阵
4.七种指令
5.与CPU接口采用8位数据总线并行输入输出和8条控制线.
6.占空比1/64
7.工作温度: -20℃ ∽ +70℃ ,存储温度: -30℃ ∽ +80℃
二·外形尺寸图
图 1
2. 外形尺寸图
表 1
ITEM
|
NOMINAL DIMEN
|
UNIT
|
模块体积
|
93.X70×11
|
mm
|
视域
|
70.7×38.8
|
mm
|
行列点阵数
|
128×64
|
DOTS
|
点距离
|
0.52×0.52
|
mm
|
点大小
|
0.48×0.48
|
mm
|
三.模块主要硬件构成说明
结构框图
IC3为行驱动器.IC1,IC为列驱动器.IC1,IC2,IC3含有如下主要功能器件.了解如下器件有利于对LCD模块之编程.
1.指令寄存器(IR)
IR是用来寄存指令码,与数据寄存器寄存数据相对应.当D/I=1 时,在E信号下降沿的作用下,指令码写入IR.
2.数据寄存器(DR)
DR是用来寄存数据的,与指令寄存器寄存指令相对应.当D/I=1时,在E信号的下降沿作用下,图形显示数据写入DR,或在E信号高电平作用下由DR读到DB7~DB0 数据总线.DR 和DDRAM之间的数据传输是模块内部自动执行的.
3.忙标志:BF
BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数据.
利用STATUS READ 指令,可以将BF读到DB7总线,从而检验模块之工作状态.
4.显示控制触发器DFF
此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DDF=0为关显示(DISPLAY OFF)。
DDF 的状态是指令DISPLAY ON/OFF和RST信号控制的。
5.XY地址计数器
XY地址计数器是一个9位计数器。高三位是X地址计数器,低6位为Y地址计数器,XY地址计数器实际上是作为DDRAM的地址指针,X地址计数器为DDRAM的页指针,Y地址计数器为DDRAM的Y地址指针。
X地址计数器是没有记数功能的,只能用指令设置。
Y地址计数器具有循环记数功能,各显示数据写入后,Y地址自动加1,Y地址指针从0到63。
6.显示数据RAM(DDRAM)
DDRAM是存贮图形显示数据的。数据为1表示显示选择,数据为0表示显示非选择。DDRAM与地址和显示位置的关系见DDRAM地址表(见第6页)。
7.Z地址计数器
Z地址计数器是一个6位计数器,此计数器具备循环记数功能,它是用于显示行扫描同步。当一行扫描完成,此地址计数器自动加1,指向下一行扫描数据,RST复位后Z地址计数器为0。
Z地址计数器可以用指令DISPLAY START LINE 预置。因此,显示屏幕的起始行就由此指令控制,即DDRAM的数据从哪一行开始显示在屏幕的**行。此模块的DDRAM共64行,屏幕可以循环滚动显示64行。
四·模块的外部接口
外部接口信号如下表2所示:
表 2
管脚号
|
管脚名称
|
LEVER
|
管脚功能描述
|
1
|
VSS
|
0V
|
电源地
|
2
|
VDD
|
5.0V
|
电源电压
|
3
|
V0
|
-
|
液晶显示器驱动电压
|
4
|
D/I
|
H/L
|
D/I=“H”,表示DB7~DB0为显示数据
D/I=“L”,表示DB7~DB0为显示指令数据
|
5
|
R/W
|
H/L
|
R/W=“H”,E=“H”,数据被读到DB7~DB0
R/W=“L”,E=“H→L”, DB7~DB0的数据被写到IR或DR
|
6
|
E
|
H/L
|
使能信号:R/W=“L”,E信号下降沿锁存DB7~DB0
R/W=“H”,E=“H” DRAM数据读到
DB7~DB0
|
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
|
CS1
|
H/L
|
H:选择芯片(右半屏)信号
|
16
|
CS2
|
H/L
|
H:选择芯片(左半屏)信号
|
17
|
RET
|
H/L
|
复位信号,低电平复位
|
18
|
VOUT
|
-10V
|
LCD驱动负电压
|
|
LED+
|
-
|
LED背光板电源
|
20
|
LED-
|
-
|
LED背光板电源
|
五·指令说明
指令表:
表 3
指
|
指 令 码
|
功 能
|
令
|
RW
|
DI
|
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
|
显示
ON/OFF
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1/0
|
控制显示器的开关,不影响DDRAM中数据和内部状态
|
显示
起始行
|
0
|
0
|
1
|
1
|
显示起始行
(0…63)
|
指定显示屏从DDRAM中
哪一行开始显示数据
|
设置
X地址
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
X:0…7
|
设置DDRAM中的页地址
(X地址)
|
设置
Y地址
|
0
|
0
|
0
|
1
|
Y地址(0~63)
|
设置地址(Y地址)
|
读状态
|
1
|
0
|
B U S Y
|
0
|
ON/
OFF
|
RST
|
0
|
0
|
0
|
0
|
RST 1:复位0:正常
ON/OFF 1:显示开 0:显示关
BUSY 0:READY
1:IN OPERATION
|
写显示数据
|
0
|
1
|
显示数据
|
将数据线上的数据DB7~DB0写入DDRAM
|
读显示数据
|
1
|
1
|
显示数据
|
将数据线上的数据DB7~DB0写入DDRAM
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.显示开关控制(DISPLAY ON/OFF)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
D
|
D=1:开显示(DISPLAY ON) 意即显示器可以进行各种显示操作
D=0:关显示(DISPLAY OFF) 意即不能对显示器进行各种显示操作
2.设置显示起始行(DISPLAY START LINE)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
0
|
1
|
1
|
A5
|
A4
|
A3
|
A2
|
A1
|
A0
|
前面在Z地址计数器一节已经描述了显示起始行是由Z地址计数器控制的。A5~A0 6位地址自动送入Z地址计数器,起始行的地址可以是0~63的任意一行。
例如:
选择A5~A0是62,则起始行与DDRAM行的对应关系如下:
DDRAM 行:62 63 0 1 2 3 ·················28 29
屏幕显示行: 1 2 3 4 5 6················· 31 32
3.设置页地址(SET PAGE “X ADDRESS”)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
A2
|
A1
|
A0
|
所谓页地址就是DDRAM的行地址,8行为一页,模块共64行即8页,A2~A0表示0~7页。读写数据对地址没有影响,页地址由本指令或RST信号改变复位后页地址为0。页地址与DDRAM的对应关系见DDRAM地址表。
4.设置Y地址(SET Y ADDRESS)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
0
|
0
|
1
|
A5
|
A4
|
A3
|
A2
|
A1
|
A0
|
此指令的作用是将A5~A0送入Y地址计数器,作为DDRAM的Y地址指针。在对DDRA M进行读写操作后,Y地址指针自动加1,指向下一个DDRAM单元。
DDRAM地址表:
表 4
CS1=1
|
CS2=1
|
|
|
Y=
|
0
|
1
|
……
|
62
|
63
|
0
|
1
|
……
|
62
|
63
|
行号
|
X=
0
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
0
↓
7
|
↓
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
8
↓
55
|
X=7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
DB0
↓
DB7
|
56
↓
63
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5.读状态(STATUS READ)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
1
|
BUSY
|
0
|
|
RET
|
0
|
0
|
0
|
0
|
当R/W=1 D/I=0时,在E信号为“H”的作用下,状态分别输出到数据总线(DB7~DB0)的相应位。
BF: 前面已叙述过(见BF标志位一节)。
ON/OFF: 表示DFF触发器的状态(见DFF触发器一节)。
RST: RST=1表示内部正在初始化,此时组件不接受任何指令和数据。
6.写显示数据(WRITE DISPLAY DATE)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
0
|
1
|
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
D7~D0为显示数据,此指令把D7~D0写入相应的DDRAM单元,Y地址指针自动加1。
7.读显示数据(READ DISPLAY DATE)
代码
|
|
R/W
|
D/I
|
DB7
|
DB6
|
DB5
|
DB4
|
DB3
|
DB2
|
DB1
|
DB0
|
形式
|
|
1
|
1
|
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
此指令把DDRAM的内容D7~D0读到数据总线DB7~DB0,Y地址指针自动加1。
六·读写操作时序
1.写操作时序
图 3
2.读操作时序
图 4
3.读写时序参数表
表 5
名 称
|
符 号
|
*小值
|
典型值
|
*大值
|
单位
|
E 周期时间
|
Tcyc
|
1000
|
---
|
---
|
ns
|
E高电平宽度
|
Pweh
|
450
|
---
|
---
|
ns
|
E低电平宽度
|
Pwel
|
450
|
---
|
---
|
ns
|
E上升时间
|
Tr
|
---
|
---
|
25
|
ns
|
E下降时间
|
Tf
|
---
|
---
|
25
|
ns
|
地址建立时间
|
Tas
|
140
|
---
|
---
|
ns
|
地址保持时间
|
Tah
|
10
|
---
|
---
|
ns
|