RAiO
RA8802
RA8820
中文文字 /图形
LCD 控制器
应 用 手 册
Version 2.5
October 1, 2004
RAi O Technology Inc.
Copyright RAiO Technology Inc. 2003, 2004
RA iO TECHNOLOGY INC. 1/115 www.raio.com.tw
Version 2.5
RA8802/8820 中文文字 /图形 LCD 控制器应用手册改版说明
版 本 日 期 说 明
2.0 January 29, 2004 First Release Version
修改第 4 章与 9.15节
2.1 March 25, 2004
增加图 B-1B
RA8802/8820
中文文字/图形
LCD
控制器应用手册
2.2 April, 12, 2004
2.3 May 3, 2004
2.4 June 10, 2004
2.5 October 1, 2004
增加附录 B.4 Power 应用电路
增加 4.1、4.2、8.2、8.3、8.4、附录 E 节
修改 2、2.3、3、5、7、8.1、9.13 附录 B.2、B.3、F 节
修改图 B-1B 的接脚名称
增加表 3-1 :RA8802/8820 与驱动器 IC 的接口名称对照表
修改图 5-1 、图 5-2 :用 DAC 控制 LCD 亮度的应用电路及文字说
明
增加图 8-2A:重置脚位 RST# 的时序
修改图 8-3:一般 RA8802/8820 电源开启或重置的流程图
修改图 B-3, B-4, B-5
增加附录 G. 字型与字码表(GB)
RA iO TECHNOLOGY INC. 2/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
章 节 内 容 页 数
1. 简介 ......................................................................................................................................5
2. 微控制器 (MCU)的接口 ..........................................................................................................6
2.1 8080 系列的 MCU 接口 ..................................................................................................................................6
2.2 6800 系列的 MCU 接口 ..................................................................................................................................7
2.3 4Bit/8Bit 的 MCU 界面 ...................................................................................................................................9
2.4 MCU 接口的程序范例 .................................................................................................................................. 10
3. 液晶显示 驱动器 (LCD Driver)的接口 ...................................................................................13
3.1 液晶显示器面板 (LCD Panel) 大小的设定 ................................................................................................... 14
4. 中文字型 ROM ....................................................................................................................16
4.1 中文字型 ROM 的使用 ................................................................................................................................. 16
4.2 自建字型 ROM............................................................................................................................................. 18
5. 液晶显 示器的亮度调整 ........................................................................................................23
6. 触摸式面板 (Touch Panel)的界面 .......................................................................................28
6.1 电阻式触摸面板 ........................................................................................................................................... 28
6.2 触摸面板的应用 ........................................................................................................................................... 30
7. 系统时 序 (Clock)的选择 ......................................................................................................34
8. 硬件的启始 设定 ...................................................................................................................36
8.1 重置 (Reset)与系统设定 ............................................................................................................................... 36
8.2 电源开启或重置 (Power On/Reset)的程序 .................................................................................................. 38
8.3 缓存器的起始设定 ....................................................................................................................................... 40
8.4 Wakeup 的程序 ........................................................................................................................................... 41
9. RA8802/8820 功能应 用介绍 ...............................................................................................42
9.1 文字模式设定 ............................................................................................................................................... 42
9.1.1 文字显示 ............................................................................................................................................... 42
9.1.2 粗体字之显示功能 ................................................................................................................................44
9.2 绘图模式设定 ............................................................................................................................................... 45
9.3 闪烁与反白显示 ........................................................................................................................................... 48
9.3.1 闪烁显示 ............................................................................................................................................... 48
9.3.2 屏幕反白 ............................................................................................................................................... 49
9.3.3 文字反白 ............................................................................................................................................... 50
9.4 中 /英文文字对齐 .......................................................................................................................................... 51
9.5 LCD 屏幕显示 On/Off 设定 ......................................................................................................................... 53
9.6 光标 On/Off 设定 ......................................................................................................................................... 53
9.7 光标位置与移位设定 .................................................................................................................................... 53
RA iO TECHNOLOGY INC. 3/115 www.raio.com.tw
Version 2.5
9.7.1 光标位置 ............................................................................................................................................... 53
9.7.2 游标移位 ............................................................................................................................................... 56
9.8 光标闪烁设定 ............................................................................................................................................... 56
9.8.1 光标闪烁时间设定 ................................................................................................................................57
9.9 光标高度与宽度设定 .................................................................................................................................... 57
9.9.1 游标高度 ............................................................................................................................................... 57
9.9.2 游标宽度 ............................................................................................................................................... 58
9.10 工作及显示窗口大小设定 .......................................................................................................................... 59
9.11 行距设定 .................................................................................................................................................... 65
9.12 自动填入数据到 DDRAM...........................................................................................................................65
9.13 屏幕更新频率设定 ..................................................................................................................................... 66
9.14 中断 (Interrupt)与忙碌 (Busy)设定 ............................................................................................................ 66
9.15 省电模式 .................................................................................................................................................... 68
9.16 ASCII 区块选择设定 .................................................................................................................................. 69
9.16.1 ASCII 字形区块 0............................................................................................................................... 69
9.16.2 ASCII 字形区块 1............................................................................................................................... 71
9.16.3 ASCII 字形区块 2............................................................................................................................... 72
9.16.4 ASCII 字形区块 3............................................................................................................................... 73
中文文字/图形
RA8802/8820
LCD
控制器应用手册
附录 A. 液晶显 示驱动 器(LCD Driver) 的时 序图 ......................................................................74
附录 B. 应 用电 路图.................................................................................................................76
B.1 RA8802 应用电路 (320x240).......................................................................................................................76
B.2 RA8802 应用电路 (320x240).......................................................................................................................78
B.3 RA8820 应用电路 (160x160).......................................................................................................................80
B.4 Power 应用电路 ......................................................................................................................................... 82
附录 C. 除错 与分析流程..........................................................................................................84
附录 D. 支援的 Driver 型号.....................................................................................................85
附录 E. 指令时间.....................................................................................................................86
附录 F. C51 范例程序..............................................................................................................87
附录 G. 字型与字码 表(GB) .....................................................................................................94
RA iO TECHNOLOGY INC. 4/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
1. 简介
RA8802/8820 是一个中英文文字与绘图模式的点矩阵液晶显示(LCD) 控制器,RA8802 可最大支持 320x240
点的 LCD 面板,RA8820 可最大支持 240x240 点的 LCD 面板。内建 512K Byte 的字型码,可以显示中文字
型、数字符号、英日欧文等字母,使用者只要透过 MCU 对 RA8802/8820 写入中/ 英文字型码,就可以直接
在 LCD 面板上显示中英文字型,而不需要透过 MCU 以绘图方来处理中英文的显示。为了让使用者更加了解
RA8802/8820 的使用与其附加的许多软硬件功能,因此建立此应用手册供客户参考。
图 1-1 是 RA8802/8820 的系统接口图,我们将依据此系统接口图,在以下的几章分别做完整的界面介绍,
同时会在每一个应用上举出图示与例题,让使用者了解硬件的连接状态。在第九章我们将对 RA8802/8820
所提供的功能做详细的说明与介绍,同样配合许多图示与例题让使用者在实际设计时能轻易上手。最后在目
录内我们附了很多参考数据,如完整电路图、Demo Program 等等,为了配合此应用手册,希望使用者能与
RA8802/8820 的 Data Sheet 一同参考,以其达到最快的学习效果。
微控制器
MCU
(
)
液晶驅動器
( LCD Driver)
液晶顯示器
(LCD Panel)
RA8802
RA8820
可擴充字形
(Extendible
Font ROM)
硬體
啟始設定
時脈
(Clock)
图 1-1 :RA8802/8820 系统接口图
升壓電路
(
亮度調整
觸摸式面板
(Touch Panel)
)
RA iO TECHNOLOGY INC. 5/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
2. 微控制器 (MCU)的接口
RA8802/8820 文字/图形 LCD 控制器与一般的 LCD 控制器相类似,都有支持 8080 和 6800 两大系列属性的
MCU 接口。使用者可以透过 SYS_MI 这根脚位去选择 RA8802/8820 的 MCU 接口是 8080 或者是 6800 的兼
容系统,如果 SYS_MI 外接一 Pull Low 电阻,则 RA8802/8820 的 MCU 将定义成与 8080 兼容的接口,否
则 RA8802/8820 的 MCU 接口将定义成与 6800 兼容的接口。
2.1 8080
系列的
MCU
接口
图 2-1 是 RA8802/8820 与 8080 兼容系列的 MCU 接口示意图,此时 RA8802/8820 将只接受与 8080 系列兼
容的 MCU 所传送出来的控制信号。
8080
MCU
A0
A1-A7
IORQ
D0-D3(D0-D7)
RD
WR
RES
Decoder
RA8802
RS
CS1
CS2
SYS_MI
DB0-3(DB0-7)RD
WR
RST
图 2-1 :8080 (4/8-bit) MCU 与 RA8802/8820 的界面图
图 2-2 是 8080 系列 MCU 与 RA8802/8820 间的系统时序图,在 RA8802/8820 的定义中,RS 为 “H” 时是表
示对缓存器下命令,也就是对 RA8802/8820 的缓存器进行读写的动作(Register Access Cycle),而 RS 为
“L” 时是表示对 Display RAM 进行 Data 读写的动作(Data Access Cycle)。不论是 8080 或 6800, “RS” Pin
通常接到 MCU 的 Address Pin “A0” ,8080系列 MCU 与 6800 最大的不同是 Read、Write 的控制信号是分
开的,RD 为 Low 时是进行读取动作,WR 为 Low 时是进行写入动作,至于读写的目的地则由 RS决定。
下面图 2-2 表示如果是对缓存器进行读取动作,MCU 必须透过数据总线先送出缓存器的地址,然后才能在
数据总线上读取缓存器的数据,如果是对缓存器进行写入动作,MCU 必须透过数据总线先送出缓存器的地
址,然后再送出要写入的数据。当 8088 MCU 对 RA8802/8820 Display RAM 进行数据的读取动作,MCU
能直接在数据总线上读取 Display RAM 的数据,如果 8088 MCU 对 Display RAM 进行数据的写入动作,
MCU 则直接在数据总线上送出要写入的数据。
RA iO TECHNOLOGY INC. 6/115 www.raio.com.tw
Version 2.5
AH8
t
RS, CS1
AW8
WR, RD
DB0~DB7
(WRITE)
DB0~DB7
(READ)
t
DS8
t
t
ACC8
CYC
t
CC
t
DH8
t
图 2-2 :8-Bit 8080 MCU 对 RA8802/8820 缓存器/Data 进行读取/ 写入动作
中文文字/图形
OH8
t
RA8802/8820
LCD
控制器应用手册
表 2-1
Signal Symbol Parameter
t
Address hold time 10 -- ns
RS, CS1#
WR#, RD#
DB0 to DB7
AH8
Address setup time 63 -- ns
t
Aw8
t
System cycle time 800 -- ns
CYC
Strobe pulse width 400 -- ns
t
CC
t
Data setup time 63 -- ns
DS8
t
Data hold time 10 -- ns
DH8
t
RD access time -- 330 ns
ACC8
Output disable time 10 -- ns
t
OH8
Rating
Min Max
Unit Condition
System Clock:
8MHz
Voltage: 3.3V
2.2 6800
系列的
MCU
接口
图 2-3 是 RA8802/8820 与 6800 兼容系列的 MCU 接口示意图,此时 RA8802/8820 将只接受 6800 系列兼容
的 MCU 所传送出来的控制时序。6800 系列 MCU Read, Write 的控制信号是同一根 Pin ,RD/WR 为 High 时
是进行读取动作,RD/WR 为 Low 时是进行写入动作,而 EN 则是确定读写的动作是否有效(Enable) ,至于
读写的目的地仍由 RS 决定。
RA iO TECHNOLOGY INC. 7/115 www.raio.com.tw
Version 2.5
6800
MCU
A0
A1-A7
VMA
Decoder
RA8802
RS
CS1
CS2
RA8802/8820
中文文字/图形
VDD
SYS_MI
LCD
控制器应用手册
D0-D3(D0-D7)
EN
R/W
RES
DB0-3(DB0-7)
EN
R/W
RST
图 2-3 :6800 (4/8-bit) MCU 与 RA8802/8820 的界面图
RA8802/8820 无法同时接受 6800 及 8080 的控制信号,因此在 MCU 的接口上,某些脚位上会因为使用者
选择不同的 MCU 而有不同的定义,例如 RD#(EN) (Pin#33) ,当使用者选择的 MCU 接口为 8080 时是定义
成 RD# ,而选择 6800 MCU 时是定义为 EN 。而 Pin #32 ,当使用者选择的 MCU 接口为 8080 时是定义成
WR#,而选择 6800 MCU 时是定义为 RD/WR,对于 MCU 接口的脚位定义,使用者可以参考 RA8802/8820
Data Sheet 第 4.1 节的说明。
下面图 2-4 表示如果是 6800 MCU 对 RA8802/8820 缓存器进行读取动作,MCU 必须透过数据总线先送出缓
存器的地址,然后才能在数据总线上读取缓存器的数据,如果是对缓存器进行写入动作,MCU 必须透过数
据总线先送出缓存器的地址,然后再送出要写入的数据。当 6800 对 RA8802/8820 Display RAM 进行数据的
读取动作,MCU 能直接在数据总线上读取 Display RAM 的数据,如果 6800 MCU 对 Display RAM 进行数据
的写入动作,则 MCU 直接在数据总线上送出要写入的数据。
RA iO TECHNOLOGY INC. 8/115 www.raio.com.tw
Version 2.5
CYC6
EN
t
RA8802/8820
中文文字/图形
LCD
控制器应用手册
RS, R/W, CS1
Signal Symbol Parameter
A0, R/W#,
CS1#
DB0 to DB7
EN tEW Enable pulse width 400 -- ns
2.3 4Bit/8Bit的MCU
DB0~DB7
(WRITE)
DB0~DB7
(READ)
AW6
t
DS6
t
ACC6
t
EW
t
AH6
t
DH6
t
OH6
t
图 2-4 :8-bit 6800 MCU 对 RA8802/8820 缓存器/Data 进行读取/ 写入动作
表 2-2
Rating
Min Max
t
Address hold time 10 -- ns
AH6
t
Address setup time 63 -- ns
Aw6
t
System cycle time 800 -- ns
CYC6
t
Data setup time 63 -- ns
DS6
t
Data hold time 10 -- ns
DH6
t
Access time -- 330 ns
ACC6
Output disable time 10 -- ns
t
OH6
Unit Condition
System Clock:
Voltage: 3.3V
界面
8MHz
RA8802/8820 除了支持 8080和 6800两大系列兼容的 MCU 接口外,也可以设定 MCU 上的数据总线接口是
4-Bit 或是 8-Bit,使用者可以透过 SYS_DB 这根脚位去选择 MCU 的数据总线 (Data Bus)接口,如果
SYS_DB 外接一 Pull Low 电阻,则 RA8802/8820 的 MCU 数据总线接口将定义成 4-Bit,否则
RA8802/8820 的 MCU 数据总线接口将定为 8-Bit。因为 RA8802/8820 内部的缓存器大多是 8-Bit 的架构,
因此如果使用 4-Bit 的数据总线接口,MCU 将会花较多的周期(Cycle) 去存取 RA8802/8820 内部的缓存器。
当选择 4-bit MCU 作传输模式时,RA8802/8820 的 MCU 接口只有用到数据总线的 DB3~DB0 ,而没有用到
的 DB7~DB4 则必须接 Pull Low ,同时每一个八位的指令或数据将被分为两个 Nibble(4-Bit) 依序透过数据总
RA iO TECHNOLOGY INC. 9/115 www.raio.com.tw
Version 2.5
线的 DB3~DB0 进行传送,第一次先透过总线 (DB3~DB0)传送数据的较高位 Bit[7..4],第二次再透过总线
(DB3~DB0)传送数据的较低位 Bit[3..0],使用者可以参考 2.4 节中的例题 5~8。
中文文字/图形
RA8802/8820
LCD
控制器应用手册
2.4 MCU
接口的程序范例
下面将列出一些简单的程序说明 MCU 与 RA8802/8820 存取缓存器的方式,这些程序及以后的范例都是以
65C02 的 汇编语言撰写,非常浅显易懂,也相当容易转成其它的语言格式。在此之前我们必须先了解
RA8802/8820 的 Pin “RS”定义, RA8802/8820的 “RS” 是缓存器 (RS=1)及 DDRAM(RS=0) 的选择 Pin,可
由 SYS_PLR 这根脚位去选择,也就是说 MCU 要对 RA8802/8820 缓存器进行存取的动作时 RS 必须为 1 ,
由前面的接口示意图可以知道 “RS” Pin 通常接到 MCU 的 Address Pin “A0” ,在这些例子当中我们定义 A0
= 1 时 MCU 的译码位置为 REG_ADDR , A0 = 0 时 MCU 的译码位置为 DATA_ADDR 。
例 题 1:8-Bit MCU 写入 Data 到 RA8802/8820 的缓存器
LDA #00h ; 选择 LCD Controller Register (LCR)
STA REG_ADDR
LDA #A5h ; 写入“A5” 到 LCR 缓存器
STA REG_ADDR
LDA #E0h ; 选择 Pattern Data Register (PDR)
STA REG_ADDR
LDA #5Ah ; 写入“5A” 到 PDR 缓存器
STA REG_ADDR
例 题 2 :8-Bit MCU 读取 RA8802/8820 的缓存器的 Data
LDA #00h ; 选择 LCD Controller Register (LCR)
STA REG_ADDR
LDA REG_ADDR ; 读取 LCR 缓存器的值
LDA #E0h ; 选择 Pattern Data Register (PDR)
STA REG_ADDR
LDA REG_ADDR ; 读取 PDR 缓存器的值
例 题 3:8-Bit MCU 写入一中文到光标所在的位置
LDA #BAh ; 加载 “网 ” 的中文码高位 “BA”
STA DATA_ADDR
LDA #F4h ; 加载 “网 ” 的中文码低位 “F4”
STA DATA_ADDR ; 光标所在的位置将显示 “ 网 ” 的中文字
LDA #ADh ; 加载 “页 ” 的中文码高位 “AD”
STA DATA_ADDR
LDA #B6h ; 加载 “页 ” 的中文码低位 “B6”
STA DATA_ADDR ; 光标所在的位置将显示 “ 页 ” 的中文字
RA iO TECHNOLOGY INC. 10/115 www.raio.com.tw
Version 2.5
例 题 4: 8-Bit MCU 读取 Display RAM 的 Data
LDA REG_ADDR ; 读取光标所在的位置的 Display RAM Data
上面的例题 1~4 是 8-Bit 的 MCU 存取方式,如果是使用 4-Bit 的数据总线接口,MCU 将会花较多的 Cycle
Time 去存取 RA8802/8820 内部的缓存器及 Display RAM Data ,使用者可以比较一下例题 5~8 与例题 1~4
的差异性。
例 题 5:4-Bit MCU 写入 Data 到 RA8802/8820 的缓存器
LDA #0h ; 选择 LCD Controller Register (LCR)
STA REG_ADDR
LDA #0h
STA REG_ADDR
LDA #Ah ; 写入“A5” 到 LCR 缓存器
STA REG_ADDR
LDA #5h
STA REG_ADDR
LDA #Eh ; 选择 Pattern Data Register (PDR)
STA REG_ADDR
LDA #0h
STA REG_ADDR
LDA #5h ; 写入“5A” 到 PDR 缓存器
STA REG_ADDR
LDA #Ah
STA REG_ADDR
例 题 6 :4-Bit MCU 读取 RA8802/8820 的缓存器的 Data
LDA #0h ; 选择 LCD Controller Register (LCR)
STA REG_ADDR
LDA #0h
STA REG_ADDR
LDA REG_ADDR ; 读取 LCR 缓存器的值(High Nibble)
:
:
LDA REG_ADDR ; 读取 LCR 缓存器的值(Low Nibble)
LDA #Eh ; 选择 Pattern Data Register (PDR)
STA REG_ADDR
LDA #0h
STA REG_ADDR
LDA REG_ADDR ; 读取 PDR 缓存器的值(High Nibble)
:
:
LDA REG_ADDR ; 读取 PDR 缓存器的值 (Low Nibble)
中文文字/图形
RA8802/8820
LCD
控制器应用手册
RA iO TECHNOLOGY INC. 11/115 www.raio.com.tw
Version 2.5
例 题 7: 4-Bit MCU 写入一中文到光标所在的位置
LDA #Bh ; 加载 “网 ” 的中文码高位 “BA”
STA DATA_ADDR
LDA #Ah
STA DATA_ADDR
LDA #Fh ; 加载 “网 ” 的中文码低位 “F4”
STA DATA_ADDR
LDA #4h
STA DATA_ADDR ; 光标所在的位置将显示 “网 ” 的中文字
LDA #Ah ; 加载 “页 ” 的中文码高位 “AD”
STA DATA_ADDR
LDA #Dh
STA DATA_ADDR
LDA #Bh ; 加载 “页 ” 的中文码低位 “B6”
STA DATA_ADDR
LDA #6h
STA DATA_ADDR ; 光标所在的位置将显示 “ 页 ” 的中文字
例 题 8 :4-Bit MCU 读取 Display RAM 的 Data
LDA REG_ADDR ; 读取光标所在的位置的 Display RAM Data(High Nibble)
:
:
LDA REG_ADDR ; 读取光标所在的位置的 Display RAM Data(Low Nibble)
:
:
:
RA8802/8820
中文文字/图形
LCD
控制器应用手册
RA iO TECHNOLOGY INC. 12/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
3. 液晶显示 驱动器 (LCD Driver)的接口
本章将介绍 RA8802/8820 与液晶显示驱动器(LCD Driver) 之间的接口,RA8802 最大可支持 320x240 点的液
晶显示器(LCD Panel) ,而 RA8820 最大可支持 240x160 点,使用者可以依据在此范围内想设计的显示器
Panel 大小来选择适当的 LCD Driver 。图 3-1 是 RA8802/8820 与 ST8016 LCD Driver 连接的示意图,用来
驱动 160x160 的液晶显示器面板。
VDD
VSS
DISPOFF
LD0~LD7
RA8802
YD
FRM
LP
XCK
EIO1
MD
S/C
L/R
DI0~DI7
EIO2
ST8016
(Common)
FR
LP
DISPOFF
XCK
Y1~Y160
160*160 DOT LCD
PANEL
DISPOFF
XCK
EIO2
LP
DI0~DI7
L/R
FR
ST8016
(Segment)
S/C
MD
Y1~Y160
EIO1
图 3-1 :RA8802/8820 与 LCD Driver(ST8016) 的接线图
在图 3-1 中使用两个 ST8016 的 LCD Driver ,分别处理 160x160 LCD Panel 的 Common 及 Segment ,而
RA8802/8820 则送出 Frame(FRM)、 Latch Pulse(LP)、 YD 及 Data Bus 等信号给 ST8016,图 3-2 是
RA8802/8820 与 LCD Driver 之间的接口讯号波形图,
对于 LCD Driver 接口的脚位定义 ,使用者可以参考
RA8802/8820 Data Sheet 第 4.2 节的说明。
RA iO TECHNOLOGY INC. 13/115 www.raio.com.tw
Version 2.5
Total 160 LP for
one frame
FRM
YD
LP
XCK
DATA
COM1 Period
FRM
YD
LP
XCK
DATA
D1 D2 D1 D39 D38 D37 D12 D11 D10 D9 D8 D7 D6 D5
D2
D4 D3
RA8802/8820
中文文字/图形
LCD
控制器应用手册
COM (N) Period
FRM
YD
LP
XCK
DATA
D
N-5DN-4DN
-
3
D
N-2DN-1
D
N
D1 D2
图 3-2 :RA8802/8820 与 Driver 的接口讯号波形图
RA8802/8820 也可以设定连接至 LCD Driver 上的数据总线接口是 4-Bit 或是 8-Bit,使用者可以透过
SYS_LD 这根脚位去选择,如果 SYS_LD 外接一 Pull Low 电阻,则 RA8802/8820 的 LCD Driver 数据总线
接口将定义成 4-Bit,否则 RA8802/8820 的 LCD Driver 数据总线接口将定为 8-Bit。像图 3-1 中
RA8802/8820 与 ST8016 LCD Driver 连接的就是 8-Bit 的总线接口。
3.1
液晶显示器面板
(LCD Panel)
大小的设定
RA8802 可以支持 320x240 点尺寸的液晶显示器(LCD Panel),也就是 20 列 x 15 行的中文字(RA8802/8820
内定每一中文字型为 16x16 点),RA8820 可以支持 240x160 点尺寸的液晶显示器(LCD Panel),也就是 15
列 x 10 行的中文字,针对不同尺寸的液晶显示器,可透过软件的方式来设定:
RA iO TECHNOLOGY INC. 14/115 www.raio.com.tw
Version 2.5
软件设定:使用者可以透过设定缓存器的方式,来更改对应的显示器大小。可利用显示窗口 (Display
Window) REG[28h, 38h, 48h, 58h]和工作窗口 (Active Window)REG[20h, 30h, 40h, 50h] ,来改变
RA8802/8820 对显示器大小的设定。例如 RA8802,使用者选用的是 320x240 LCD 面板,所使用到的范围
也是 320x240 点的大小,此时的显示窗口与工作窗口的缓存器设定值是相同的。
表 3-1 :RA8802/8820 与驱动器 IC 的接口名称对照表
中文文字/图形
RA8802/8820
LCD
控制器应用手册
RA8802/8820
Driver 界面名称
LP
XCK
YD
FRM DF(M)
LD[7:0] D[7:0]
DISPOFF
Driver IC 界面名称 Driver IC 界面名称之定义
LP
LOAD
CL1
CP
SCP
CL2
FLM
FR
FRAME
/DISPOFF
/D.OFF
DISP
Data Latch Clock
Latch Pulse in one line
Latch pulse of display data
Data Latch Pulse
Data Shift Clock
Clock pulse for segment shift register
Shift Clock Pulse for X-Drivers
Data Shift Pulse
Scan Start-up Signal
First Line Marker
Frame Pulse
Frame start signal(First line mark of common
signal)
Switch signal to convert LCD drive waveform
into AC
LCD Data Bus
Display OFF
Display OFF
Display OFF
RA iO TECHNOLOGY INC. 15/115 www.raio.com.tw
Version 2.5
4. 中文字型 ROM
RA8802/8820
中文文字/图形
LCD
控制器应用手册
4.1
中文字型
ROM
的使用
RA8802/8820 内建有 512KByte 的 16x16 中文显示字型 ROM(Font ROM) ,其中 RA8802/8820-T 储存标准
繁体中文 BIG5 码,包含 13,094 个常用与次常用字型、408 个特殊字与两组 ASCII CODE ,RA8802/8820-S
储存 7602 个标准 GB 码的简体中文。同时 RA8802/8820 也提供额外的硬件界面可支持一外挂的 512KByte
字型 ROM(External ROM) ,让使用者的显示字型多一倍。一般来说,RA8802/8820 内建的中文显示字型已
经可以符合大多数的中文显示应用,如果仍然不足才需要外加字型 ROM ,当然如果不须要外挂字型 ROM
时,在电路板(PCB) 的 Layout 上可以省略许多 Pin 不用,如 MA[19..0] 、MD[7..0] 和 MCS# 等。
不过要注意,MA0 必须 Pull High(10KOhm) ,如果不使用外接字型 ROM ,建议您 MA[7:0] 与 MD[7:0] 可直
接接到 VDD ,以节省电源消耗。
图 4-1 为 RA8802/8820 与外挂字型 ROM(512Kbyte) 之间的电路接口,图 4-2 说明这些连接讯号的动作及相
关的波形。对于外挂的字型 ROM 接口脚位定义,使用者可以参考 RA8802/8820 Data Sheet 第 4.4 节的说
明。
RA8802 MX27C4000
MA[18..0]
4MBit
A[18:0]
MD[7:0]
MCS#
D[7:0]
OE#
CE#
图 4-1: RA8802/8820 与外挂字型 ROM(512KByte)之间的电路接口
ADDRESS
INPUT
(MA0~MA18)
MCS
DATA OUT
MD0~MD7
t
ACC
t
CS
DATA ADDRESS
VALID DATA
图 4-2 RA8802/8820 与外部字型 ROM 的波形图
t
OH
RA iO TECHNOLOGY INC. 16/115 www.raio.com.tw
Version 2.5
缓存器 [F0h]是用来设定与字型 ROM 相关的功能, Bit6 就是如前面所述用来选择显示的字形是使用内部字型
ROM 或是外部字型 ROM。而当使用者选择 RA8802/8820-T 时,必须将 Bit[5..4]设成 “01” 才能正确显示繁
体字型,选择 RA8802/8820-S 时,必须将 Bit[5..4]设成 “10” 才能正确显示简体字型。
REG [F0h] Font Control Register (FCR)
Bit Description Text/Graph Default Access
中文文字/图形
RA8802/8820
LCD
控制器应用手册
字型 ROM 的转换
7
1:致能
0:禁能
内部 /外部字型 ROM 选择
6
1:选择外部字型 ROM
0:选择内部字型 ROM
字型 ROM 的语系选择
5-4
下面的例题在第一章有提到,只要先设定光标位置,然后将要显示的中文其中文码 (Big-5 或 GB 码 )共两个
Byte,透过 MCU 写入 Data Address 既可:
01:选择繁体( BIG5)字型
10:选择简体( GB)字型
文字码的类别选择 (注 1)
2
1:输入的数据为 ASCII 码
0:输入 GB 码为中文字
例 题 :8-Bit MCU 写入一中文字 “网 ” 到光标所在的位置
LDA #10010000b ; 选择内部字形 ROM 与繁体字型
Write_REG[F0h]
LDA #BAh ; 加载 “网 ” 的中文码高位 “BA”
STA DATA_ADDR
LDA #F4h ; 加载 “网 ” 的中文码低位 “F4”
STA DATA_ADDR ; 光标所在的位置将显示 “ 网 ” 的中文字
--
-- 0h R/W
-- 00h R/W
Text 0h R/W
1h R/W
注 1:中文内码不论是 GB 或 BIG5 码都是由两个 Byte 组成,但是英文及一些符号 ASCII 码只由一个 Byte
组成(00h~FFh),通常 RA8802/8820 将送到 Display RAM 的 Data(00h~9Fh)视为 ASCII 码,也就半
角文字(8x16),大于等于 “A0h” 的视为全角码(如繁简中文)的高位,必须再送一次低位内码,才能显
示全角字型。如果使用者有用到 A0h~FFh 的 ASCII 码,则 MCU 在送 Data(ASCII 码)到 Display RAM
之前必须将缓存器[F0h]的 Bit2 设成 “1”。
RA iO TECHNOLOGY INC. 17/115 www.raio.com.tw
Version 2.5
RA8802/8820
中文文字/图形
LCD
控制器应用手册
4.2
自建字型
ROM
RA8802/8820 内建有 512KByte 字型 ROM(Font ROM) ,也可以开放给客户下 Mask 使用,客户可以自
行编码自建字库,每个字都是 16x16 的字型,因为 16x16 的字形型需要 32Byte 的内存空间,512Kbyte
的 ROM 共可以储存 16K 个字型(16Kx32=512K) ,512Kbyte 的 ROM 共有 19 条地址线(Address Line)
Æ A[18:0] ,00000h~0001Fh 的 32Byte 储存第一个字形, 00020h~0003Fh 的 32Byte 储存第二个字
形,依此类推,如下表 4-1:
表 4-1
Addr[18:5] Addr[4:0]
000,0000,0000,000 XXXXX 1
000,0000,0000,001 XXXXX 2
:
:
111,1111,1111,110 XXXXX 16383
111,1111,1111,111 XXXXX 16384
XXXXX
XXXXX
字型 No.
:
:
至于 32Byte 的字型储存顺序如图 4-3 所示,假设您想将图 4-4 的字当成 Font ROM 的第一个字形,那么
ROM 00000h~0001Fh 的储存数据如下表 4-2:
RA iO TECHNOLOGY INC. 18/115 www.raio.com.tw
Version 2.5
表 4-2
Addr[18:5] Addr[4:0] Data
RA8802/8820
中文文字/图形
LCD
控制器应用手册
000,0000,0000,000
00000 08h
00001 1Ch
00010 1Ch
00011 FFh
00100 7Fh
00101 1Ch
00110 3Eh
00111 3Eh
01000 77h
01001 41h
01010 00h
01011 00h
01100 83h
01101 7Fh
01110 3Fh
01111 0Fh
10000 20h
10001 10h
10010 1Ch
10011 9Eh
10100 1Eh
10101 1Fh
10110 1Fh
10111 1Fh
11000 1Fh
11001 3Fh
11010 7Eh
11011 FEh
11100 FCh
11101 F8h
11110 F0h
11111 C0h
RA iO TECHNOLOGY INC. 19/115 www.raio.com.tw
Version 2.5
RA8802/8820
中文文字/图形
LCD
控制器应用手册
Byte1
Byte2
:
:
:
:
:
:
:
:
:
:
:
:
Byte15
Byte16
Byte17
Byte18
:
:
:
:
:
:
:
:
:
:
:
:
Byte31
Byte32
08h
1Ch
1Ch
FFh
7Fh
1Ch
3Eh
3Eh
77h
41h
00h
00h
83h
7Fh
3Fh
0Fh
20h
10h
1Ch
9Eh
1Eh
1Fh
1Fh
1Fh
1Fh
3Fh
7Eh
FEh
FCh
F8h
F0h
C0h,
图 4-3 :32Byte 的字型储存顺序 图 4-4 :32Byte 的字型 Data
因为 512Kbyte 的 ROM 共可以储存 16K 的字型,所以我们用 2 个 Byte 的字型码来选择显示的字型,事
实上字型码与 ROM Address 的对应如图 4-5 所示。字型码的 High Byte 与 Low Byte 各取 Bit[6:0] 组合成
Font ROM 的 Address A[18:5] ,也就是 A[18] 对应 High Byte 的 Bit6 , A[17] 对应 High Byte 的 Bit5 ,依
此类推,A[11] 对应 Low Byte 的 Bit6 ,A[10] 对应 Low Byte 的 Bit5 ,直到 A[5] 对应 High Byte 的 Bit0 ,
至于 High Byte 与 Low Byte 的 Bit7 为 0 或 1 皆不影响选择显示的字型。
High B yte
7 6 5 4 3 2 1 0
Low Byte
7 6 5 4 3 2 1 0
18 17 16 15 14 13 12 11 10 9 8 7 6 5
ROM Address
图 4-5 :字型码与 ROM Address 的对应
如果 Font ROM 的 00000h~0001Fh 储存表 4-2 的 Data ,那么在文字模式下连续写入”00h”( 或 80h) 两次
(High Byte and Lowe Byte),光标所在位置会秀出图 4-4 所示的字型,请参考图 4-6。图 4-6 中 High
Byte 与 Low Byte 的 Bit7 为 X,代表 Don’t Care,也就是 0 或 1 皆不影响选择显示的字型。
RA iO TECHNOLOGY INC. 20/115 www.raio.com.tw
Version 2.5
Address(0000h~0001Fh)
18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 000000000 0 0 0 0
:
:
:
0 0 0 0 0 0 0 0000000 1 1 1 1 1
RA8802/8820
中文文字/图形
LCD
控制器应用手册
X 0 0 0 0 0 0 0
7 6 5 4 3 2 1 0
High Byte =00h or 80h
图 4-6 :字型码与 ROM Address 对应的例题(1)
再假设 Font ROM 的 5C8A0h~5C8BFh 储存表 4-2 的 Data ,那么在文字模式下连续写入”5Ch”(High
Byte) 与 ”45h”(Lowe Byte),光标所在位置会秀出图 4-4 所示的字型,请参考图 4-7。同样的在图 4-7 中
High Byte 与 Low Byte 的 Bit7 为 X,代表 Don’t Care,也就是 0 或 1 皆不影响选择显示的字型。
因此客户可以依据上述法则建立自己的 ROM Code 与字型码,经由下 Mask 产生专有的字型用于产品
上。而客户拿到自己建立字型 ROM 的 RA8802/8820 后,在使用上必须将缓存器[F0h] 的 Bit[7] 设成 “0”
才能正确显示相对应于字型码的字型。至于外挂字型 ROM 也是同样的根据这个规则,只是使用时要将
缓存器[F0h] 的 Bit6 要设成 1 。
附带一提的是您也可以将字型当成一 16x16 的 Bitmap ,每个 Bitmap 由 2 个 Byte 码来定义,利用不同
的 Bitmap 组合成一图形,相对于 512Kbyte 的 ROM ,可以储存许多图形在里面!
X 00000 0 0
7 65432 1 0
Low Byte = 00h or 80h
RA iO TECHNOLOGY INC. 21/115 www.raio.com.tw
Version 2.5
Address(5C8A0h~5C8BFh)
18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
1 0 1 1 1 0 010001010 0 0 0 0
:
:
:
1 0 1 1 1 0 0 1000101 1 1 1 1 1
RA8802/8820
中文文字/图形
LCD
控制器应用手册
X 1 0 1 1 1 0 0
7 6 5 4 3 2 1 0
High Byte = 5Ch or DCh
图 4-7:字型码与 ROM Address 对应的例题 (2)
X 10001 0 1
7 65432 1 0
Low Byte = 45h or C5h
RA iO TECHNOLOGY INC. 22/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
5. 液晶显 示器的亮度调整
传统的 LCD 亮度调整方式大都是以可调式电阻为主,藉由电阻值的改变去控制供给 LCD 面板的升压电路,
来达到调整 LCD 亮度的目的,使用上非常不方便。因此 RA8802/8820 内建了一个定电流输出的 5-bit 数字模拟转换器(Digital to Analog Converter, DAC),使用者可以利用这个 DAC 产生不同的电流输出,进而控制
外部的升压电路,使得供给 LCD Panel 高压的电压准位随着 DAC 的设定值而改变,这样透过 MCU 就可以
达到用程序的方法去控制 LCD 的亮度。
IOUT
RA8802/8820
R2
3.9K
R1
680
104
R3
VEE
39K
V1
LM358
100K
100K
100K
VEE
VEE
R7
100K
LM358
V0
LCD
PANEL
图 5-1 :用 DAC 控制 LCD 亮度的应用电路(I)
VDD
VEE
4.7u
IOUT
RA8802/8820
0.1
R1
2.2K
R2
0
R3
200K
4.7u
VIN
SHDN
LT1615
L1
SW
GND
FB
R4
1M
R5
100K
R6
39K
图 5-2 :用 DAC 控制 LCD 亮度的应用电路(II)
图 5-1 是用 RA8803/8822 的 DAC 控制 LCD 亮度的应用电路,在此图中 RA8803/8822 是利用外部减法器电
路和控制 DAC 电流输出范围,去改变供给 LCD 面板的输出电压 “V0” 的变动范围,进而得到想要的亮度控
RA iO TECHNOLOGY INC. 23/115 www.raio.com.tw
Version 2.5
制。图 5-2 是藉由升压组件(LT1615)来做 VEE 电压的输出调整,以供给 LCD 面板的应用电路,R5 用来调
整 VEE(通常为 VLCD 电压) ,让 VEE 调整为适合所使用的 Panel 与驱动 IC 之电压准位,若要经由
RA8803/8822 进行亮度控制,可由 RA8803/8822 的 DAC 输出电流 IOUT 进行(5Bit 的 DAC 可以有 32 阶的
变化),由 R3 来调整控制的范围,使缓存器 LCCR[4:0] 为 00000b~11111b 时,VEE 的+/- 变化在 1V~2V 左
右(视 Panel 的特性) 。RA8803/8822 DAC 输出电流与 VEE 为反比关系,此电路可节省较多的组件,降低成
本。事实上控制 LCD 亮度的方法很简单,只要透过 MCU 去设定缓存器 LCCR 就可以控制整个 DAC 的功
能,下面的程序例题是说明控制 LCD 的亮度为最亮及最暗的方法。
REG [D0h] LCD Contrast Control Register (LCCR)
Bit Description Default Access
LCD 亮度控制
1:禁能
7
0:致能
中文文字/图形
RA8802/8820
LCD
控制器应用手册
1h R/W
DAC 写入致能
1:不允许 MCU 写数据于 Bit[4..0]
6
0:允许 MCU 写入数据于 Bit[4..0]
重置 LCD 亮度控制功能
1:正常操作
5
0: DAC 重置,设 Iout 为 0uA
设 DAC Iout 值
00000b Æ 0µA (Min. Current)
4-0
图 5-3 是 RA8802/8820 DAC 的输出电流 “Iout” 和图 5-1 LCD 面板的输出电压 “V0” ,两者之间的对应曲线
:
:
11111b Æ 500uA (Max. Current)
例 题:
LDA #00111111b ; 设定 LCD 的亮度为最暗
Write_REG[D0h] ; 存入 Data 到缓存器[D0h]LCCR (注 1)
:
:
LDA #00110000b ; 设定 LCD 的亮度为最亮
Write_REG[D0h] ; 存入 Data 到缓存器[D0h]LCCR
1h R/W
1h R/W
0h R/W
图。每种 LCD 面板所需要的电压与明亮控制范围不同,因此使用者在开发时应配合 LCD 面板规格、升压电
路与控制 DAC 电流输出范围,才能得到想要的亮度控制,就如同图 5-1 的外部减法器电路,使用者可能需
RA iO TECHNOLOGY INC. 24/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
要改变 R1, R2 与 R3,以及用软件的方式和控制 DAC 电流输出范围,才能得到适当的亮度控制。
25.00
20.00
15.00
10.00
V0 (Voltage)
5.00
0.00
0.016
0.
047
0.078
0.
109
0.141
0.
172
0.203
0.2340.266
Iout (mA)
0.2970.328
0.3590.391
0.4220.
453
4
0.48
控制器应用手册
V0
图 5-3 :Iout 输出透过亮度调整电路与 V0 的对应曲线图
表 5-1 是图 5-1 的亮度调整电路的参数表。RA8802/8820 有 5-bit 的 DAC ,因此在 Iout 的输出电流会有 2
32 组的电流,当不同的电流输出到减法电路,可以得到 32 组不同的 V0 输出电压供给 LCD 面板,来达到亮
度调整的功能。当使用者搭配不同的 LCD 面板,所需要的电压与明亮控制范围会不同,所以在整个减法电
路的 R1 ,R2 和 R3 也可以依照需求来做调整,得到适合的 V0 输出电压供给 LCD 面板。
表 5-1 :亮度调整电路参数 (注 2)
Iout(mA) V1
R1(KΩ )R 2 ( KΩ)R 3 ( KΩ)
VEE V0
0.016 0.12 0.68 3.9 39 20 19.883
0.031 0.23 0.68 3.9 39 20 19.766
0.047 0.35 0.68 3.9 39 20 19.649
0.063 0.47 0.68 3.9 39 20 19.533
0.078 0.58 0.68 3.9 39 20 19.416
0.094 0.70 0.68 3.9 39 20 19.299
0.109 0.82 0.68 3.9 39 20 19.182
0.125 0.94 0.68 3.9 39 20 19.065
0.141 1.05 0.68 3.9 39 20 18.948
0.156 1.17 0.68 3.9 39 20 18.831
0.172 1.29 0.68 3.9 39 20 18.714
0.188 1.40 0.68 3.9 39 20 18.598
0.203 1.52 0.68 3.9 39 20 18.481
5
=
RA iO TECHNOLOGY INC. 25/115 www.raio.com.tw
Version 2.5
0.219 1.64 0.68 3.9 39 20 18.364
0.234 1.75 0.68 3.9 39 20 18.247
0.250 1.87 0.68 3.9 39 20 18.130
0.266 1.99 0.68 3.9 39 20 18.013
0.281 2.10 0.68 3.9 39 20 17.896
0.297 2.22 0.68 3.9 39 20 17.779
0.313 2.34 0.68 3.9 39 20 17.663
0.328 2.45 0.68 3.9 39 20 17.546
0.344 2.57 0.68 3.9 39 20 17.429
0.359 2.69 0.68 3.9 39 20 17.312
0.375 2.81 0.68 3.9 39 20 17.195
0.391 2.92 0.68 3.9 39 20 17.078
0.406 3.04 0.68 3.9 39 20 16.961
0.422 3.16 0.68 3.9 39 20 16.844
0.438 3.27 0.68 3.9 39 20 16.728
0.453 3.39 0.68 3.9 39 20 16.611
0.469 3.51 0.68 3.9 39 20 16.494
0.484 3.62 0.68 3.9 39 20 16.377
0.500 3.74 0.68 3.9 39 20 16.260
RA8802/8820
中文文字/图形
LCD
控制器应用手册
注 1:在上面例题中 “Write_REG[D0h]” 指令实际上是一个子程序,用来将累加器(Accumulator) 数据写入到
指定的 RA8802/8820 缓存器内,因此在以后的例题中 “Write_REG[xxh]” 所代表的意义为:
PHA ; 先将累加器(Accumulator)数据存入堆栈(Stack)
LDA #xxh ; 选择指定的缓存器(Register)地址
STA REG_ADDR
PLA ; 由堆栈中取出数据存入累加器
STA REG_ADDR ; 写入 Data 到之前指定的缓存器内
相同的在以后的例题中 “Read_REG[xxh]” 指令也是一个子程序,用来读取指定的 RA8802/8820 缓存
器数据,并存入累加器内,因此在以后的例题中 “Read_REG[xxh]” 所代表的意义为:
LDA #xxh ; 选择指定的缓存器(Register)地址
STA REG_ADDR
LDA REG_ADDR ; 读取之前指定的缓存器内的 Data
注 2 :在表 5-1 的 R1 ,R2 和 R3 ,是以 320x240 的 LCD 面板所得到最佳参数值。
虽然 DAC 可用于控制升压电路,进行对比显示(Contrast) 设定,但仍须要注意的是升压电路本身的精确度,
RA iO TECHNOLOGY INC. 26/115 www.raio.com.tw
Version 2.5
即使是同一批号的生压 IC ,产生的 VLCD 电压准位也会不同,而且 LCD Panel 对相同 VLCD 电压产生的对
比显示效果也不同,因此如果使用 RA8802/8820 的 DAC 进行对比显示(Contrast) 设定,建议仍要加上可调
电阻做为出厂设定。
中文文字/图形
RA8802/8820
LCD
控制器应用手册
RA iO TECHNOLOGY INC. 27/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
6. 触摸式面板 (Touch Panel)的界面
目前触摸式面板(Touch Panel)的应用愈来愈多,然而目前市面上的 LCD Controller 或 Driver 大都无法直接
提供触摸式面板的解决方案,因此使用者必须外加许多电路与零件,造成成本上的增加,而 RA8802/8820
内建了一个 8-bit 模拟-数字转换器(Analog to Digital Converter, ADC)及数个模拟开关(Analog Switch),使用
者可以将四线电阻式触摸式面板的 XL, XR, YU, YD 接到 RA8802/8820,然后利用模拟开关切换让 ADC 读
取电阻上的电压值,再由 MCU 读取 ADC 的转换值,而得到触摸面板 Touch 的相对位置。
6.1
电阻式触摸面板
电阻式触摸面板是由两层极薄的电阻面板组成,如图 6-1 所示,两层面板之间有一个很小的间距,当有外力
在面板上的某一点压下去时,会在施力点造成两层电阻接触,也就是短路(Short) ,而两层电阻面板的端点都
各有电极,如图 6-2 所示 YU, YD, XL, XR ,因此配合一些开关就可侦测出面板上哪一相对位置被 Touch 。
XL
YU
YD
图 6-1 :触摸面板(Touch Panel)
VCC
SW2
YU
Resistor-Y
XL
VCC
SW0 SW1
Y Plate
X Plate
Electrode
XR
XR
Resistor-X
YD
SW3
GND
图 6-2 :触摸面板与侦测开关
RA iO TECHNOLOGY INC. 28/115 www.raio.com.tw
Version 2.5
中文文字/图形
RA8802/8820
LCD
控制器应用手册
在图 6-3 中,设定开关 SW2 与 SW3 是 OFF(Open) ,SW0 与 SW1 是 ON(Close) ,当有外力在面板上的某
一点压下去时,由 YU 点取得电压接到 ADC(Analog to Digital Converter) ,就可以得到被 Touch 点的 X 坐标
相对位置。
VCC
SW2
To ADC
OFF
XL XR
VCC
SW0
ON
YU
Resistor-Y
Resistor-X
SW1
ON
SW3
OFF
YD
GND
图 6-3 :读取 X 坐标
VCC
V+
VCC
X5 X4 X3 X2 X1
VP
0
X5 X4 X3 X2 X1
P
X
X-axis
图 6-4 :Resistor-X 的分压
在图 6-3 中,因为开关 SW2与 SW3 是 OFF,因此 YD 点是 Floating,所以当有外力在面板上的某一点压下
去时,YU 上的电压事实上就是 X 的 Panel(也就是电阻)上的分压结果,压在面板上的不同一点,就会得到不
同的分压值,如图 6-4 所示。
同理,在图 6-5 中,设定开关 SW0 与 SW1 是 OFF(Open) ,SW2 与 SW3 是 ON(Close) ,当有外力在面板
上的某一点压下去时,由 XL 点取得电压接到 ADC(Analog to Digital Converter) ,就可以得到被 Touch 点的
Y 坐标相对位置。一般说来许多触摸面板都是贴在 LCD 面板上面,因此在程序设计上如果重复图 6-3 与 6-5
的读取步骤就可以顺利得知被 Touch 的点是在屏幕上的哪一位置。
RA iO TECHNOLOGY INC. 29/115 www.raio.com.tw
Version 2.5
VCC
SW2
ON
To ADC
YU
Resistor-Y
RA8802/8820
中文文字/图形
LCD
控制器应用手册
Y-axis
VCC
XL
SW0
OFF
SW3
ON
图 6-5 :读取 Y 坐标
VCC
Y1
Y2
Y3
Y4
Y5
YD
XR
SW1
Resistor-X
GND
OFF
VCC
V+
VP
0
Y1 Y2 Y3 Y4 Y5
P
Y
图 6-6 :Resistor-Y 的分压
在图 6-5 中,因为开关 SW0与 SW1 是 OFF,因此 XR 点是 Floating,所以当有外力在面板上的某一点压下
去时,XL 上的电压事实上就是 Y 的 Panel(也就是电阻)上的分压结果,压在面板上的不同一点,就会得到不
同的分压值,如图 6-6 所示。
6.2
触摸面板的应用
图 6-7 是用 RA8802/8820 的触摸式面板应用电路,因为每一种电阻式触摸面板的阻值不同,因此使用者在
开发时应配合触摸式面板规格来调整 VREF 上的电阻值,才能得到最佳的电压范围,让 ADC 得到较高的分
辨率,电路图上的电容可以少噪声。当然软件的判断流程也是重要的一关键。
图 6-9 的流程图是 RA8802/8820 触摸式面板读取的控制方式,与触摸式面板有关的缓存器为 TPCR 与
RA iO TECHNOLOGY INC. 30/115 www.raio.com.tw