基于单片机的LED显示屏控制电路设计

LED显示屏广泛应用于工矿企业、学校、商场、店铺、公共场所等进行图文显示 , 广告宣传 , 信息发布 。本文设计一种由4个16×16点阵LED模块组成的显示屏 , 由单片机作控制器 , 平滑移动显示任意多个文字或图形符号 , 本电路可级联扩展实现由任意多个16×16点阵LED模块组成的显示屏 。
1 电路设计
控制电路由AT89C51单片机作控制器 , 显示屏由4个16×16点阵LED模块组成 , 每个16×16点阵LED模块由4个8×8点阵LED模块组成 , 用户可根据需要扩展增加任意多个16×16点阵LED模块 。8×8点阵LED模块结构如图1所示 , 共8行8列 , 每个发光二极管放置在行线和列线的交叉点上 , 共64个发光二极管 。当某一列为高电平 , 某一行为低电平时 , 则对应的发光二极管点亮 。
 
单片机P3.0引脚接串入并出移位寄存器74LS164(U10)的串行数据输入端 , 8个74LS164(U10~U17)级联 , P3.1引脚接8个74LSl64的时钟脉冲输入端;8个74LS164分别接8个锁存器74LS373(U18~U25) , 8个锁存器的数据输出端接4个16×16点阵LED模块的行线 , 每个16×16点阵LED模块的行线是独立控制的 。P1.O接8个74LS164(U2~U9)的时钟脉冲输入端 , P1.1接U2、U4、U6、U8的串行数据输入端 , 每两个74LSl64(U2和U3 , U4和U5 , U6和U7 , U8和U9)级联;U2~U9的并行数据输出端接4个16×16点阵LED模块的64条列线 。P1.2接所有74LSl64的清0端 , P1.3接锁存器的锁存控制端 。
 
2 工作原理
本电路利用串行通信口工作于方式0 , 同时利用P1.O和P1.1模拟串行输出 , 来实现LED显示屏字符平滑移动显示 。由于LED模块为16×16点阵 , 所以字符点阵也为16×16点阵 , 即每个字符由32个字节即16个字数据组成 , 每个字数据决定了每列LED点亮的情况 。16×16点阵字符数据由字符点阵提取软件获得 。
首先单片机P1.1串行输出一位二进制位“1” , 经4组74LSl64给4个16×16点阵LED模块的第1列送入一高电平 , 接着由P3.O串行输出4个16×16点阵LED模块的第1列行数据 , 即Y1 , Y17 , Y33 , Y49列的行数据 , 经74LS373锁存后送LED显示屏的行线 , 此时每个LED模块第1列对应的LED点亮 。每列的行数据为1个字数据 , 4列共4个字数据 , 每个字数据首字节在字符点阵数据表中的地址相差32 , 此时每个LED模块显示每个字符的第1列 。接着P1.1串行输出一位二进制位“0” , 经4组74LS164移位后给4个LED模块的第2列送入一高电平 , 再由P3.O串行输出4个16×16点阵LED模块的第2列行数据 , 即Y2 , Y18 , Y34 , Y50列的行数据 , 经74LS373锁存后送LED显示屏的行线 , 此时每个LED模块第2列对应的LED点亮 , 即显示每个字符的第2列 。如此循环 , 依次点亮每个LED模块每列对应的LED , 直到点亮每个LED模块的第16列 , 即依次显示每个字符的各列 。只要每列交替显示的时间适当 , 利用人眼的视觉暂留特性 , 看上去16列LED同时点亮 , 即看上去整个字符同时显示 。然后再从第1列依次扫描显示至16列 , 如此循环多次 , 以确保显示出的字符具有足够的亮度 。
为实现字符平滑移动显示的效果 , 在上面实现的4个字符静态显示一定时间后 , 再次扫描显示时 , 每个LED模块的第1列从每个字符的第2列数据开始扫描显示 , 即第1个LED模块显示第1个字符的第2列、第3列、……、第16列和第2个字符的第1列 , 第2个LED模块显示第2个字符的第2列、第3列、……、第16列和第3个字符的第1列、第2列、…… 。当第三次扫描显示时 , 每个LED模块的第1列从每个字符的第3列数据开始扫描显示 , 即第1个LED模块显示第1个字符的第3列、第4列、……、第16列和第2个字符的第1列、第2列 , 第2个LED模块显示第2个字符的第3列、第4列、……、第16列和第3个字符的第1列、第2列、…… 。如此实现了字符的平滑移动显示 。
3 程序设计
根据以上电路设计及工作原理 , 绘制出本电路的控制程序流程图 。按程序流程图编写出控制程序 , 用Wave或Keil软件调试通过后 , 产生目标代码文件 。
【基于单片机的LED显示屏控制电路设计】 
4 电路仿真
将目标代码文件加入用Proteus软件绘制的LED显示屏控制电路仿真图中的单片机中 , 仿真运行 , 运行结果如图4所示 。
 
5 结语
该LED显示屏控制电路用单片机作为控制器 , 采用串行移位输出方式 , 实现了一行字符的平滑移动显示 , 在实际应用时还应加上相关驱动电路 。本电路可扩展实现由任意多个16×16点阵LED模块组成的LED显示屏显示控制 。经实际应用表明 , 该电路稳定可靠 , 效果良好 。

    推荐阅读