当前位置:首页 > 显示光电 > 显示光电
[导读]1 点阵式LCD的接口技术单片机可以通过数据总线与控制信号直接采用存储器访问形式、I/O设备访问形式控制该液晶显示模块。本文以AT89C51为例,他与YEJHD19264接口电路如图1所示。单片机通过P2.6,P2.7来控制CSA,CSB列

1 点阵式LCD的接口技术

单片机可以通过数据总线与控制信号直接采用存储器访问形式、I/O设备访问形式控制该液晶显示模块。本文以AT89C51为例,他与YEJHD19264接口电路如图1所示。单片机通过P2.6,P2.7来控制CSA,CSB列选择驱动器,同时AT89C51用P2.1作为R/W信号控制数据总线的数据流向,用P2.0作为D/I信号控制寄存器的选择,E信号由AT89C51的P2.4控制。电路中LCD电源控制端VO是用来调节显示屏灰度的,调节该端的电压,可改变显示屏字符、图形的颜色深浅。可以通过查阅显示屏产品手册查到基本显示时序电路和显示驱动程序。

2 点阵LCD的显示控制技术

根据点阵式LCD的功能和特点,笔者研究了两种应用广泛的控制算法,左(右)循环位移算法和翻页算法。

2.1 左(右)循环位移算法

此算法应用于广告或车载报站系统中。如图2所示,以左循环为例,假如一串8个汉字(16*16字模)的广告,要在192*64点阵LCD上的第二行(192*64型的点阵显示16*16字模时为4行12列)实行左循环显示功能,具体算法如图3所示。

说明:把8个字看作为一个整体,即汉字串,并以第一个汉字的显示坐标作为整个汉字串的显示坐标,将其初始化为最右边的坐标值(假设广告是从右向左移动)。接着依次向左延伸显示8个汉字(一条广告),如果在显示过程中,有一些汉字的坐标会超过液晶屏的显示界限,这时控制程序不显示这些汉字,如图2虚线小方框所示。汉字串显示坐标向左移一位(减1)都要判断坐标值是否等于-7(等于-7,则一次左移结束,重新初始化为最右边的坐标值,准备第二轮左移;不等于-7,则本轮左移尚未结束)。

在实际应用中,左(右)循环位移算法还可根据系统需求进行改进和拓展,以使他的应用更加灵活。比如要求广告语是可实时更改的,即当用户通过串口或其他外部接口输入新的广告时,原来的旧广告要被新广告替换,这样,算法就会更加复杂,因为除了广告的内容本身的变化(字改变),字数也可能改变。

2.2 翻页算法

此算法应用于短信息的显示系统中。首先必须把显示所需的页数计算出来,公式为:

其中:P为页数,S为所要显示的汉字总数,M为整屏容纳汉字的最大数。

比如在显示100个汉字时,100/46(本来除数应该是48,但要留出两个汉字的位置作为上下翻页的提示符的显示位置),结果商是2,余数是8。这就意味着100个字分成3页显示,第一和第二页都显示46个汉字,第三页显示最后8个汉字。其次,还需要建立页码和一屏汉字的存储器首地址的对应关系,也就是100个汉字,前46个汉字首地址对应第一页,接下来的46个汉字首地址对应第二页,剩余8个汉字对应第三页。因为一个地址存储了一个字节,而汉字内码由两个字节构成,那么,任何一屏汉字的存储首地址的计算公式为:

其中:t为任何一屏汉字存储首地址,T为全体汉字存储首地址,M为整屏容纳汉字的最大数,P为页数。以下的算法结构仍然以192*64点阵显示器为例,整个显示部分程序结构图如图4所示。

说明:根据所要显示的页面不同,文本把页面显示分为三个软件模块,他们分别是:首页显示模块,代表第一页汉字内容;中间页显示模块,代表非第一页和非最后一页的其他所有的页面;末页显示模块,代表最后一页汉字内容。在程序开始时,变量P作为将要显示的页面标识,赋初值为1,所以在第一次进入循环时程序进入首页模块,这时根据式(2)计算本屏汉字存储首地址,从而显示第一页内容,同时显示向下翻页提示符。随后等待外部按键中断,当有下翻页按键提示到来时,要改变P值(加1),进入中间页显示模块或末页显示模块。当程序进入中间页显示模块时,同样根据式(2)计算本屏汉字存储首地址,显示本屏的汉字,同时显示向上和向下翻页提示符。随后等待外部按键中断,当有下翻页或上翻页按键提示到来时,要改变P值(加1或减1),并进入上一页显示模块或下一页显示模块。注意:这里的上一页显示模块可能仍是中间页,而不是首页;同样下一页显示模块可能仍是中间页,而不是末页,具体要视总共的页数而定。当程序进入末页显示模块时,根据式(2)计算本屏汉字存储首地址,显示本屏汉字,同时显示向上翻页提示符。随后等待外部按键中断,当有上翻页按键提示到来时,要改变P值(减1),进入中间页显示模块或首页显示模块。

在实际应用中,翻页显示算法可与短消息存储和查阅算法,文件系统相结合实现类似手机的短消息模式的显示系统。

3 实验设计与结果

3.1 设计思路

在设计外围硬件时,笔者用了E2PROM存储汉字库,8 kB的外部RAM存储短消息和广告中的每个汉字汉字内码,再把内码转换成汉字库字模首地址,然后读取E2PROM中的字模。在外部RAM中,进行了区域划分:前4 kB:存储已经预处理完毕且即将显示的短消息,可容纳汉字2000个(每个汉字2 B)。接下来2 kB:存储已经预处理完毕且即将显示的广告,由于加入了滚动机制,只可容纳200个汉字。最后的2 kB:存储串口接收来的BTYE,包括所有的解包、解码的预处理都在这个区域进行在这里,如之前所述,把有用信息的提取出来,提取出的汉字部分,送入短消信或广告存储区,等待显示命令。此区域可支持2 000 B的编码长度。同时设计了4个按键,用于控制上下翻页,广告模式与消息模式之间的切换,单片机复位。

3.2 实验结果

由于广告是滚动的,静态图无法描述清楚,所以这里只给出短消息显示图,这是中间页显示,左上角和右下角分别是上翻页和下翻页的提示符。笔者让单片机顺序提取字库中的汉字进行显示。

4 结 语

这两种算法已应用于基于无线测控网的车载及船载短信息通信系统中,同时也可通过进一步拓展算法来迎合更加复杂的系统需求。希望本文能为那些基于低端LCD应用的程序开发人员提供一个解决实际问题的思路和方法。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭