LED图文显示屏控制系统设计
引言
LED显示屏整个系统一般分为3个部分:上位机,显示屏控制电路和LED阵列及其驱动。
其中显示屏控制电路的设计广泛采用两类器件作为其控制核心来实现,一类是单片机控制系统,另一类是可编程逻辑器件。该设计采用基于单片机的控制方案,如图1所示,一台PC机通过RS485总线与多块控制器相连,每块控制器扩展了温度传感器、实时时钟和其他外围器件,控制LED屏的显示。
采用单片机的控制方案,结构简单,应用灵活,并且易于扩展。
1 系统的硬件设计
系统硬件框图如图2所示,上位PC机用专门的软件编辑将要显示的信息,通过串口发给单片机,存储在Flash内,单片机再驱动电路将字符的编码通过LED点阵的形式显示出来。
LED点阵为双基色屏,能显示红,绿,黄3种颜色。控制器的核心选用STC89LE516单片机,扩展32KSRAM作为显示缓存区,512KFlash用于存储显示的点阵信息和一些必要的参数。
拨码开关选择本屏的物理地址。控制器还扩展了1片温度传感器采集温度数据,1片时钟芯片进行实时时间的读写。
1.1 存储器扩展电路
STC89LE516是一款强抗干扰,高速,低功耗的单片机,增强型51内核,集成了看门狗电路,内含64K字节Flash存储器,512字节RAM,可在线编程,可远程升级,价格便宜。
为了提高响应速度,系统扩展了32KSRAMIS61LV256作为显示缓存区,用于保存当前正在显示的一帧数据和一些特技处理数据,和单片机的接口如图3所示,SRAM的最高位地址线A14由单片机的P3.2单独控制,以便于将红色和绿色LED点阵的数据分块存放,当P3.2输出为0时,选中RAM地址0x0000~0x3fff,为红色LED的数据区;当P3.2输出为1时,选中RAM地址0x4000~0x7fff,为绿色LED的数据区。
Flash用于存储代码,显示的数据信息和字库。可采用查表的方式调用需要显示的汉字和英文点阵数据。用64K字节的存储空间存储16×16点阵的汉字,可以显示2048个,512K的Flash可满足常用字不同字体的存储需求。SST39VF040的地址线有19位,单片机用P1口来扩充高三位地址线。
系统中单片机,SRAM,Flash要求313V供电,而系统接入电源为5V,可通过LM1117-3.3为芯片提供3.3V稳压电源。
低压差电源芯片LM1117输出电流可达800mA,输出电压精度在±1%以内,还具有电流限制和热保护功能。
1.2 串行接口电路
控制器接收数据采用单片机内部全双工的通用异步收发器(UART)。在传输距离小于20m时采用非平衡的RS-232,在传输距离为几十m到上km时采用RS-485。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力,可以联网构成分布式系统。由于显示屏的位置是分散的,彼此相距几十甚至几百m,所以控制器用MAX232和SN75176分别做电平转换,用跳线进行RS-232和RS-485之间的切换选择,从而实现和PC的通信,完成数据的存储和更新。
1.3 实时时钟电路
单片机与HT1381低功耗实时时钟芯片接口采用串行传输方式,如图4所示只需3根线就可以读写年、月、日、星期、时、分、秒,在需要时显示到LED屏幕上。HT1381所需时钟独立于单片机,外接321768kHz晶振就可以工作。配备3V充电电池,系统采用外部供电时,二极管导通,外部电源一方面向芯片供电,另一方面对充电电池进行充电。当系统电源停止供电时,二极管截至,芯片由电池来供电。