基于STM32单片机的3维LED光立方的设计与实现

2020-05-19 08:40常宏博郝瑞瑞周程李慧丰付丽华
卫星电视与宽带多媒体 2020年3期
关键词:电路设计矩阵按键

常宏博 郝瑞瑞 周程 李慧丰 付丽华

【摘要】本设计为基于单片机的3维LED光立方,由STM32F103VBT6系列单片机、1个74HC154芯片、32个74HC573芯片、8个APM4953芯片等部分组成。用单片机对芯片的信号传输的方式来进行对4096个LED的控制。本系统具有灯光绚丽、3D立体特效、效果直观以及时间控制轴等优点,可以实现动画、曲面等复杂的立体图形。

【关键词】3维LED;STM32单片机

几何一直是数学课程教学中的重要环节,其中平面几何可以通过显示器、黑板等媒体直观地呈现出来,但是在立体几何图形的讲解方面,往往会收到媒体的限制,通常采用软件进行模拟的3D展示或者动画展示,虽然可以看到三维效果,但仅限于屏幕展示,依旧是虚拟的效果。使用3D打印机,虽然可以再现三维图形的真实外观和结构,但是受到成本、时间的制约,无法保证实时性。

本设计通过单片机驱动4096个LED,构建了一个16*16*16的三维LED矩阵,通过单独点亮或者熄灭LED,展示出真实的3维图形、图像、或者内部结构,通过程序设计,也可以实现三维空间的动态展示。

1. 系统设计

本设计为一个4096个LED灯光的控制系统,控制对象为16*16*16的LED矩阵,对每个点、每个位置的LED灯的亮灭进行控制。

主控装置以STM32F103VBT6系列单片机为核心,通过单片机向各个芯片传输信号,并由芯片非配给各个管脚,各个管脚输出的高低电平,控制固定的位置LED的亮灭,呈现立体图形的外观及内部结构,同时加入时间轴,可以制作动画类等立体图形,并用时间控制下一面出现的图形,使动画展现的更加惟妙惟肖,使观察者观察的更加简单易懂。

系统的总体设计分为硬件和软件设计两方面,系统结构如图1.1所示。

2. 硬件电路设计

硬件电路由主控板和执行装置组成。

2.1 工作原理

主控板由6个部分构成,包括:MCU核心模块、通信模块、LED驱动芯片组、LED矩阵、系统电源、红外遥控器,各部分功能如下:

(1) LED驱动芯片组由1个74HC154译码器、32个74HC573锁存器和一个APM4953电源管理器组成;

(2) 红外遥控器,作为信号发生器,用于显示效果的切换;

(3) 系统电源为12V直流电源,用于对单片机、通信模块、LED驱动芯片组及LED矩阵的供电;

(4) LED矩阵按照功能划分为16层,每层由16*16个LED组成,各LED均为独立供电。

电路工作原理及工作流程如下:

2.1.1 单层的LED电源控制

STM32F103VBT6的4个I/O口作为LED单层电源控制管脚,工作时根据需要输出高低电平,电源控制管脚作为74HC154译码器的输入端口;译码器的输出为16个脚,输出的电平受控于单片机,同时在ARM4953的配合下,对每层的平面LED组高电平。

2.1.2 单个的LED控制

32个74HC573锁存器,两两相结合芯片使能端口和输入端口接在一起接入单片机,因此共有16*16个搭配方式,给予底层256个端口低电平,指定的LED处于导通状态,因此被点亮。

工作时,根据STM32F103VBT6中編写的程序,控制指定的LED灯的亮灭。

2.2 主控电路设计

主控电路包括:供电电路ARM4953,单片机STM32F103,译码电路SL74HC154,锁存器SL74HC573,无线遥控接收电路。

2.2.1 供电电路设计

首先通过APM4953模块,用LM78系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。将DC12V转为DC5V, DC5V给予每一层LED灯供电。

2.2.2 单片机模块电路设计

本模块采用的是单片机最小系统的集成模块,该最小系统由STM32F103系列单片机芯片、供电电路、时钟电路、复位电路、启动配置电路和程序下载电路构成。

2.2.3 SL74HC154译码器电路设计

关于数据分配采用74HC154译码器,配合ARM4953来控制16个层面,从而供给每一层LED组的5V高电平。

2.2.4 SL74HC573锁存器电路设计

74HC573包含八路3态输出的非反转透明锁存器,是一种高性能硅栅CMOS器件。在本设计中,74HC573锁存器工作时,使用两两组合的方式,将其使能端和输入端16个引脚,合并接入单片机,以单片机编码方式控制最下面256个引脚的输入。

2.2.5 无线遥控接收电路设计

在遥控方面,选用模块为HX1838作为接收机,接收来自遥控器的指令,实现如下四个功能:上一帧、播放/暂停、下一帧、循环,控制设备播放图案。当按键按下时,单片机接收相应按键产生的编码,计算出键值,根据键值确定用户按下的某一个键,完成控制设备的运转。

2.3 执行装置

执行装置4096个LED灯,分为16层,每层为16*16个,单片机控制各个LED灯的亮灭,使整个系统的LED矩阵有规律的亮灭,形成指定的图案、图形和动画效果。

每个LED灯既可以单独亮,也可以联合其他的LED灯一起亮,实现立方体、信号波形、线条组合、自定义2D、3D等图形等。

3. 软件程序设计

3.1 无线接收程序设计

无线接收模块采用HX1838,每当按键按下后模块接收到不同的编码,程序获取一个按键的六个高低电平信息,得到按键的地址码,检验遥控识别码ID地址,将获取的地址码进行二进制转换,获得键值,执行键值下面的指令,从而控制图形的变换。

3.2 按键程序设计

按键一端接入高电平,接入单片机管脚,当按键按下后,单片机读取管脚电平变高,执行:上一帧、播放/暂停、下一帧、循环等指令。

3.3 LED驱动程序设计

驱动某一个LED需要译码器74HC154和ARM4953。

74HC573相互搭配控制,其中ARM4953控制输出5V电压,74HC154芯片4个引脚接入单片机,利用二进制编码方式产生16个输出,使ARM4953固定给予光立方某一层5V电压,同时32个74HC573芯片使能端口两两接到一起,同时两个芯片输出端接8个LED为一区,单片机控制使能某一区的芯片使能,进而可以给予区域中8个LED低电平,从而点亮指定的LED灯

3.4 通信程序设计

通信模块采用USB-UART模块CH340,用于与PC机的通信,通信方式为串行通信,实现单片机程序的下载和升级、接收用户端发出的数据包进行编译,解码为程序代码,从而点亮LED。

4. 结论

本设计系统硬件重点使用STM32VBT6、SL74HC154、SL74HC573。在软件设计方面,控制LED灯的闪烁,和各个矩阵的拼装。

本设计充分考虑了实用性和便捷性,具有如下特点:

4.1 在教学方面

LED矩阵灯光组,可以显示一维的点,二维的平面和线,三维的结构、曲线等,既可以适用于中小学的立体几何教学,也可以用于大学阶段的高等数学中积分过程展示、双曲面/线的展示,专业的机械制图的三视图、通信技术中的信号处理等展示。

4.2 在可视化方面

具有效果直观,生动有趣的特点,简单易懂的立体成像将立体的各个方面展现的淋漓尽致,切面横截面,双曲面,信号传递。

4.3 在实用性方面

LED矩阵灯光组,显示图案、图形的效果优美,适用于各种装饰,灯光效果物品,同时立体成像性能好,可以用于灯具的照明灯。

作者简介:常宏博、郝瑞瑞、周程、李慧丰沈阳工学院,学生。付丽华(通讯作者),辽宁人,沈阳工学院,教师,副教授。

猜你喜欢
电路设计矩阵按键
非触勿动 秒治键盘误触
Multisim仿真软件在电子技术专业教学中的应用
多项式理论在矩阵求逆中的应用
基于实验箱和Matlab相结合的信号与系统实验的改革
未来的笔
矩阵
矩阵
矩阵
其实真的很简单教你轻松关闭WP8.1手机按键灯
计算器