《LED显示屏动态显示和远程监控的实现(doc5)pvy.docx》由会员分享,可在线阅读,更多相关《LED显示屏动态显示和远程监控的实现(doc5)pvy.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、LED显显示屏动动态显示示和远程程监控的的实现摘要要:由于于普通LLED点点阵显示示屏动态态显示通通常采用用硬件扫扫描驱动动,这在在一些需需要特殊殊显示的的场合显显得不够够灵活。文文中提出出了一种种利用PPC机和和单片机机的通讯讯来实现现显示屏屏灵活的的动态显显示和远远程监控控的设计计方法,同同时该方方法还可可以将显显示内容容在PCC机上进进行预览览。关键键词:LLED;动态显显示;远远程控制制;显示示预览1引言LEDD 点阵阵电子显显示屏是是集微电电子技术术、计算算机技术术、信息息处理技技术于一一体的大大型显示示屏系统统。它以以其色彩彩鲜艳,动动态范围围广,亮亮度高,寿寿命长,工工作稳定定可
2、靠等等优点而而成为众众多显示示媒体以以及户外外作业显显示的理理想选择择。同时时也可广广泛应用用到军事事、车站站、宾馆馆、体育育、新闻闻、金融融、证券券、广告告以及交交通运输输等许多多行业。目前大多数的LED点阵显示系统自带字库。其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先的设计进行。而实际上经常会遇到一些特殊要求的动态显示,比如电梯运行中指示箭头的上下移动、某些智能仪表幅值的条形显示、广告中厂家的商标显示等。这时一般的显示系统就很难达到要求。另外,由于受到存储器本身的局限,其特殊字符或图案也往往难以显示,同时显示内容也不能随意更改。
3、本文提出一种利用PC机和单片机控制的LED显示系统通讯方法。该方法可以对显示内容(包括汉字和特殊图符)进行实时控制,从而实现诸如闪动、滚动、打字等多种动态显示效果。该方法同时还可以调节动态显示的速度,同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。另外,通过标准的RS232485 转换模块还可以实现对显示系统的远程控制。2系统硬件设计本 系统主要的硬件设计是下位机单片机的显示 控制部分。而上位机(PC机)与单片机显示控制部分的接口为标准RS232通讯方式。若需实现远程监控,只需增加RS232485转换模块即可,该部分已有成熟的电路设计,故不再详细叙述。具体的LED显示屏控制
4、电路如图1所示。整个电路由单片机89C52、点阵数据存储器6264、列驱动电路ULN2803、行驱动电路TIP122、移位寄存器4094及附属电路组成。该电路所设计的电子屏可显示10个汉字,需要40个88 LED点阵模块,可组成16160的矩形点阵。由于AT89C52仅有8k存储空间,而显示的内容由PC机控制,因此不可能预先把需要显示的内容做成点阵存在单片机中,而只能由PC机即时地把所需显示的点阵数据传给单片机并存入缓冲区6264。该电路的显示采用逐行扫描方式。工作时,由单片机从缓冲区取出第一行需要显示的20字节点阵数据,再由列点阵数据输入端P12口按位依次串行输入至列移位寄存器,其数据输入的
5、顺序与显示内容的顺序相反。然后置行点阵选通端P13为1,即置行移位寄存器的D为高电平,STR使能(所有4094的OE 引脚接5V电平),从而使列移位寄存器中的数据同时并行输出以选通该行。经延时一段时间后再进行下一行点阵数据的显示。需要注意的是,每次只能选通一行数据,即要通过不断的逐行扫描来实现汉字或字符的显示。3显示与控制的设计在笔者设计的PC机控制多单片机显示系统中,用PC机实现的主要功能包括单片机显示子系统的选择,显示方式选择(包括静态、闪动、滚动、打字等),滚动方向选择(包括上下滚动和左右滚动),动态显示速度调节(即文字闪动频率、滚动速度、打字显示速度等),显示内容输入及显示预览等。单片
6、机一般通过 RS232485串行接收PC机发出的显示指采用定时器中断方式进行行扫描,每次中断显示一行,定时中断时间为125ms,这样整屏的刷新率为 50Hz,因而无闪烁感。此主题相相关图片片如下:实现现动态显显示速度度调节的的方法通通常是改改变定时时器的中中断时间间,但是是当显示示速度很很慢的时时候,该该方法容容易使整整屏的刷刷新率降降低,从从而使显显示内容容出现闪闪烁。因因此,本本设计采采用一种种“软定定时”方方法,即即在程序序中命名名一变量量作为“软软定时器器”,以以用来设设定两次次动态显显示的时时间间隔隔。在对对定时中中断调用用计数时时,如果果调用次次数达到到设定值值,则改改变显示示内容
7、。为为保证能能够正常常显示,“软软定时器器”的设设定值必必须大于于整屏显显示周期期。由于于显示屏屏每行显显示125mms,整整屏显示示周期为为20mms,考考虑到余余量的情情况,可可将软定定时器的的设定值值定在大大于300ms。如如此循环环计数,即即可实现现动态显显示。“软软定时器器”的设设定值可可以通过过上位机机PC机机来改变变,这样样既可实实现 LLED动动态显示示的速度度调节,又又可保持持显示内内容的流流畅和无无闪烁感感。31单片片机动态态显示控控制以上提提到的静静态、闪闪动、滚滚动和打打字等44种显示示方式,实实际上是是单片机机定时中中断程序序进行行行扫描处处理的不不同方法法。下面面将
8、分别别说明如如何实现现这4种种显示方方式。静态态显示只只需在定定时中断断处理程程序中从从显示缓缓冲区调调入相应应的一行行显示数数据,然然后选中中该行即即可实现现该行的的显示,如如此循环环,便可可显示整整个内容容。闪动动显示与与此类似似,不同同的是要要间隔一一个“软软定时器器”的定定时时间间,在行行扫描时时,行移移位寄存存器的DD端打入入的全为为0,可可使得整整屏不显显示,以以确保黑黑屏时间间与显示示时间相相等,从从而实现现汉字或或图符的的闪动显显示。滚滚动显示示要求需需要显示示的内容容每隔一一定时间间向指定定方向(这这里以从从右向左左为例)移移动一列列,这样样显示屏屏可以显显示更多多的内容容。
9、为此此,需要要在下次次移动显显示之前前对显示示缓冲区区的内容容进行更更改,从从而完成成相应点点阵数据据的移位位操作。具具体操作作方法是是:设置置一个显显示缓冲冲区(如如图2所所示),该该区应包包括两部部分:一一部分用用来保存存当前LLED显显示屏上上显示的的10个个汉字点点阵数据据;另一一部分为为点阵数数据预装装载区,用用来保存存即将进进入LEED显示示屏的11个汉字字的点阵阵数据。滚滚动指针针始终指指向显示示屏的最最右边原原点。当当滚动指指针移动动到需要要显示的的点阵数数据存储储区的第第1个汉汉字的首首地址时时,显示示缓冲区区LEDD显示区区为空白白,而预预装载区区已保存存了第11个待显显示
10、汉字字的点阵阵数据。当当需要滚滚动显示示时,则则可在接接下来的的扫描周周期的每每个行扫扫描中断断处理程程序中,将将对显示示缓冲区区的相应应行点阵阵数据左左移一位位,同时时更改显显示缓冲冲区的内内容。(需需要注意意的是,要要确保该该操作能能在125mms的中中断时间间内完成成。这里里89CC52采采用222MHzz晶振,实实验证明明可以实实现该操操作)。这这样,在在一个扫扫描周期期后,整整个汉字字将左移移一列,而而显示缓缓冲区的的内容也也同时更更改。由由于预装装载区保保存了11个汉字字点阵数数据,即即1616点点阵,所所以当前前显示缓缓冲区的的内容只只能移动动16列列。当下下一个滚滚动到来来时,
11、滚滚动指针针将移动动到点阵阵数据存存储区的的下一个个汉字的的首地址址,并在在预装载载区存入入该汉字字的点阵阵数据。然然后重复复执行上上述操作作便可实实现滚动动显示。特特殊字符符或图形形的显示示与此类类似,这这里不再再赘述。 此主题相相关图片片如下:打字字显示要要求汉字字在显示示屏上按按从左到到右的顺顺序一个个个的出出现,如如同打字字的效果果。设计计时可采采用如下下方法:首先将将LEDD显示屏屏对应的的显示缓缓冲区全全部清零零,即 LEDD显示空空白,然然后每间间隔一个个“软定定时器”设设定的动动态显示示时间,显显示缓冲冲区依次次加入一一个汉字字点阵数数据并进进行扫描描显示,这这样就可可达到打打
12、字显示示的效果果。32 PPC机控控制程序序a通讯功功能的实实现在Wiindoows环环境下,实实现PCC与单片片机的通通讯可利利用Wiindoows的的通讯AAPI函函数或者者利用VVC(或其其它语言言)的标标准通讯讯函数inpp、ooutpp来实现现。但上上述两种种方法比比较繁琐琐,而采采用AcctivveX控控件MSSCommm322来实现现则非常常方便。该该控件用用事件的的方式简简化了对对串口操操作的编编程,并并可设置置串行通通信的数数据发送送和接收收,还可可对串口口状态及及串口通通信的信信息格式式和协议议进行设设置。其其初始化化程序如如下:此此主题相相关图片片如下:此主题题相关图图片
13、如下下:一般情情况下,PPC要与与多个单单片机889C551系统统进行主主从式通通讯,为为了区分分各单片片机系统统,可以以使899C511采用串串口工作作方式33,即111位异异步接收收发送送方式,该该方式的的有效数数据为99位,其其中第99位为地地址数数据信息息的标志志位,其其作用是是使从机机据此判判断发送送的数据据是否为为地址,从从而实现现多机操操作。但但现在由由于采用用的是MMSCOOMM控控件来实实现PCC机和单单片机之之间的通通讯,这这是一种种标准的的10位位串口通通信方式式,即88位标准准数据位位和该数数据的起起始位、停停止位各各1位。因因此二者者格式不不相符,故故很难利利用上述述
14、方案。因因此可考考虑将单单片机串串口设为为工作方方式1,即即改为110位异异步接收收发送送方式来来解决,其其通讯流流程如下下:首先发发通信开开始标志志,接着着发送需需要操作作的单片片机系统统地址,然然后发送送显示工工作命令令字,该该命令包包括2个个字节,前前一字节节用于设设定显示示方式和和滚动方方向,后后一字节节则用于于设定显显示速度度。再往往下是传传送显示示内容的的点阵数数据,最最后对数数据进行行校验。该该通讯规规约非常常简便,能能够较好好的解决决上述问问题,从从而实现现PC机机与多单单片机之之间的主主从式通通讯及对对显示的的控制。需要注意的是,当显示内容需要改变时,为了避免在单片机串行中断
15、接收数据时,显示屏出现乱码,应使显示屏暂不显示(处于“黑屏”状态),直到数据接收完全,串行中断处理结束时再显示。汉字字模的提取非常关键,本文的字模数据取自UCDOS下的字库文件HZK16。关于这方面的介绍较多,文献2给出了较为具体的在VC下提取汉字字模的方案,这里不再赘述。对于特殊字符或图形点阵数据的提取,简便的方法可以先做一个BMP文件,然后用一些取模软件(如字模提取v21)来获得。为了显示方便,点阵数据的格式应为n(168),不足要求的则应以0数据补充。b动态效果模拟显示为了方便调节LED的显示效果,笔者在PC机的控制界面上设计了LED显示屏的模拟显示,它同实际的显示效果完全一样。用户可以
16、设定显示的模式,并调节显示速度,然后在界面上对显示效果进行预览,同时还可以随时修改和设定参数,因而十分方便简捷。为此,可先在界面上描绘出虚拟的LED显示屏,由于实际的显示屏为16016点阵,故须在界面 上设定相同的区域。实现动态显示效果的方法和以上几种基本类似,这里以滚动显示为例作一说明。对于需要滚动的文字,可以将其设置为位图格式,暂存于内存中,然后利用VC 提供的位图拷贝函数BitBlt将位图复制到显示位置。对于特殊字符或图形,则可以直接利用BitBlt函数调用到显示位置。然后在类CLEDDlg的 OnTimer函数中调用该函数,以实现文字的滚动显示。另外,也可以通过设定不同的响应时间间隔来改变文字的滚动速度。4结束语 本文提出的实现LED点阵显示屏的动态显示和控制的解决方案,已成功地应用于实际系统。如将该系统联入计算机网络,还可实现对显示屏的远程控制。