张波+丁乐
[摘 要]LED点阵屏诸多优点,在当今社会应用越来越广,市场前景广阔。文章深入研究分析了LED点阵屏的构成及工作原理,以STC15F2K60S2单片机为控制核心,通过两片74HC138芯片构成4线-16译码器进行行控制,通过八片74HC595串接以串入并出方式进行列控制,设计制作出了16×64点阵屏,并指出了点阵屏扩展方法和显示内容更新的方法。实践证明本设计稳定可靠,性价比高,有很高的实用价值。
[关键词]点阵屏;扫描;串入并出;动态显示
[DOI]10.13939/j.cnki.zgsc.2017.15.290
1 引 言
LED点阵屏是一种文字符号与简单图形的显示器,具有性价比高、寿命长、亮度高、易于控制、显示灵活多樣、传播距远[1]等许多优点,在现代社会被广泛应用。物流领域、商铺、银行、证券市场、学校、体育馆、车站、码头、公交车、火车等很多地方均能经常见到LED显示屏,且随着社会信息化的进程,LED显示屏应用越来越广。
2 LED点阵构成及工作原理
LED点阵屏内部是由发光二极管构成。以简单的8×8点阵屏为例。8×8点阵屏共有64个发光二极管构成,每行和每列的二极管数目者是8个,每个二极管都位于行和列的交叉处。每行的二极管共阳(或共阴)连接后用一个引脚引出,每列的二极管共阴(或共阳连接后也同样用一个引脚引出。任意一个二极管要点亮,要它所在和行和列信号同时有效才行。8×8点阵屏是一种很简单基础的点阵屏,但用8×8点阵屏可很方便地组成其他类型的点阵屏。比如32×64点阵屏,每行用8个8×8点阵屏,每列用4个8×8点阵屏组合构成即可。
要显示一个符号,先分析出点阵上哪些二极管点亮可以显示该符号。行信号控制:显示时选中一行,使要显示的那一行信号有效,其他的行信号无效,这样只有选中的那一行的二极管才有可能被点亮;列信号控制方法:根据选中行需要点亮的二极管,配行行信号控制同进送出列信号,需要点亮的二极管所在的列信号有效,不需要点亮的二极管列信号无效(即不能点亮二极管),这样选中的那一行的需要点亮的二极管就会被点亮。比如要点亮第二行位于第一列和第三列的两个二极管,行信号使第二行的信号有效,其他行信号无效,同时送出列信号,列信信号使第一列和第三列信号有效,其他的列信号无效,这样第二行位于第一列和第三列的两个二极管就被点亮了。选中某一行一小段时间后,接下来选中下一行,同样的方法送出相应的列信号,每行都如此依次显示,最后一行显示完了之后再显示第一行,循环进行。虽然实际上每行是不同时间点亮的,但每行点亮的时间都极短,比如每行点亮2毫秒,加上人眼视觉滞后现象,人们看上去会感觉到需要点亮的二极管时是同时点亮的。每行点亮的时间过长会有闪烁现象,点亮的时间过短亮度会影响发光亮度,所以要恰当控制每行点亮的时间。实现显示内空的移动显示,实际上是把显示的内容移动的方向每移动一列作为新的显示内容按照一定的时间间隔依次显示出来。比如时间间隔1秒显示。要显示的内容显示1秒后,把显示的内容移动一列作为新的显示内容下一秒显示。显示的内容移动一列后行的控制方式不变,列信号控制方式也一样,只是每次送出的内容和前一秒有所区别,是显示内容移动一列后对应的编码。这种显示方式称之为行扫描,也就是任意时间段只有某一行的二极管可能被点亮,列控制是送出该行显示对应的数据。[2]相应地,还有列扫描,控制时行和列的控制方式和行扫描时对调一下。
3 STC15F2K60S2单片机及其他主要器件介绍
单片机种类很多,其中常用的80C51系列单片机都是在Intel公司MCS-51基础上发展起来的。晶宏STC15F2K60S2单片机是其STC15系列单片机中的一种,是新一代的增强型51单片机。[3]STC15单片机主要特点有:增强型51内核,单时钟机器周期,比传统的51单片机快7~12倍;3个可自动重载的16位定时/计数器;两个全双工异步串行口(UART);3通道PWM/可骗程计数器阵列/捕获/比较单元;60KB Flash程序存储器,1KB Flash数据存储器,2048字节的SRAM;8通信10位ADC;1个高速同步通信端口SPI;最多达42根I/O口线(看类型);可编程时钟输出功能;集成高可靠的硬件看门狗和上电复位电路;内部集成高精度R/C电路,常温工作时不需要外接晶振。STC15F2K60S2单片机为DIP-40封装,和普通双列直插的单片机一样也是40个引脚,但引脚分布和传统的51单片机不同,不能直接替换传统的51单片机,替代时需按引脚功能外围重新布线。
74HC595是8位串行输入,并行输出的芯片,8位并行输出为三态输出,其传递延迟时间很短,支持高速串行连接。在串行输入时钟信号SCK上升延时,数据从串行数据口输入一位到内部的八位位移缓存器,原来位移缓存器的最后一位由串行数据输出端输出,这样设计可以很方便地实现级联;平行输出缓存器的数据读取时钟信号LCK上升延时,八位平行输出缓存器会读取八位位移缓存器上的数据,从并行输出端输出。
74HC138是3线-8线译码器,输入端数据从000—111变化,八输出端中对应输出端低电平输出,其余为高电平,完成变量译码。利用使能端两片74HC138可构成4线-16线译码器。D4953是驱动芯片,内部包括两个独立的、P沟道金属氧化物场效应管,具有超低的导通电阻,适合用LED显示屏和LED显示器驱动,也可用来做负载开关或者PWM开关。
4 16×64 LED点阵屏系统的设计
本文设计一个16×64 LED可移动显示的点阵屏。以STC15F2K60S2单片机为控制核心。16×64 LED点阵屏,需要行信号16个,列信号64个,显然单片机满足不了这个要求,必须对I/O口进行扩展。具体方法是,用两片74HC138构成4线-16线译码器作为行控制信号,如图所示,这样行控制信号只需占用单片机4根I/O口线。如果同时点亮64个发光二极管,需要的电流还是比较大的,74H138的输出显然不能满足要求,引入驱动芯片D4953解决这一问题。列信号控制用74HC595串入并出芯片,每个芯片控制8列,64列需要8片74HC595芯片。前一个74HC595芯片的数据串行输出信号作为下一个74HC595芯片的数据串行输入信号,第一个74HC595芯片的串行输入信号由单片机提供,最后一芯片的串行输出可供给下一个级联用。所有的74HC595芯片串行输入时钟信号SCK连在一起,平行输出缓存器的数据撷取时钟信号LCK也都连在一起,均有单片机控制实现芯片同步动作。如下图引入八片74HC595芯片不考虑控制信号线时,单片机用1根I/O口线就可送64列信号。
74HC595串接串入并出实现列控制
STC15F2K60S2单片机负责读取字模(显示字符所需要的代码),字模通常有专用的软件生成,也可人工编制,得到的字模后存放到单片机内即可。要改变LED点阵显示的内容,只需改变单片机读取到的字模就可以了。LED点阵屏工作原理过程前面已叙述过。单片机4根I/O口线通过两片74HC138构成的4线-16线译码器依次送行扫描信号,经驱动芯片D4953加到点阵屏相应的行上,选中某一行时,单片机控制八片74HC595同时把对应的64列信号并出,64位列信号在显示上一行时由单片机控制依次串入。移动显示时,单片机控制把前一时间段显示的列信号内容移位后再以同样的方法送出。
本例设计的是16×64 LED点阵屏,硬件电路不改动的情况下,两个16×64 LED点阵屏级联就可得到16×128 LED点阵屏。要改变只是单片机每次要串出128个列信号。理论上能级联很多点阵屏,但实际级联的点阵屏受单片机串出数据速度和串入并出芯片传送速度影响。级联多,单片机串出数据速度可能跟不上,这也是本例选择STC15F2K60S2的原因,当然也可选更好的处理器。改变变单片机字内字模可让单片机读U盘、存储卡,也可通过Wi-Fi和蓝牙实现。这样LED点阵屏显示内容更加丰富多彩,适用性更广。[4]
5 结 论
LED点阵屏性价比高,市场广阔,本设计性能可靠,通用性强,实用价值高。研究内容为研究LED全彩屏打了一个坚实的基础。
参考文献:
[1]陈亚男,田嘉欣,杜佳慧.基于单片机的LED电子显示屏控制系统的设计[J].中国市场,2016(6):56-57.
[2]黄桂梅,刘永立.小型LED点阵屏实用软件设计与实现[J].计算机测量与控制,2011,19(12):3165-3168.
[3]刘成惠.基于STC12C5A60S2单片机的LED点阵屏设计[J].科技经济市场,2016,20(2):35-37.
[4]卢超,徐安娜,曹煜琪,等.基于蓝牙技术的LED阵屏显示系统的设计与实现[J].陕西理工学院学:自然科学版,2015,31(1):31-36.