51单片机的光立方设计毕业设计说明书

目 录
引言 5
一、工作原理 6
二、主要元件 7
2.1、STC12C5A60S2 7
2.2、ULN2803 7
2.3、74HC573 8
2.4、LED灯 8
三、硬件设计 9
3.1、主控模块 9
3.2、驱动模块 10
3.3、显示模块 11
四、软件设计 13
4.1、主程序的设计 13
4.2显示程序的设计 14
五、调试与分析 16
5.1、硬件调试 16
5.2、软件调试 17
5.3、测试结果 17
六、总结 18
七、附录 19
7.1、元件清单 19
7.2、原理图 20
7.3、程序 22
八、参考文献 40
九、致谢 41
引言
第三次科技革命的到来,促进了电子行业迅速发展,电子产品已经成为我们生活中的重要组成部分。随着科技的快速发展,人们生活水平不断提升,传统的平面画面显示逐渐被3D立体显示所替代。
自从2009年国庆联欢晚会上“发光树”的展示,光立方开始进入人们的视野,受到人们的喜爱。因为它超强的立体感,色彩绚丽的画面,显示方式的多样化,所以越来越受到电子爱好者的追捧。这使得光立方制作工艺和编程技术更为完善,不但具备学习价值,而且具有了商业价值。它立体化、多样化的显示特点使其能够广泛应用于装饰显示和信息传媒,同时也促进了显示技术的发展和进步。本文就针对LED灯的利用,制作了一套光立方的显示系统,一个完整的光立方由硬件部分和软件部分两大块组成。
 *好棒文|www.hbsrm.com +Q: ^3^5`1^9`1^6^0`7^2# 
> 一、工作原理
本论文设计的光立方使用动态扫描的方式进行扫描,再利用人眼视觉的暂留现象,实现静态文字符、汉字以及图案的显示,也能够利用向左移动、向右移动、循环等方式实现动态显示。光立方的画面显示原理就如同老式的电影放映机一般,只要每一秒显示的画面超过24帧,那么我们肉眼看起来就是一幅动态的画面。同时本论文设计的光立方通过ULN2803达林顿管和74HC573锁存器控制3DLED点阵屏,每一盏LED灯管都是由行驱动器和列驱动器共同控制亮灭,如图1所示,只要延时0.2秒左右即可使3DLED点阵显示屏动态展示。我们只要用C语言编写的程序,展示光立方图案多样性的变化。
图1 组成框图
二、主要元件
2.1、STC12C5A60S2
因为光立方的程序量比较大,对于代码储存空间要求高,所以采用STC12系列的STC12C5A60S2单片机,选择的理由:
1、抗干扰能力强;
2、芯片内部集成度高,自身带有复位功能;
3、运转速度快。比80C51单片机快8-12倍,适合快速扫描的光立方。
4、使用第六代加密技术。
2.2、ULN2803
因为方立方需要512个LED灯,对于电流量的需求较大,所以选择用ULN2803达林顿管。ULN2803采用AP=DIP18,AFW=SOL18封装方式,如图2所示,具有500MA 50V 的驱动能力。ULN2803芯片是由8个NPN达林顿晶体管组成,输出负载加在电源和输出口上,其引脚说明如图2所示。
图2 ULN2803芯片
表1 ULN2803管脚
引脚 1-8脚 11-18脚 9脚 10脚
说明 输入端 输出端 接地 电源
0V 截止
5V 饱和
低电平 导通
2.3、74HC573
因为在刚学习数字电路时就接触到了74HC573锁存器,对这个芯片的比较了解,所以选用74HC573芯片作为驱动模块的锁存。74HC573锁存器的引脚功能如下表2所示。
74HC引脚功能表
引脚号 符号 名称及功能
1脚 OE 3态输出使能输入(低电平)
2-9脚 Do-D7 数据输入
12-19脚 Qo-Q7 3态锁存输出
11脚 LE 锁存使能输入
10脚 GND 接地(OV)
20脚 VCC 电源电压
2.4、LED灯
光立方的制作需要512个LED灯,因此LED灯的选择显得尤为重要,它决定了光立方的显示效果。出于整体的美观和视觉效果,我选择了方形LED灯。如图3所示。
图3 LED灯效果图
三、硬件设计
光立方的硬件系统包括主控模块、驱动模块和显示模块三大电路系统,如图4所示,STC12系列的STC12C5A60S2单片机为本设计的核心控件。其中主控模块负责数据的传输和驱动电路的控制;驱动模块可以分成行驱动电路和列驱动电路两种,用行列控制3DLED立方体显示;显示模块实现静态文字符、汉字以及图案的显示。
图4 光立方硬件电路
3.1、主控模块
主控模块是光立方的核心电路,它由STC12C5A60S2单片机、振荡电路、复位电路、电源和输入输出设备等组成,如图5所示。因为需要将512个LED灯驱动,程序量大,所以采用STC12C5A60S2 单片机,这个单片机具有60K 的外部程序储存空间,完全够程序代码的储存,不会由于程序的溢出导致无法编译,适合高速扫描的光立方。
图5 最小单片机系统
3.2、驱动模块
驱动模块通过ULN2803达林顿管和74HC573锁存器控制3DLED点阵屏,如图6所示,ULN2803采用AP=DIP18,AFW=SOL18封装方式,具有反向输出特性,也就是当输入端为低电平时,输出端导通工作。
驱动能力为500MA50V,完全能够提供512个LED灯的电流,不但体积很小,而且功能非常强大。8个NPN型ULN2803达林顿管连接在阵列适合的逻辑接口电平数字电路和较高的电流/电压。
图6 行列驱动
3.3、显示模块
显示模块是依靠动态扫描方法完成扫描显示,各列都安装列驱动器,各列的所在行共同使用一个行驱动器,如图7所示。通过STC12C5A60S2单片机输出的行选通信号,从第一列起,逐步对各列进行扫描选通。
根据74HC573锁存器的特性可以把数据锁存并输出。这样便能够传送出8列的数据,以实现数据显示的目的。再根据各层面要显示的数据,使用ULN2803达林顿管来控制相对应层面的电平,当列与层面的数据相互结合时显示我们编写的文字图案。
图11 效果展示图
六、总结
毕业设计作为大学生毕业前的最后一个重要环节,不但是对我们在学校所学专业知识的全面总结与综合应用,而且为我们走向社会面向未来做准备。我通过这段时间的努力,从选题到查找资料到最后完成毕业设计,都让我受益匪浅。不仅在理论上有了很大的提升,还锻炼了自身的动手能力。
PCB版图

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/1945.html

好棒文