LED显示屏由于其具有耗电少、使用寿命、成本低、亮度高、故障少、视角大、可视距离远等特点,已经成为新一代的信息传播媒体工具。LED与LCD相比较最突出的特点亮度高、成本低且屏幕尺寸可根据现场情况用标准LED单元板拼制。按安装位置可分为:室外、半室外和室内;按颜色可分为:单色、双基色和彩色;按发光二极管点距可分为:φ5.0,φ3.75及φ3.0等。本文以市场上常见的室内双色LED单元板为控制对象,说明基于STC单片机的LED显示屏控制系统工作原理以及数据组织方法。
1 标准双色LED单元板的硬件组成及工作原理
市场上常见的室内双色LED单元板电路框图如图1(a)所示。其中行扫描电路由2片74HC138(3-8译码器)构成的4-16译码器加上多个4953(MOS管)组成的,扫描方式为:1/16。上下半屏分别由2组用74HC595串行移位寄存器实现红色、绿色显示数据的列输入,在图1(a)所示的64×32标准LED单元板中每组串行移位寄存器中有8个74HC595级联,4组共用了32个74HC595。74HC595内部电路框图如图1(c)所示。所有4组74HC595的控制信号R
2 LED显示控制系统的硬件组成及工作原理
LED显示控制系统的硬件组成如图2所示。从表面上看是一个普通的单片机简单应用,实际上在设计此系统时已经考虑了很多硬件、软件及硬软件配合的因素。首先在使用51单片机的前提下,用其串行口方式0似乎可以利用单片机发出的移位脉冲将8位数据送入74HC595中,但要实现图2中8位数据的同时输入必须加入其他的辅助芯片,而且在减小数据传输时间上没有什么好处。其次,采用FPGA,CPLD等可编程芯片设计成专用硬件电路与单片机接口可大幅度提高数据传输的速度,但成本也将同步大幅度提高。
STC12C5410为IT高速低功耗单片机,其运行速度为一般标准51系列单片机的8~12倍,并具有标准的SPI和RS 232串行口。本文所述的LED显示控制系统以其为核心控制芯片。图2为双色LED显示屏控制系统电路原理图,在图2所示的LED控制系统中,SST25VF016B为16 Mb,具有SPI接口的8PIN串行FLASH存储器,由于SST25VF016B工作电压为3 V,故使用U3,U4两片74LVC245完成5 V到3 V和3 V到5 V的电平转换。SST25VF016B的SPI接口最大工作频率为50 MHz,而STC12C5410 SPI接口最大工作频率为晶振的1/4,故不存在速度上不匹配的问题。行扫描信号A控制工程网版权所有,B,C,D由P1.0~P1.3控制。图1(a)中74HC595的控制信号RCK,EN及SCK由P3.3~P3.5提供。显示数据从P2口输出。
3 LED显示控制系统的数据组织及软件优化
LED显示控制系统的数据组织如图3所示。从图2可以得到如图3(a)所示的从正面看过去显示行与显示数据位以及颜色的对应关系。图2所示的硬件结构决定了每一行的数据可连续排列,同时为了提高数据的读取速度,将所有显示数据均按扫描行、扫描列进行连续排列,可得到如图3(b)表明的存储单元与扫描行、存储单元数据位及颜色的关系。
具体编程时可按下列步骤进行:
(1)将准备扫描的行地址送P1口的低4位中。
(2)初始化SST25VF016B将读地址指针指向待显示行相应存储单元的首地址。
(3)启动SPI以顺序读方式连续读显示数据CONTROL ENGINEERING China版权所有,并将显示数据送P2口。
(4)每读一个数据通过P3.5产生一个SCK脉冲(SST25VF016B在顺序读方式下地址自动加1),将P2口上的显示数据移入74HC595串行移位寄存器。
(5)重复(2),(3),(4)直到一行数据显示完毕CONTROL ENGINEERING China版权所有,通过P3.3产生RCK将通过移位寄存器移入的一行数据显示。
(6)重复(2)~(5)直到16行数据全部显示完毕。
(7)重复(1)~(6)刷新显示。
源程序1和源程序2均为用C51编写的显示一屏完整数据的显示函数。不同之处在于源程序1的SPI读写为一个单独的函数,而源程序2为了进一步提高数据读取的速度将显示时的读显示数据变成了一个循环体。由于SST25VF016B串行大容量FLASH在给定读地址后可连续的读CONTROL ENGINEERING China版权所有,其读地址会自动加1,所以按图2(b)所示的数据组织形式为一屏显示数