介绍一种基于AVR单片机和硬件汉字库的VRAM 型彩色液晶显示模块的设计。给出彩色液晶显示器的显示原理、硬件接口设计框图以及硬件汉字库的制作和应用,同时给出基于C语言的程序设计模块,实现了应用VRAM 型液晶的模块化,便于移植在其他类型的单片机。
1 引言
随着电子技术的飞速发展,越来越多的领域应用到以单片机为控制核心、用液晶作为显示终端的数字化设备。彩色液晶显示器作为当代高新技术的结晶产品,不但具有超薄平面、显示信息丰富、色彩逼真的特点,而且还具有体积小、耗电省、寿命长、无辐射、抗震、防爆等其他类型显示器无可比拟的优点,因而是工控仪表、机电设备等行业更新换代的理想显示器件。因此基于单片机系统的彩色液晶显示模块的使用也越来越广泛。本文介绍一种基于AVR 单片机和硬件汉字库的彩色液晶显示模块,该模块实现了在彩色液晶显示器上显示不同颜色的中文、英文、数字及简单的画图功能。
2 液晶显示器显示原理
本模块采用的液晶显示器是河南友利华高科技有限公司生产的YD2502 彩色液晶VRAM 型显示器。它的点阵数是320 ×240 ,VRAM 容量是64 k ×8 位,由于屏幕上的任何一点都是由R(红) 、G(绿) 、B(蓝) 3 种颜色组成,且灰度不可调节,因此显示颜色为8 色。基本原理框图如图1所示。DC/ DC 转换器产生液晶所用各种驱动电压,DC/ AC 逆变器则用来点亮冷阴极背光灯, 显示驱动逻辑电路采用了优化逻辑电路,利用分时技术让显示与写入数据同时进行,实现了画面的高速更新,且互不干扰。其显示原理是:在显示器内部含有一个显示缓冲区与屏幕显示一一对应,使用时只需向缓冲区里写入相应的数据,屏幕上即可显示出对应的彩色图形或文字,也就是说该显示器可作为单片机系统的一个外部存储器就可以实现彩色信息的显示。
图1 YD2502 原理框图
3 硬件系统设计
3. 1 硬件总体设计
本模块中使用的单片机是AVR 系列单片机中功能最强的A Tmega128 。该单片机具有丰富的片上资源如具有128 kB 在线可重复编程Flash、4 kB 的E2 PROM、4 kB 的内部SRAM、48 个I/ O 端口、34 个不同的中断源、可寻址64 kB 的地址空间、ISP 下载以及J TA G 仿真等功能。详细介绍请参考其数据手册。
图2 是该模块硬件系统总体设计框图。由于YD2502 的显示缓冲区里的内容是不能读出的,为了保存写入内容,在该模块中还外扩了一片存储器芯片61LV5128 ,其存储容量为512 kB ,除了保存YD2502 显示缓冲区里的数据外,还为使用本模块的嵌入式系统提供了扩展应用。由于A Tmega128 的寻址范围只达到64 KB ,因此采用了分页管理技术来操作512 kB 的存储空间。在具体电路设计时,将A Tmega128 的PB3 ~ PB0连接到61LV5128 的高4 位地址线上,将512 kB的存储空间分成16 页,每页32 kB。硬件汉字库芯片AT29C040A 的存储容量也是512 kB ,与CPU的接口设计与61LV5128 是类似的,只需将片选信号和高4 位地址线接在不同的I/ O 口上就可以了。
图2 硬件设计图
3. 2 YD2502 的接口设计
YD2502 的接口方式采用总线方式,外部引线包括数据总线(DB7~DB0) 、片选信号(/ CS) 、读写输入(/ RD、/ WR) 和寄存器选择信号(RS) ,可以直接挂接到单片机的总线上,作为单片机的某部分内存来使用。接口采用16 针插座,引脚定义请参阅其说明书。
根据YD2502 可以作为单片机的外部存储器使用的接口特性,将A Tmega128 的读写信号线与YD2502 的读写信号线直接连接,具体接口设计原理如图3 所示。
图3 AT128 与YD2502 的接口
3. 3 硬件汉字库的制作
本模块使用了硬件汉字库,省去了利用汉字取模软件获取点阵数据的麻烦,而且还避免了为保存这些数据而开辟的大量程序存储空间。
汉字库中要烧写的点阵文件是UCDOS 软件中的文件HzK16 ,该文件是16 ×16 的国际汉字点阵文件,文件中按汉字区位码从小到大依次存放国标区位码表中的所有汉字,每个汉字占用32字节,每个区为94 个汉字。汉字库芯片采用的是AT29C040A ,该芯片是ATMEL 公司生产的512 kB的FLASH ROM。在制作时,烧写过程和普通的程序存储器的编程基本相同,只要注意选择正确的型号和在选择打开HZK16 的方式时用二进制方式就可以了,编程校验成功后,取下备用,硬件汉字库芯片就制作好了。
实际上若显示HZK16 的文件属性,其大小为262 kB ,而AT29C040A 的存储容量为512 kB ,超出部分可以存储用户固定的汉字、字母和数字的代码,从而使显示内容更加灵活丰富。