基于单片机的霓虹灯控制器设计 设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目:基于单片机的霓虹灯控制器设计
摘要
霓虹灯在现代社会中有广泛的应用,但传统的霓虹灯控制器利用移位寄存器的移位方式,只能实现几种有限的花式,因此市场迫切需要一种低成本高性能的霓虹灯控制器。本设计基于单片机实现多种花式的霓虹灯控制器。以AT89C52单片机为控制核心,使用独立式按键实现对霓虹灯的控制。该系统主要由单片机的主控部分、键盘输入部分和LED 显示部分组成,运用I/O口输出的信号驱动发光二极管和数码管,使其产生有规律的闪烁和移动。该控制器电路实现简单,成本低,具有较高的性价比。
关键字:霓虹灯;AT89C52;发光二极管;数码管
目录
1.设计任务 (1)
1.1 设计目的和意义 (1)
1.2 设计任务与要求 (1)
2.硬件系统设计 (2)
2.1总体设计方案 (2)
2.1.1设计思路 (2)
2.1.2方案论证与比较 (2)
2.2 具体电路设计 (3)
2.2.1单片机A T89C52简介 (3)
2.2.2外部时钟方式电路 (4)
2.2.3手动复位电路 (4)
2.2.4 发光二极管电路 (4)
2.2.5数码管电路 (6)
2.2.6 键盘控制电路 (7)
2.3 整体硬件电路 (8)
2.4系统所用元器件 (8)
3.软件系统设计 (10)
3.1软件系统总体设计方案 (10)
3.2程序流程图 (10)
3.2.1模式一子程序 (11)
3.2.2模式二子程序 (11)
4.调试及仿真 (12)
5.总结 (13)
5.1本系统存在的问题及改进措施 (13)
5.2心得体会 (13)
参考文献 (13)
附录1 霓虹灯实物图 (14)
附录2霓虹灯PCB板图 (15)
附录3 程序清单 (16)
1.设计任务
1.1 设计目的和意义
随着时代的进步,霓虹灯渐渐进入了人们的生活,如大型电子广告牌、汽车车灯、指示牌和工业控制的控制面板等都有霓虹灯的应用。但目前市场上的霓虹灯控制器能够实现的花式有限,且价格较贵。因此,设计一种性价比高,易于操作的霓虹灯控制器尤为重要。
通过对霓虹灯控制器的设计,训练对单片机、电子技术等内容的综合应用能力。主要培养学生运用所学的知识来分析与解决问题的能力,并巩固和深化课堂知识。了解霓虹灯的硬件电路,掌握单片机编程的基本设计和分析方法。
1.2 设计任务与要求
设计任务:基于单片机设计一种霓虹灯控制器。
基本要求:利用单片机控制霓虹灯的点亮;通过键盘的控制,实现霓虹灯的全亮、不同颜色灯的点亮、霓虹灯的轮流点亮闪烁、全亮闪烁等;其中闪烁的频率可调。
扩展要求:实现霓虹灯其他花式的点亮,使用数码管显示闪烁的时间、显示哪个发光二极管点亮。
2.硬件系统设计
2.1总体设计方案
2.1.1设计思路
题目要求设计一个霓虹灯控制器,使发光二极管以不同的样式点亮。控制部分由单片机完成,通过独立式按键,选择不同的点亮方式,然后单片机将控制信号传输给发光二极管和数码管,从而完成不同的显示要求。在本次设计中,硬件部分由单片机系统、LED发光二极管、独立式按键和数码管组成[3]。原理图如图1所示。
图1 霓虹灯控制器原理图
2.1.2方案论证与比较
(1)主控芯片方案选择
选择AT89C52单片机,这种型号比较常用,使用通用的51单片机语言,且价格便宜。该单片机有四组I/O口P0、P1、P2和P3,用来连接LED、数码管和键盘等,I/O 口的数量符合本设计的要求。内部还有8K的RAM足以满足本设计的程序容量,无需扩展外部存储器。
(2)发光二极管电路设计方案论证与选择
方案一、采用矩阵式分布。利用单片机的P1口做行选信号,P2和P0口做列选信号,128个LED发光二极管构成8行,16列的矩阵。此方案能单独控制每一个发光二极管,也可单独控制每行或每列的发光二极管,从而形成丰富的图案或花样。但所需要的发光二极管数量很多,硬件成本提高。
方案二、利用单片机的P1口来接8个发光二极管,用几个发光二极管也可实现多种花式。考虑单片机I/O口的驱动能力,故发光二极管采用共阳极方式连接,只要输出低电平,即可点亮发光二极管,易于实现。综上所述,选择方案二。
(3)键盘控制电路设计方案论证与选择
方案一、采用按键式开关,设计一个4×4的矩阵键盘,节省了单片机的I/O口,但需要的按键过多,会造成硬件上的浪费。本设计中单片机的I/O口足以实现所有功能,使用键盘数量较少的独立式按键即可。
方案二、采用8个独立式按键,检测按下后的低电平,即可实现控制信号的检测,需要的按键少,且程序实现简单,故采用方案二。
(4)数码管电路设计方案论证与选择
方案一:采用LCD来显示发光二极管的闪烁时间和相应二极管点亮的数字,清晰明了,但LCD价格较贵,不宜采用。
方案二:采用共阳极数码管,只要I/O口输出共阳极字型码,即可点亮数码管,不需要驱动电路,设计简单,降低成本。初步采用四段的共阳极数码管,显示出闪烁时间与数字,经实验最终使用一段数码管。综上所述,采用方案二。
2.2 具体电路设计
2.2.1单片机AT89C52简介
AT89C52单片机内部含有8KB可重复编程的Flash存储器,可进行1000次擦写操作。全静态工作为0~33MHz,有3级程序存储器加密锁定,内含有128~256字节的RAM、32条可编程的I/O端口、2~3个16位定时器/计数器,6~8级中断,此外有通用串行接口、低电压空闲模式及掉电模式[1]。AT89C52在内部采用40条引脚的双列直插式封装,引脚排列如图2所示。
图2 AT89C52芯片引脚