资源描述
灰度液晶HD66421的模块化及其应用
摘要:介绍如何应用HD66421液晶板制成通用液晶显示模块;结合Fantasy Studio的AVRISP开发板,给出HD66421在单片机系统中的应用实例。
关键词:灰度液晶屏 通用液晶显示模块 HD66421
20世纪90年代以来,小型测控系统和手持设备的显示部分大多由液晶显示屏担当,它具有体积小、功耗低等特点。特别值得一提的是点阵液晶屏的使用,可以实现汉字和简单单色图形的显示,使手持设备更具人性化界面,操作更简便直观。随着液晶显示器件技术的不断发展,现在出现了灰度、伪彩、全彩的液晶显示屏,使手持设备成为都市的绚丽亮点。
1 硬件设计
对于小型测控系统和低成本手持设备而言,灰度及彩色液晶模块的价格还是有些高。本文介绍的HD66421是1/4VGA分辨率的4级灰度液晶屏单元,售价只有100元,包括HD66421控制器及160×100的显示屏并封装在一起。加上本文中设计的电路板至少许元件可以构成同现在通用液晶显示模块接口兼容的一个灰度显示模块。下面详细介绍这个显示模块。
HD66421是Hitach出品的显示控制芯片,具有片内30Kb的显示内存,最大支持160×100的4级PWM方式灰度显示;适用于低电压应用~需要外部18V的LCD驱动电压,具MPU接口。要想把它做成通用的显示模块,要解决2个问题:通用接口的转换、18位的LCD驱动电压产生,如图1所示。
现在最常用的液晶显示模块有字符显示的HY1602、点阵显示的HY12864,它们的接口基本兼容。
对于字节显示屏
1 GND 电源地
2 Vcc 数字电源+
3 Vee 对比度控制电压
4 RS 寄存器选择
5 R/W 读写控制
6 EN 读写使能
7~14 DB0~7 数据总线
15 A 背光电源+
16 K 背光电源-
对于点阵显示屏
1 GND 电源地
2 Vcc 数字电源+
3 Vee 对比度控制电压
4 D/I 寄存器选择
5 R/W 读写控制
6 EN 读写使能
7~14 DB0~7 数据总线
15 CS1 芯片1的片选
16 CS2 芯片2的片选
17 RST 复位
18 Vlcd 液晶驱动电压
19 A 背光电源+
20 K 背光电源-
可见,如不考虑字符液晶接口的背光控制15、16脚,两种接口的数字部分是兼容的;而HD66421所需的接口如图1所示,于是设计出兼容接口
1 GND 电源地
2 Vcc 数字电源+
3 NC 空脚
4 RS 寄存器选择
5 WR 写选通
6 CS 片选
7~14 DB0~7 数据总线
15 RD 读选通
16 BLCS 背光使能
17 RST 复位
18 NC 空脚
19 A 背光电源+
20 K 背光电源-
HD66421的接口时序如图2所示。
根据HD66421的数据手册,在显示模块的板子上加入如图1的液晶驱动电压分配电路;同时为方便使用,还加入了LCD驱动电压的产生电路,使用MAX1878芯片产生15V的液晶驱动电压,还可以产生一个低压输出,可从3脚输出Vout给外部系统。因为HD66421具有内部数字调节LCD偏置电压的功能,所以外接的Vlcd可以接一固定值,无需调节单元。另外,在板上还有1片用于驱动3只白色LED作为背光源的MAX1916。它由16脚VLCS控制点亮,19、20脚是直接驱动3只白色LED的接线;以后还希望能加上用IMP803驱动的EL背光板。图3是显示模块的部分原理图。
2 应用实例
下面结合Fantasy Studio的AVRISP开发板,用HD66421来显示4级灰度图像。AVRISP开发板上带有通用的液晶显示模块接口,可以把我们的模块直接插在上面,但是应注意把3、18脚置为NC。在这个应用中,先在PC机上处理一幅160×100的4级灰度图像,使用串口调试工具发送到AVRISP开发板,图像被保存到板上的24C64串行非易失存储器中,通过AVRISP板上的按键接制可以显示出刚下载的图像。
AVR单片机对HD66421的控制访问是通过通用液晶显示模块接口实现的。AVRISP开发板的连接是如下定义的
PC0→RS寄存器选择;
PC1→WR写选通;
PC2→CS片选;
PA0~7→BD0~7数据总线;
PC6→RD读选通;
PC7→BLCS背光使能;
PC5→RST复位。
按照HD66421文档的描述:首先,是上电复位;然后,R0寄存器PWM、AMP位置位,根据实际情况设置R0、R1寄存器中CNF、ADC、DTY1、DTY0、INC位,写数据到其它控制参数寄存器和显存;最后,设置R0中的DISP位,打开显示、HD66421的所寄存器如表1所示。
表1CSRS索引位 寄存器名称R/W
数据位43210765432101------ - 00-----IR索引寄存器W IR4IR3IR2IR1IR00100000R0控制寄存器1WRMWDISPSTBYPWRAMPREVHOLTADC0100001R1控制寄存器2WBIS1BISOWLSGFAYDTY1DYT0INCBLK0100010R2X地址寄存器W XA5XA4XA3XA2XA1XA00100011R3Y地址寄存器W YA6YA5YA4YA3YA2TA1YA00100100R4显存控制寄存器R/WD7D6D5D4D3D2D1D00100101R5起始行寄存器W ST6ST5ST4ST3ST2ST1ST00100110R6闪烁起始寄存器W BSL6BSL5BSL4BSL3BSL2BSL1BSL00100111R7闪烁终止寄存器W BEL6BEL5BEL4BEL3BEL2BEL1BEL00101000R8闪烁寄存器1WBK0BK1BK2BK3BK4BK5BK6BK70101001R9闪烁寄存器2WBK9BK9BK10BK11BK12BK13BK14BK150101010R10闪烁寄存器3W BK16BK17BK18BK190101011R11局部显示模块寄存器W CLEPB3PB2PB1PB00101100R12灰度色盘1W GP14GP13GP12GP11GP100101101R13灰度色盘2W GP24GP23GP22GP21GP200101110R14灰度色盘3W GP34GP33GP32GP31GP300101111R15灰度色盘4W GP44GP43GP42GP41GP400110000R16对比度控制寄存器W CM1CM0CCCCCCCCCC0110001R17屏选择寄存器W MONDSELPSEL0110010R18以下保留-
在整个操作中,特别要注意如下几个寄存器。索引寄存器
用来存放寄存器索引号,从18个寄存器中选取1个操作。
控制寄存器1
RWM读写方式选择
1:仅在写操作后地址自动加1;0:读写操作后地址都自动1加。
1:开显示;0:关显示。
STBY待机开关
1:进入待机方式;0:普通方式。
PWR外部Vlcd控制
1:打开Vlcd;0:关闭Vlcd。
AMP内部运放电源
1:打开;0:关闭。
REV翻转显示
1:翻转;0:普通。
HOLT挂起
1:内部操作停止;0:内部操作开始。
ADC左右翻转
1:翻转;0:普通。
控制寄存器2
BIS1、BIS0 液晶偏置电压选择
11:1/8偏置电压;10
:1/9偏置电压;01:1/10偏置电压;00:1/11偏置电压。
VLS数据宽度
1:6BIT;0:8BIT。
GRAY灰度选择
1:4级固定灰度;0:4个灰度值可从32级灰度中选择。
DTY1、DTY0显示行数
11:8行;10:64行;01:80行;00:100行
INC 自增1选择
1:X地址自增1;0:Y地址自增1。
BLK使用闪烁功能
1:打开;0:关闭。
对比度控制
CM1、CM0 LCD交替驱动周期
11:Frame;10:7Lines;01:11Lines;00:13Lines
CC4~CC0 对比度级别
00000:0/31;
00001:1/31;
.
.
.
11110:30/31;
11111;31;
如果以上几个寄存器设置不当,就无法显示出图像。
使用VC在PC上编写了一个处理图像的小程序,把160×100的真彩BMP图像经过误差分散算法处理,生成用于下载二进制数据的文件,用串口调试软件的文件发送功能传送到AVRISP开发板,由AT90S8515芯片内的服务程序接收数据,并转存到24CXX串行存储器上。因为使用了24C256,这样可以存储8张图像,显示效果很理想。AVRISP开发板的ISP编程接口也非常易用,配合CVAVR C编译软件,调试起来非常方便。希望和大家交流,我的邮箱zhao_xin@。
HD66421应用程序包见网络补充版。。
3 总结
本文详细介绍了用HD66421液晶板制成通用液晶显示模块的方法,并且实例具体说明了以HD66421为核心的4级灰度液晶显示模块的应用,为小型测控仪器和手持设备提供了一个较为廉价的灰度图像显示解决方案。文中的HD66421液晶板可以从http:///(中国电子网特买场)购得;有关AVRISP开发板请参考http:///avr/。
展开阅读全文