0 引 言
人们在日常生活中,LCD占有很大的地位。人们使用的电脑、手机、车载系统、各种测量设备、显示设备等等,都把LCD作为重要的人机接口,它把使用者需要的信息及时反应出来。目前市场上存在着各种LCD和相对应的驱动模块,驱动模块所带的驱动程序都是针对本身模块开发的,各种驱动程序之间通用性差,而且在不同的平台上很难移植。每换一种LCD产品,都要根据它的驱动模块重写驱动程序。这样产品开发资源浪费,开发周期长,成本增加。本文将介绍一种LCD图形液晶驱动器的使用方法以及程序裁剪、移植和扩展,实现在任意坐标上显示图形和汉字。这款驱动器不带字库,对需要显示的汉字和字母通过字模产生器产生数据,通过程序设计把字体在LCD通过描点描述出来(本文所用的字模采用阳码)。
1 典型图形LCD驱动器NHC_313简介
1.1 驱动器简介
NHC_313驱动器驱动最大点阵数为640(列)×480(行),显示颜色为65536色(16位色)。本文所用的LCD为SHARP公司产品,产品型号为LQ104V1DG52。NHC_313有8位复用并行接口一数据总线和控制总线。MCU可以通过总线对LCD进行操作,随时写显示存储器,而不影响显示效果,即显示不会出现“雪花”。NHC_313内部有两页显示缓存,使用人员可以让一页缓存的数据在LCD上显示出来,同时可以对第二页的缓存进行操作。此驱动器与微处理器接口连接简单,接口的读、写操作兼容8031总线时序。这款驱动器只是单纯的图形图像显示,没有内置字库、图形库。如果设计人员要显示汉字,必须要把需要的汉字用字模生成器产生字模的16进制文件,然后通过程序控制把需要的字体逐一描到LCD上。驱动器的控制引脚如下:
WR:数据写入,低电平有效
CS:片选端,低电平有效
A0:地址信号线0
A1:地址信号线1
DB0~DB7:数据总线
对NHC_313读写的时候采用8031时序,如图1为NHC_313接口电路8031时序图,在表1中列出了接口的时序特征参数。
当驱动器与8051等I/O口读写速度不是很快的MCU连接时,I/O的特性其本上可以满足表1的时序特征参数,图2给出的是MCU和驱动器无缝连接的接口电路,这种方法是采用IO模拟时序的时候用到的引脚(不止局限于图中列出的引脚),本文建议采用I/O口模拟时序的方法控制驱动器。要注意的是如果I/O的读写速度过快则不能满足接口时序特性参数。例如采用Silab公司的C8051F340作为NHC_313的MCU,由于C8051F340的内部晶振为48MHz,I/O读写速度不能很好满足时序特性(写周期不能满足),所以在程序设汁中会看到有延时程序。而Atmel 8051系列单片机I/O可以满足表1的时序参数特性,不需要加入延时程序。
表2为驱动器命令,由于显示的像素点数为640(列)×480(行),对于8位的I/O不能一次的把行和列的信息完全表示出来,由此设置了行列的高低地址(8位地址线只能表示0~255的地址信息)。
关键词:评论内容只代表网友观点,与本站立场无关! 评论摘要(共 0 条,得分 0 分,平均 0 分)
|