简体中文V1.0

RAiO
RA8803 / RA8822
双图层 文字/图形
LCD 控制器
常见使用问题及说明
Preliminary Version 1.0
March 10, 2009
RAiO Technology Inc.
©Copyright RAiO Technology Inc. 2009
RAiO TECHNOLOGY INC.
1/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
Update History
Version
1.0
Date
March 10, 2009
RAiO TECHNOLOGY INC.
Description
Preliminary Version
2/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
Chapter
Contents
Page
1. 基本应用篇 ................................................................................................. 5
1-1 基本介绍................................................................................................................. 5
1-2 如何设计模块上的 RA8803/8822 电路 ................................................................... 6
1-3 使用 RA8803/8822 无法点亮.................................................................................. 9
2. 键盘扫描相关应用问题 ............................................................................. 10
2-1 Sleep Mode 时,键盘唤醒功能无作用 ?.............................................................. 10
2-2 按键在连续或交替被按下时,会造成 KeyScan 功能无法正常运作 ? ................... 10
2-3 在使用 RA8803/22 KeyScan 功能,同时按两个按键会当机 ?............................. 10
3. MUC 界面相关应用问题............................................................................ 12
3-1 当 ZCS1 一直处于低准位状态时,为什么有屏幕会有瞬间闪烁的现象 ? .............. 12
3-2 RA8803/22 是否可以在 8051 总线模式下运行 ? .................................................. 12
3-3 使用 8051 总线模式,为什么无法点亮 LCD Panel ? ........................................... 13
3-4 当进入 8051 外部中断服务例程后,会有当机现象!! ............................................. 13
4. 触控屏幕相关应用问题 ............................................................................. 14
4-1 Touch panel 在触控屏上有非线性的问题 ? ......................................................... 14
4-2 Touch Panel 触控信号一直乱发的原因为何 ? ..................................................... 14
5. 屏幕显示相关应用问题 ............................................................................. 16
5-1 Power ON 瞬间屏幕为什么会出现瞬时的全白画面 ? ........................................... 16
5-2 屏幕显示会有闪烁的情况,这是什么原因造成 ? .................................................. 16
5-3 MPU 对 RA8803/22 作读写的动作时,显示屏上依稀可看见误写的杂点?............ 17
5-4 RA8803/22 的工作窗口与显示窗口的作用为何 ? 如何区别 ?............................... 18
5-5 使用 PNTR 清除画面的指令后,左上角会出现 4 个点清不掉 ?............................ 18
5-6 如何使用 RA8803/22 四灰阶显示效果 ?............................................................... 18
5-7 请问 RA8803 的卷动功能是否可以向右卷动或向上卷动 ? ................................... 19
5-8 MCU I/F 设定 4 位通讯方式,无法正常显示内建中文字库 ? ................................ 19
5-9 无法在文字模式正常显示内建字库的文字 ? ......................................................... 19
5-10 为什么在文字尚未填写完一列时,会发生自动换行的状况 ? .............................. 19
5-11 请问自建字型可否自建 8*16 的字体 ? ................................................................ 19
5-12 使用 RA8803/22 内建字库,显示的文字会有缺点错乱现象 ?............................. 20
5-13 显示的文字或图形偏移 ....................................................................................... 20
RAiO TECHNOLOGY INC.
3/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
5-14 如何避免当机现象............................................................................................... 21
5-15 如何避免 IC 损毁 ................................................................................................ 21
5-16 显示的画面有残影或质量不佳............................................................................. 22
RAiO TECHNOLOGY INC.
4/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
1. 基本应用篇
1-1 基本介绍
RA8803 和 RA8822 是功能强大且容易使 STN LCD 显示控制器,除了提供 STN LCD 显示功能外,
还内建中英文字库、智能型电阻式触控扫瞄控制器与键盘扫瞄接口,使用者可以节省相当多的时间
和成本于系统硬件和软件开发上。RA8803/8822 系统应用方块图如下:
LCD
LCD
Driver
Driver
Font
ROM
Display
RAM
CPU
CPU
1
2
3
4
5
6
7
8
9
*
0
#
LCD
LCD Panel
Panel
LCD
LCD
Driver
Driver
LCD
Controller
(128x64
(128x64 ~~ 640x240)
640x240)
Touch Panel
ADC
Key-Scan
Touch
Controller
RA8803/8822
图 1-1
基本上 RA8803/8822 接受 MCU 送来的指令,然后将 MCU 所希望显示的内容以数据传输到 LCD 驱
动器(Driver),再透过驱动器接到 STN 玻璃上显示出文字或图案。因此 RA8803/8822 是界于 MCU
与 LCD 驱动器之间的控制 IC,在实际应用上有两种模式,一种是将 RA8803/8822 置于 LCD 模块
上,做成带控制器的 LCD 模块, 如下图:
LCD 模組
其他元件
其他元件
升壓電路
升壓電路
LCD
LCD
Driver
Driver
LCD
LCD
Controller
Controller
CPU
CPU
LCD
LCD
Driver
Driver
LCD
LCD Panel
Panel
(128x64
(128x64 ~~ 640x240)
640x240)
RA8803/8822
图 1-2
另一种是将 RA8803/8822 置于系统端,搭配各式不带控制器的 LCD 模块,如下图:
LCD 模組
其他元件
其他元件
CPU
CPU
升壓電路
升壓電路
LCD
LCD
Driver
Driver
LCD
LCD
Driver
Driver
LCD
LCD
Controller
Controller
LCD
LCD Panel
Panel
(128x64
(128x64 ~~ 640x240)
640x240)
RA8803/8822
图 1-3
RAiO TECHNOLOGY INC.
5/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
1-2 如何设计模块上的 RA8803/8822 电路
如果您是模块厂商,想要将 RA8803/8822 置于 LCD 模块上做成带控制器的 LCD 模块,请先下载最
新 的 RA8803/8822 规 格 书 , 您 可 以 与 瑞 佑 科 技 的 代 理 商 连 系 或 直 接 由 瑞 佑 科 技 的 网 址
(www.raio.com.tw) 得到完整的 RA8803/8822 规格书,并且依据 RA8803/8822 各脚位的应用、参
考应用手册第 3 章对 LCD 驱动器之间的接口说明及附录 B 的应用电路,来准备您的模块电路图,
下面几点是比较容易疏忽的地方:
‹
3V 与 5V 的模块在接在线略有不同,请参考应用手册第 B-2 节电源(Power)应用电路。
‹
当 RA8803/8822 工作于 5V 的系统时,为了增加 VDD 的稳定性,必须在 VDD 上外加
一 1µF 和 0.1µF 的电容。如下图或应用手册第 B-2-3 节 5V 电源应用电路。
5V
MCU
RA8803/8822
5V
VDDP
VDD
VDD3
VDD5
0.47uH
AVDD
GNDP
(Option)
10u 0.1u
1u 0.1u
GND
0.1u
AGND
GND
I/O
MCU I/F
图 1-4
‹
RA8803/8822 的振荡电路是由外部在 XA 和 XB 两脚间的 32768Hz 石英振荡器、两个
电容及一 LPF(Low Pass Filter) 电路产生,内部工作频率(System Clock)可透过缓存器
[01]设定选择不同的系统频率。
RA8803/8822
0.22 µ
LPF
0.022µ
20P
2.4KΩ
XA
32768Hz
SYS_FQ
20P
XB
图 1-5
RAiO TECHNOLOGY INC.
6/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
REG [01h] Misc. Register (MISC)
Bit
1-0
‹
Description
系统频率选择
0 0:3MHz
0 1:4MHz
1 0:8MHz
1 1:12MHz
Default
Access
0h
R/W
RA8803/8822 支持 8080 和 6800 等两种微处理机接口传输模式。接口的选择决定于
IC 接脚 ”SYS_MI” 的电位,当选择 8080 来进行接口传输时,SYS_MI 必须连接到低电
位,反之,当选择 6800 来进行接口传输时,SYS_MI 必须连接到高电位。而使用者的
程序必须依循硬件上的 MCU 接口传输模式,RA8803/8822 才能收到 MCU 的正确指
令。
‹
由于您无法预知系统端客户的 MCU 接口环境,为了减轻 MPU 与 RA8803/8822 间的
传输线及使用环境的干扰,强烈建议您在 RA8803/8822 的 ZCS1、ZRD、ZWR 端加
一小电容(50~250pF)到 GND,如下图。
8080
MPU
RA8803/8822
RS
A0
A1-A7
IORQ
Decoder
CS1#
CS2
SYS_MI
DB0-3(DB0-7)
D0-D3(D0-D7)
RD
RD#
WR
WR#
RES
RST#
图 1-6
‹
使用触控屏幕的功能除了连接 XL、XR、YU 和 YD 等四条信号线到 RA8803/8822 外,
此四条信号线必须外加 0.01uF 电容到地,如下图。
RA8803/8822
Touch Panel
X1
XL
X2
XR
Y1
YU
Y2
YD
0.01μ F x 4
图 1-7
RAiO TECHNOLOGY INC.
7/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
当然除了 RA8803/8822,模块设计者必须确定其它组件与电路的正确性,如升压电路、OP 分压电
路、LCD Driver 电路等等,而不论您是模块设计者或是系统端客户,都可以参考瑞佑科技所提供的
范例程序(可直接由瑞佑科技的网址(www.raio.com.tw)下载,我们提供了好几个为 RA8803 及
RA8822 依不同分辨率模块所写的范例程序压缩档案。
RAiO TECHNOLOGY INC.
8/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
1-3 使用 RA8803/8822 无法点亮
如果您是模块厂商,底下是当您使用 RA8803/8822 无法点亮 LCD 所进行的除错与分析流程:
1. 确定电源(3V 或 5V) 正确送到 RA8803/8822、升压电路、OP 分压电路、LCD Driver 电路。
2. 确定升压电路产生的 VLCD 及 OP 分压电路的产生的 V0~V4 正确送到 LCD Driver。
3. 确定 RA8803/8822 的振荡电路正常运作。可用示波器量测 XD、XG 两脚是否有振荡。
4. 确定 RA8803/8822 的 RST# 于开机收到 MCU 送来的重置信号。Reset 后 RST# 应维持 Hi 的
准位。
5. 确定 MCU 与 RA8803/8822 的硬件接线、线路定义正确。
6. 确定 MCU 产生的时序符合 RA8803/8822 要求,并与 RA8803/8822 在模块上的应硬件设定一
致。请参考应用手册的图 2-2、2-4。
7. 确定 MCU 产生的指令符合 RA8803/8822 的流程与要求。
8. 确定 RA8803/8822 给 LCD Driver 的信号(YD、FR、LP、XCK、LD[3:0]) 有正确产生。
通常 RA8803/8822 给 LCD Driver 的信号若有产生,LCD 玻璃应会有画面出现,若无画面出现则可
能的问提通常是升压部份的电路,不是升压电路没有产生 VLCD,就是 OP 分压电路的产生的
V0~V4 没有正确送到 LCD Driver。
如果您是系统端客户,一般您拿到的模块是模块厂商测试过的,因此出现使用 RA8803/8822 无法点
亮的原因通常是上述的 5~7 项,如果您是将 RA8803/8822 置于系统端,而搭配模块厂商不带控制
器的 LCD 模块,则必须参考检查上述的 3~8 项。
RAiO TECHNOLOGY INC.
9/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
2. 键盘扫描相关应用问题
2-1 Sleep Mode 时,键盘唤醒功能无作用 ?
Keyscan 功能在 RA8803/22 Sleep Mode 时,只开放 KC0 做扫瞄动作,因此只有当按下 ROW 0 这
排按键,才可以将系统唤醒。
图 2-1 : Key Scan 示意图
2-2 按键在连续或交替被按下时,会造成 KeyScan 功能无法正常运作 ?
这问题主要造成的原因是发生在当按键被按下,而 KeyScan 的 Debounce time 却又未完成的时
候,此时使用者又按下另一个按键,导致内部讯号运作异常,KeyScan 功能无法正常使用的状况。
建 议 可 利 用 8051 的 Timer 在 主 程 序 中 每 隔 一 段 时 间 去 写 REG[A1h](KSCR) 或 读
REG[A3h](KSER),就可以解决此问题。
2-3 在使用 RA8803/22 KeyScan 功能,同时按两个按键会当机 ?
在使用 2x strobes and 1x input mode 时,同时按下 SW0 以及 SW1 可能导致短路的现象发生,这
是由于 KST0 以及 KST1 等扫瞄信号在同一时间内是属于不同的逻辑准位,因此不可以同步地一起
按下两个按键。我们会建议使用者修改上述的电路为 1x strobe and 2x inputs (图 2-3),或参考下述
建议的 2x strobe and 1x input circuit 去避免前述的错误问题。
RAiO TECHNOLOGY INC.
10/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
VDD
10KΩ
KST0
SW0
KIN0
short
(Logical “High”)
KST1
SW1
(Logical “Low”)
图 2-2
2X STROBES AND 1X INPUT
SUGGESTED CIRCUIT(1)
2X STROBES AND 1X INPUT
SUGGESTED CIRCUIT(2)
VDD
VDD
VDD
KST0
10KΩ
1X STROBE AND 2X INPUTS
CIRCUIT
SW0
10KΩ
KST0
KIN0
SW0
VDD
KIN0
10KΩ
SW0
KST0
KIN0
VDD
KST1
SW1
SW1
VDD
10KΩ
SW1
KIN1
KST1
74AC125
※It is recommended to use this circuit
图 2-3
RAiO TECHNOLOGY INC.
11/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
3. MUC 界面相关应用问题
3-1 当 ZCS1 一直处于低准位状态时,为什么有屏幕会有瞬间闪烁的现象 ?
当 CS 恒为低准位时,如果 RA8803/22 没有对显示内存作读写时,建议将 RS 信号维持在低准位,
就可以解决屏幕闪屏的问题。
3-2 RA8803/22 是否可以在 8051 总线模式下运行 ?
可以的,建议您在使用此模式运作时,请将 MCU 的/RD 与/WR 两根控制信号脚各加上一级 OR 闸
(74LS32)并与 RA8803/22 的/CS 信号接脚做 OR 运算,以防止 RA8803/22 与其它组件在共享 BUS
的情况下,可能产生的误动作情形。详细相关应用请参考 RA8803_RA8822_AP_v26_Chi 2-5 节第
16 页….
图 3-1 : 8051 总线模式示意图
RAiO TECHNOLOGY INC.
12/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
3-3 使用 8051 总线模式,为什么无法点亮 LCD Panel ?
一般问题都出在 MCU 给予 RA8803/22 的时序不正确影响到屏幕显示的正常与否!而可能的造成原
因通常发生在/CS 与/WR 的 rising edge 间隔太近,导致其 Address hold time 太短,造成误动作!
故建议将/CS pin 串接两级反向器,给予/CS 有一个适当的 Delay(约 30ns),为了就是将/CS
duration time 间隔放宽,以确保 RA8803/22 能正确的写入指令或数据。
3-4 当进入 8051 外部中断服务例程后,会有当机现象!!
这可能是别的外部组件向 MPU 要求外部中断,但 MPU 此时正在对 RA8803/22 下指令周期,但指
令周期未完成所造成的原因,建议可以将 MPU 在对 RA8803/22 作读写指令时,可以先禁能 MPU
外部中断,以避免此类状况发生。
RAiO TECHNOLOGY INC.
13/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
4. 触控屏幕相关应用问题
4-1 Touch panel 在触控屏上有非线性的问题 ?
在您的系统频率允许范围内,尽可能将 RA8803/22 的系统频率设定在小于 4Mhz 的情况下,Touch
Panel 非线性问题就可以改善了,而 RA8803/22 的系统频率可透过 REG[01h]作选择。
表 4-1 : REG[01h] Misc Register (MISC)
Bit
7
Description
保留
Default
Access
1h
R/W
1h
R/W
1h
R/W
1h
R/W
0h
R/W
0h
R/W
CLK_OUT 致能控制
6
1:致能
0:禁能
5
保留
设定中断 (INT)/ BUSY 的触发准位
4
1:设定高电位触发动作
0:设定低电位触发动作
3-2
保留
系统频率选择
0 0:3MHz
1-0
0 1:4MHz
1 0:8MHz
1 1:12MHz
4-2 Touch Panel 触控信号一直乱发的原因为何 ?
当在使用 RA8803/22 的 Touch Panel 功能时,[C1h]的 bit6(ADET) 读出来观察发现其值恒为 1,代
表触控屏一直有触摸事件发生,发生的原因可能为外部噪声干扰造成误判的结果,建议可在
RA8803/22 的 Pin28(X1)这根脚加上一个上拉电阻(约 51K),就可以避免此状况发生。
RAiO TECHNOLOGY INC.
14/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
表 4-2 : REG[C1h] ADC Status Register (TPSR/ADCS)
Bit
Description
Default
Access
0h
R/W
0h
R/W
ADC 数据转换完成指示
7
1: ADC 数据转换已完成
0:ADC 数据转换未完成
触摸事件的侦测指示
6
1:有被触摸
0:没被触摸
5
此位必须在系统使用时设为 “1 “
0h
R/W
4
此位必须在系统使用时设为 “1 “
0h
R/W
2h
R/W
2h
R/W
设定 ADC 的频率转换速度
0 0:SCLK/32
3-2
0 1:SCLK/64
1 0:SCLK/128
1 1:SCLK/256
1-0
保留
0.01uFx4
图 4-1 : RA8803/22 触控屏幕电路
RAiO TECHNOLOGY INC.
15/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
5. 屏幕显示相关应用问题
5-1 Power ON 瞬间屏幕为什么会出现瞬时的全白画面 ?
此类状况可能为 Driver 的 DISPOFF Pin 被直接接到 VDD 造成 Display Always ON,所以在 Module
Power ON 时,RA8803/22 在做 Hardware Reset,但内部 PLL 未达到工作频率,在尚未给予 Drive
适当的液晶翻转交流讯号 FRM,所造成的直流驱动现象!!一般应用都是在完成上述相关动作后,才
会将 LCD 的显示功能打开, 因此建议可将 Driver 的 DISPOFF Pin 拉出与 Controller 连接在一起,
由 Controller 控制液晶的显示,才可以完全避免此类状况!! 相关应用请参考下图:
图 5-1 : RA8803/22 与 LCD Driver 的接线图
5-2 屏幕显示会有闪烁的情况,这是什么原因造成 ?
屏幕闪烁一般是屏幕更新频率过低(FRM 信号),导致人眼可以看到屏幕在扫描更新画面所造成,所
以 我 们 通 常 建 议 屏 幕 每 秒 更 新 频 率 为 60~70HZ , 就 可 以 解 决 屏 幕 闪 烁 且 不 连 续 的 感 觉 , 而
RA8803/22 是可以透过缓存器 REG[90h] Shift Clock Control Register(SCCR)作调整,所以您可以
调适此缓存器设定值,来将您的屏幕显示质量最佳化。
RAiO TECHNOLOGY INC.
16/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
表5-1 : REG[90h]Shift Clock Control Register(SCCR)
Bit
7-0
Description
设定 XCK 讯号周期
SCCR = (SCLK x DW) / (Seg x Com x FRM)
SCLK:RA8803/8822 系统频率(System Clock) (单位:Hz)
DW:LCD 驱动器的 Data Bus 宽度(单位:Bit)
Seg:LCD 面板的 Segment 大小(单位:Pixel)
Com:LCD 面板的 Common 大小 (单位:Pixel)
FRM: LCD 面板的 Frame Rate(单位:Hz)
Default
Access
4h
R/W
限制条件 SYS_DW=0,LCD 的 Data Bus 为 4it,SCCR ≥ 4
SYS_DW=1,LCD 的 Data Bus 为 8it,SCCR ≥ 2
1. 如果使用 X’tal + PLL 的方式,系统频率(SCLK) = 8MHz
2. LCD 驱动器 的 Data Bus 宽度(DBW) = 8Bit
3. 使用 320 x 240 Pixel 的 LCD 面板,Column = 320,Row = 240
4. LCD 面板的 Frame Rate 为 70Hz
则 SCCR = (8MHz x 8) / (320 x 240 x 70) = 11.9
所以建议设定 SCCR = 12 = 0Ch
5-3 MPU 对 RA8803/22 作读写的动作时,显示屏上依稀可看见误写的杂点?
当 RA8803/22 内部的逻辑电路在执行扫瞄任务时,同时 MPU 对 RA8803/22 Display RAM 做数据
的存取,显示屏的扫瞄数据将被干扰造成错误,因此会在显示屏上显示多余的杂点,称之为「雪
花」。为了减少或避免雪花问题,以下有两点建议事项:
建议一:透过缓存器 REG[90h] Shift Clock Control Register(SCCR) 调高屏幕更新频率(Frame
rate)。
建议二:在不影响人眼观看显示屏的最佳效果下,请减少对 RA8803/22 频繁的读写。
图 5-2 : 雪花示意图
RAiO TECHNOLOGY INC.
17/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
5-4 RA8803/22 的工作窗口与显示窗口的作用为何 ? 如何区别 ?
在工作窗口(Active Window)内除了可作为文字、图形与显示光标换行的依据外,还可做到区块文字
或图形的清除。而显示窗口(Display Window)一般我们会视液晶显示屏的分辨率(Resolution)给予其
等同大小的设定。
5-5 使用 PNTR 清除画面的指令后,左上角会出现 4 个点清不掉 ?
建议您参考以下清屏范例程序,用来做清除整页画面的效果
void LCD_Clear(void)
{
LCD_CmdWrite(PNTR, 0x00);
LCD_FillOn();
Delay100ms(1);
LCD_GotoXY(0,0)
LCD_DataWrite(0x00);
}
void LCD_FillOn(void)
{
uchar temp;
temp = LCD_CmdRead(FNCR);
temp |= cSetb3;
LCD_CmdWrite(FNCR, temp);
}
5-6 如何使用 RA8803/22 四灰阶显示效果 ?
显示图案请参考下图:
图 5-3 : 灰阶显示
实现四灰阶功能,请参照以下四灰阶显示范例程序:
uchar gData=0xFF;
uint P1,P2;
LCD_CmdWrite(WLCR,0xC5); //Graphic Mode
LCD_CmdWrite(MAMR,0x91);
//Access Page1
LCD_GotoXY(0,0);
for(P1=0;P1<9600;P1++)
//Show Page1
{
if(P1>=4800)
LCD_DataWrite(~gData);
else LCD_DataWrite(gData);
}
Delay100ms(10);
LCD_CmdWrite(MAMR,0xA2); //Access Page2
LCD_GotoXY(0,0);
RAiO TECHNOLOGY INC.
18/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
for(P2=0;P2<9600;P2++)
{
if (P2<2400)
LCD_DataWrite(gData);
if (P2>=2400 && P2<4800)
LCD_DataWrite(~gData);
if (P2>=4800 && P2<7200)
LCD_DataWrite(gData);
if (P2>=7200 && P2<9600)
LCD_DataWrite(~gData);
}
Delay100ms(10);
LCD_CmdWrite(MAMR,0x80);
LCD_CmdWrite(SCCR,0x05);
LCD_CmdWrite(PNTR,0x92);
LCD_CmdWrite(PNTR,0x92);
//Show Page2
//Gray_Mode
//Frame rate
//PNTR 须连续下两笔,才能致能灰阶对比
5-7 请问 RA8803 的卷动功能是否可以向右卷动或向上卷动 ?
RA8803/22 卷动功能目前只支持向左卷动与向下卷动,尚无提供向右卷动与向上卷动的功能。
5-8 MCU I/F 设定 4 位通讯方式,无法正常显示内建中文字库 ?
当使用 RA8803/22 的 MPU I/F 设定为 DataBus 4Bit 时,要正常的显示中文字型,请试着将
DataBus 没有用到的高 4 位(DB[7:4]),请拉至高位准,而要正确的显示 ASCii 时,请透过 REG[F0h]
的 Bit2 设定为 1(输入的 Data 都以 ASCii 解碼),这样一来就可以正常的显示文字。
5-9 无法在文字模式正常显示内建字库的文字 ?
这通常是在写入中文字库的 Font Code 时,没有做适当的延时造成!而这个状况在使用 RA8803/22
放大字型的功能时更加明显,所以当您在写入中文字型请记得要加上适当的延迟时间。
5-10 为什么在文字尚未填写完一列时,会发生自动换行的状况 ?
这状况是发生在全角与半角混合显示在同一列,而显示屏剩余的显示文字空间只剩一个半角字
(8*16),而前一个写入的文字又为全角的话,RA8803/22 是会自动换行,将下一个要显示的文字写
到下一列去,但若是前一个写入的文字为半角,则可继续填满剩余的半角文字,不会有自动换行的
状况。
5-11 请问自建字型可否自建 8*16 的字体 ?
RA8803/22 只能创造建立 16*16 的字体。
RAiO TECHNOLOGY INC.
19/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
5-12 使用 RA8803/22 内建字库,显示的文字会有缺点错乱现象 ?
当 PIN 19 (VDD3)输入 3.3V,PIN20(VDD5)浮接Î显示正常。
当 PIN 19 (VDD3)浮接,PIN20(VDD5)输入 5VÎ显示字型缺点。
此现象通常是发生在使用 RA8803/22 的 5V 电源系统,Pin19(VDD3) 浮接,没有并上一个 1uF 的稳
压电容,导致 RA8803/22 内部电源不稳定所产生的现象,所以当有文字缺点的现象,我们建议在
Pin19(VDD3)并上一个 1uF 电容,就可以有效的解决此问题,请参考以下相关电路 :
图 5-4 : 5V 电源应用电路
5-13 显示的文字或图形偏移
可能的原因有 4:
1. RA8803/8822 设定的显示窗口(Display Window、工作窗口(Active Window)大小与实际
LCD 分辨率(Resolution) 不同。下表列出几种较为大家所常用的 LCD 模块及其相关缓存器
设定。
Panel
Resolution
Segment Common
REG[21h]
DWRR
REG[31h]
DWBR
160*80
160
80
13h
4Fh
160*128
160
128
13h
7Fh
160*160
160
160
13h
9Fh
240*64
240
64
1Dh
3Fh
240*128
240
128
1Dh
7Fh
240*160
240
160
1Dh
9Fh
320*240
320
240
27h
EFh
RAiO TECHNOLOGY INC.
20/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
2. MCU 传递数据过快导致 RA8803/8822 的处理速度跟不上Æ 请在程序加上延时(Delay),或
以 Check “Busy” 方式确定 RA8803/8822 已经处理完上一笔数据。
3. MCU 产生的时序不符合 RA8803/8822 要求Æ 避免 Set-up time 或 Hold Time 不足,请参考
应用手册的图 2-2、2-4。
4. 系统环境不佳、噪声干扰过大、或模块与系统连接线过长,都有可能造成此现象Æ 虽然
RA8803/8822 在 MCU 接口输入端采用 Schmitt Trigger 电路避免噪声干扰,但是过大的噪
声干扰仍会造成 RA8803/8822 可能的误动作。为了减轻 MPU 与 RA8803/8822 间的传输线
及使用环境的干扰,可以在 RA8803/8822 的 CS1#、RD#、WR# 端加一小电容(50~250pF)
到 GND,若是系统(MCU) 信号过弱或负载(Loading)太大,可以在 RA8803/8822 的 CS1#、
RD#、WR# 及 DATA[7:0] 端加(1K~4.7Kohm) 提升电阻。
5-14 如何避免当机现象
可能的原因为系统环境不佳、噪声干扰过大都有可能造成此现象Æ 请参考上一节(5-13 节) 的第 4 点
说明。另外避免模块与系统连接线过长。
5-15 如何避免 IC 损毁
RA8803/8822 的 ESD 超过工业级 4KV 的要求,但对于使用在特殊的、恶劣的系统环境仍必须留意
PCB 布局及加入保护组件,避免造成此损毁现象。
同时过高的瞬间电源突波或超过规格电压(5.5V) 时间过长也会造成损毁现象Æ 可在模块的 VDD 与
GND 间加一大电容(470uF)或突波吸收器,避免 IC 或 LCD 模块损毁。
Power
LCD Module
7V
VDD
6V
5V
Driver
Driver
Driver
RA8803
RA8822
470uF
Driver
Driver
GND
t
Time
图 5-5
另一种会造成 IC 损毁是因为 EOS(Electrically Over Stress) 的原故,最好的避免方法是减短系统与
模块端的 Cable 长度,或是串上 200ohm~1Kohm 电阻:
RAiO TECHNOLOGY INC.
21/22
www.raio.com.tw
RA8803 / RA8822
双图层 文字/图形 LCD 控制器
Preliminary Version 1.0
System Board
LCD Module
MCU
:
:
:
Driver
Driver
Driver
RA8803
RA8822
Driver
Driver
图 5-6
5-16 显示的画面有残影或质量不佳
可能的原因有 4:
1. 液晶的质量或偏光片不佳。
2. 升压(VLCD)不足或驱动力不够。
3. V0~V4 的分压不正确。
4. RA8803/8822 的 Frame Rate 设 定 太 高 。 请 依 据 使 用 的 规 格 如 分 辨 率 (Resolution) 、
RA8803/8822 Clock 来 设 定 缓 存 器 REG[90h] - SCCR。Frame Rate 太高会导致驱动
IC(Driver) 耗电大,进而可能影响升压(VLCD)造成驱动力不够。
RAiO TECHNOLOGY INC.
22/22
www.raio.com.tw