目前大多数的LED点阵显示系统自带字库,显示和动态效果(主要是显示内容的滚动)的实现依靠硬件扫描驱动,该方法虽然比较方便,但显示内容不易及时更新,而且当LED显示屏安装到户外时,不能对其进行有效的控制。室内显示屏通过数据线控制,很不方便。
设计围绕多功能LED显示屏进行,显示方式有上下左右移动,利用PC机进行显示内容的实时控制更新。系统使用红外发射。接收器构成的遥控电路,遥控接收 器通过对红外光接收并识别,判断控制操作,来完成整个红外遥控发射。接收过程,可以方便地更新显示内容,更换显示方式,使设计更具实用性和操作控制的方便 性。
1 总体设计方案
LED显示屏多采用动态扫描显示方式。扫描显示的原理是基于人眼的视觉暂留现象,各显示行(列)轮流显示,只要刷新频率不小于24 f/s,人眼感觉到的将是完整连续的图像。
红外遥控是以红外线作为载体来传送控制信息的,红外线发射头采用红外发光二极管,这样遥控发射器易于小型化且价格低廉。采用数字信号编码和二次调制方 式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功耗低,不会产生信号串扰,反应速度快,传输效率高,工作稳定 可靠等。单片机采用STC89C58RD+,储存数据量比STC89C52大,晶振用22.1148 MHz,以提高刷新的频率使显示更稳定.P0口输出行信号经74HC154译码后,产生行选通信号送入显示屏的行进行轮流显示。单片机P2口与8位移位寄 存器74HC595相连。系统总体结构图如图1所示。
1.1 LED显示屏常规驱动电路的设计
LED显示屏驱动电路的设计, 与所用控制系统相配合, 通常分为动态扫描型驱动及静态锁存型驱动二大类。以下就动态扫描型驱动电路的设计为例为进行分析:动态扫描型驱动方式是指显示屏上的4 行、 8 行、 16 行等n 行发光二极管共用一组列驱动寄存器, 通过行驱动管的分时工作, 使得每行L ED 的点亮时间占总时间的 1ö n, 只要每行的刷新速率大于 50 Hz, 利用人眼的视觉暂留效应, 人们就可以看到一幅完整的文字或画面。
led显示屏驱动电路
2 硬件电路设计
2.1 主控与扫描驱动电路
主控电路以STC89C58RD+芯片为核心,外接复位电路。时钟电路及串口下载线接口电路(RS 232 通信接口),用于LED 显示系统和电脑的通信,通信方式为10 位的异步通信,在线下载便于程序更新,有利于系统的维护。
扫描驱动电路由行和列驱动组成.LED 显示屏一共16行,用一片74HC154对16行LED 进行译码选择,经过TIP127放大并转换成高电平,从而选通行线。
列扫描驱动采用并行数据串行传输的方案,数据锁存器用74HC595.64 列用8 块74HC595 芯片来驱动,8 块74HC595是首尾相连,前面一块74HC595的移位输出连接到下一块74HC595 输入,第一块74HC595 的串行数据输入端与单片机数据输出端相连接,其中前2块74HC595连接如图3所示。
2.2 红外收发遥控电路
红外发射接收原理是:发射端输入信号经放大后送入红外发射管发射,在接收端,接收管收到红外信号后,由放大器放大处理还原成控制信号。按下某一个按键, 单片机识别出该按键,同时单片机向接有红外发射管的端口发射一定频率的脉冲。该脉冲与38 kHz左右的载波脉冲进行调制,然后将已调制的脉冲进行缓冲放大,激励红外发光二极管将电能转化为光能,使得红外发光二极管发射出一定频率的红外线。当接 收控制系统接收到该红外光后,由单片机内定时/计数器得到该红外光的频率,然后将该频率送往CPU,由CPU对该信号进行解码,识别出控制信号,从而对控 制电路实施控制功能,完成整个遥控功能。
系统采用一体化红外接收头HS0038,如图4所示,1 脚GND 接电源地,2 脚VCC 接+5 V,3 脚OUT 为数据输出端(TTL 电平,反相输出),可直接与单片机相连。
SE303 是红外发射二极管,当P2.0=1时,三极管9013 导通,SE303 通电发射红外线,实际上发射的是频率为38 kHz的脉冲串。电路连接如图4所示。
3 软件系统设计
3.1 总体程序流程设计
单片机开外部中断,不断查询是否有红外信号发射过来,若没有接收到信号,单片机按照原来的预编入内容进行扫描,送给显示屏显示。否则,单片机接收数据,辨认显示方式,接收完毕后,更新显示内容。同理按照这种方式接收PC机的数据,进行更新显示。总体程序如图5所示。
3.2 LED显示程序
LED 显示屏的显示方式有静止。上下滚屏。左右滚屏等多种方式。其中上下滚屏显示程序类似,左右滚屏显示程序类似,其他多花样的显示方式程序都是在此基础上进行改动而来的。
3.3 PC机客户程序
系统的PC 机客户程序用Visual Basic 6.0进行开发,主要利用其串行通信控件MSComm,其主要流程图见图8所示。
3.4 红外遥控程序
3.4.1 发射程序设计
因HS0038 的红外接收频率为38 kHz,所以载波信号采用38 kHz方波。载波信号由子程序产生,方波周期t=26 μs.该程序基于字节传输的红外遥控数据格式,在发送字节的开始先通过单片机发送20个脉冲宽度(每个脉冲周期26 μs)的高电平作为传输开始,接着发送8 位数据(字节高位在前,低位在后),最后发送10 个脉冲宽度的低电平作为传输结束。其程序流程图如图9所示。
3.4.2 接收程序设计
HS0038 输出的信号是解调后的反向信号,所以接收到的信号解码时也要经过反向才能与发送信号编码一致。当接收到同步帧后,进入解码部分,接收完一帧后,处理收到的 数据并进入下一次接收。解码采用软件抽样判决,以15个脉冲为判决门限,在门限时刻读得低电平时,即可判定为编码‘1‘;在门限时刻读得高电平时,即可判 定为编码’0‘。解码一位后,需等到下一位的高电平到来,再计数15 个脉冲后,判断读得的电平是高还是低,进行解码。程序流程如图10所示。
编辑点评:该L ED 显示屏恒流驱动电路与原常规型驱动电路相比, 仅利用较小的改动就克服了常规型驱动电路的缺陷, 确保了较完美的性能, 笔者通过多块显示屏的实际使用均得到了理想
的显示效果。