新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于AT89C52的液晶显示的实现

基于AT89C52的液晶显示的实现

作者:时间:2009-04-23来源:网络收藏

1 引言

本文引用地址:http://www.eepw.com.cn/article/173772.htm

随着应用领域的不断扩大,用控制汉字显示已成为一种发展的必然趋势。以前那种将汉字点阵编码存入ROM ,在显示时再调用的方法已经不能适应当前的需求。好的应用所能显示的决不能仅仅局限于显示事先定义好的个别汉字,而应该提供直接使用至少包含国家标准的一、二级汉字字库的功能。

2 芯片器件介绍

2.1 单片机
单片机是EPROM型单片机,可寻址64KB字节的程序存储器和64KB字节的外部数据存储器。
以单片机为核心,配以一定的外围电路和软件,某些功能,就组成了单片机应用系统。
2.2 显示模块
我们选用北京精电蓬远公司的VPG12864T显示模块,内置T6963C控制器,了T6963C与行、列驱动器及显示缓冲区RAM的接口,带有LED边光/底光,温度范围较广,属宽温型,无须外部提供驱动电压,点阵数为128×64,支持图形、文本以及图文合成方式的三显示方式,且T6963C带有内部字符集。
液晶模块与微处理器MPU的接口电路有两种方式:一是直接访问方式,将数据口P0直接与液晶模块的数据口连接;二是采用间接控制方式,MPU通过I/O并行接口,模拟液晶模块的时序,间接模块的控制。本文讨论的实现方法采用第一种方式。
2.3 字库芯片
字库芯片采用具有256K空间的可编程ROM芯片都可以,我们采用了ATMEL公司的AT27C020芯片,其中烧录含有国家标准的一、二级汉字的16×16点阵字库。
汉字点阵在字库中的首地址由如下公式计算:
起始地址=[(区号-1)×94+(位号-1)]×32
自此起始地址起的后续32个字节就是该汉字的字模数据。从字库芯片中的32个字节的字模数据按下表排列构成汉字:

其中,汉字由两字节ASCII码组成,分别减去0xA0即得到该汉字的区号和位号。这样就可以直接由汉字的ASCII码来计算该汉字在字库中的地址:
起始地址=[(第一字节-0xA1)×94+(第二字节-0xA1)]×32
由于AT89C52最大寻址64K空间,所以在实现时将AT27C020分成多页,每页的空间不大于64KB,页号通过译码器的有效输出或其他扩展方式确定。

3 硬件线路设计

AT89C52与字库芯片AT27C020及液晶显示模块VPG12864T的接口逻辑如图1所示:

图2 硬件逻辑接口


由于AT89C52的最大寻址空间为64K,而AT27C020的空间为256K,因而要对寻址进行扩展。地址扩展的方式有两种,一种是利用MPU的IO口进行扩展,AT27C020的低16位地址直接与MPU的地址线相连,而高2位则需进行地址扩展,上图中AT27C020的A16和A17分别接到AT89C52的P1.6和P1.7,片选信号CE接到P1.5上,此时寻址的页大小为64KB(页大小还可以根据需要设置为32KB,16KB等)。寻址由软件编程来实现,例如要读38400H单元的内容,可由下列程序实现:


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭