LED点阵显示屏由于其控制方便, 使用寿命长,易于搭建且搭建成本低, 广泛应用于商场, 火车站, 商业广告和信号指示牌之中。一定尺寸的LED 点阵屏都是由多个显示单元拼接构成, 本文详细介绍了一种通用的LED 点阵屏显示单元的设计及其驱动控制。
1 系统整体设计概述
系统原理框图如图1所示。由图1可知, PC 机从上位机软件发送指令和数据, 通过串口RS232将数据传输到单片机, 单片机对行驱动和列驱动发出控制命令, 对LED点阵屏进行相应的控制。外部时钟电路可以用来读取显示的时间, 外部存期器件用于存储LED点阵屏的输出数据, 在进行控制操作时, 单片机可直接从此读取数据, 可脱机进行显示控制。通过按键不需经过PC机可对LED点阵屏进行简单的人机交互。
2 系统硬件电路设计
系统硬件主要划分为两大部分: LED点阵屏接口电路, 构建显示单元及其驱动电路; 基于单片机mega16的控制系统, 用于完成数据接收和控制LED点阵屏。
2. 1 LED点阵屏接口电路
图2是8*8 LED点阵显示屏的内部结构图, 四个8*8点阵可以构成一个16*16的点阵屏, 用于显示汉字。8*8点阵屏显示原理是利用行列导通其中的LED的而控制64个LED的亮灭。图2中所示, 如果想要行1和列1 的LED 亮, 只需要行1通高电平, 列1低电平即可。LED 显示屏幕就是依靠这样的选取行列进行各类图形文字的变换。
图4为LED点阵条屏的连接方式, 上下半屏8 ??8点阵的行线各自连接在一起构成一个系统。此系统采用行扫描方式, 使用两个3线8线译码器74HC138来分别驱动点阵的上8行和下8行。在点阵屏幕不大的情况下, 一般的单片机可以直接驱动点阵LED的亮灭,但是考虑扩展为大屏幕尺寸时, 那么单片机的I/O 口不足以提供足够的驱动电流, 如图3 所示, 可在74HC138和点阵的行接口接上一个PNP型8550三极管开关电路用来提供足够的电流, 当74HC138发出低电平时, 三极管Q导通, LED_H输出高电平。此时I/O口只需要提供几毫安的灌入电流即可控制其通断, 如果需要扩展屏幕, 只需要将扩展的上下半屏LED 点阵的行各自共联到74HC138即可。
本系统采用74HC595锁存器来对列线进行驱动控制, 其带有2级锁存移位输出功能。如图3所示, LED 点阵的列线接到74HC595的8位并行输出口上, 由单片机控制数据的输出, 利用74HC595 的锁存输出功能, 电路共用同一个移位时钟SCK 和数据锁存时钟RCK, 可级联多片74HC595以构成更大LED 点阵屏的列驱动电路。此结构还可在75HC595的使能端通过PWM 波进行灰度调节。
. 2 Mega16控制电路
主控制器主要是采用8 bitAVR单片机M ega16及其外围电路来进行控制, 主要器件接口如图5所示。Mega1带有四组32个I/O 口, 它的时钟频率可跑到16MH z, 可满足系统控制的数据处理速度。控制电路的主要功能就是对LED 接口进行扫描控制, 发出移位SCK 时钟信号和数据锁存RCK 时钟信号到74HC595上, 依照相应的时序对74HC595发送汉字数据, 同时对74HC138进行行选控制。电路外加一个74HC245芯片用以提高单片机对负载的驱动能力。PC 机通过串口和M ega16 进行通信, 外部存储器选用M icrochip公司的24C256 串行存储器, 256 K 容量方便以后将汉字库固化在里面, 需要显示的字只需要查询存储器就能提取相应的字模数据。同时加上DS1302时钟芯片, 可以提取2100年前的年月日等时间数值, 以提供需要。
3 程序设计
程序设计主要包括三部分: 主程序, 串口中断程序, 显示子程序。首先进入主程序, 初始化单片机,如果串口有数据输入, 则会进入串口中断程序接收数据。单片机在接收完数据后会进入显示子程序,输出相应的数据到LED 的行列驱动。图6为三部分的程序流程图。
4 总结
图7中的显示部分就是10个16*16点阵级联而成的显示屏。此结构通用性强, 依靠软件可以实现汉字上下左右移动等功能, 而不需在LED 显示单元的硬件上做任何改动。在显示效果上, 可根据需求更改单片机上的控制程序即可, 大大加强了系统的稳定性和实用性。经实践测试, 此种结构, 用一片8位单片机, 在16MH z下, 至少能驱动32*160个点, 没有抖屏现象。如果程序使用汇编语言, 速度将得到很大的提升, 能驱动更多点。
本文以高性能的Mega16芯片为硬件基础, 设计了LED显示单元的硬件电路和控制电路, 实现了对单片机的控制、LED 屏幕的显示等。下一步是完善其汉字的显示特效, 以及上位机与单片机的实时通信等功能。根据此系统的结构还可以进一步扩展成双色, 全彩的LED点阵屏。
来源:中国照明网
|