当前位置:文档之家› 基于单片机的霓虹灯控制器设计 设计报告

基于单片机的霓虹灯控制器设计 设计报告

题目:基于单片机的霓虹灯控制器设计摘要霓虹灯在现代社会中有广泛的应用,但传统的霓虹灯控制器利用移位寄存器的移位方式,只能实现几种有限的花式,因此市场迫切需要一种低成本高性能的霓虹灯控制器。

本设计基于单片机实现多种花式的霓虹灯控制器。

以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芯片引脚2.2.2外部时钟方式电路本设计中AT89C52使用11.0592MHz晶振,一个机器周期为1us。

XTAL1(19脚)和XTAL2(18脚):外接晶体引脚,XTAL1和XTAL2分别接外部晶振一端。

在晶振的两侧再分别连接两个为30PF 的微调电容,构成稳定的自激振荡器[2]。

具体电路如图3。

.图3 外部时钟电路图2.2.3手动复位电路复位电路分为上电自动复位和按键手动复位,RST引脚是复位信号的输入端,复位信号是高电平有效。

上电自动复位通过电容C4和电阻R1来实现,按键手动复位的实际电路如图4所示(使用Protues仿真在数值选择上有一些区别)。

图4 手动复位电路2.2.4 发光二极管电路LED发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。

其实际的结构图如图5所示。

LED是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。

半导体晶片由三部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子,中间通常是1至5个周期的量子阱。

当电流通过导线作用于这个晶片的时候,电子和空穴就会被推向量子阱,在量子阱内电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。

而光的波长也就是光的颜色,是由形成P-N结的材料决定的。

它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。

由于具有容易控制、低压直流驱动、组合后色彩表现丰富、使用寿命长等优点,广泛应用于城市各工程中、大屏幕显示系统。

LED可以作为显示屏,在计算机控制下,显示色彩变化万千的视频和图片。

图5 发光二极管的结构图在设计中,P0、P1、P2、P3是单片机的I/O口,用来连接LED、数码管和键盘等。

考虑到单片机I/O端口的带负载能力,LED发光二极管采用共阳极的接法连接在P1口,并用820Ω的电阻分压。

只要单片机P1口输出为低电平,对应的发光二极管被点亮。

电路图如图6所示。

图6 发光二极管电路图2.2.5数码管电路LED数码管是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。

LED数码管常用段数一般为7段,有的另加一个小数点。

LED数码管根据LED的接法不同分为共阴和共阳两类,发光原理相同,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。

图7是共阴和共阳极数码管的引脚图。

图7 引脚定义图在仿真设计时,采用四段共阳极数码管(用万能板搭建实际电路时,只有四段数码管,为了保持仿真与实际电路的一致,故采用四段数码管。

实际上,只用到一位显示,所以在画PCB板时,为节省硬件费用,采用一段的共阳极数码管)。

数码管连接在P3口,并给数码管的第四段接上Vcc,当P3口输出共阳极字型码,即可显示出相应的数字。

具体的电路如图8所示图8 数码管电路图2.2.6 键盘控制电路控制部分主要是由独立式按键完成。

采用1个选择模式的自锁开关接在P0.0上,8个按键开关分别接至P2口,用来选择不同的花式。

当自锁开关打开时,为模式一:按下按键开关1,使发光二极管全亮;按下按键开关2,使发光二极管以800ms的速度轮流点亮,再按一下闪烁频率增加,闪烁时间为500ms,再按一下,闪烁频率最快,闪烁时间为200ms,并保持该最大频率,不再增加;按下按键开关3,频率减少,闪烁时间变为500ms,最终变为800ms;按下按键开关4,使发光二极管全闪烁,开始闪烁时间为800ms,再按一下频率增加,与按键2相同。

按下按键开关5,发光二极管全闪烁的时间减少,功能与按键3类似。

按下按键开关6,发光二极管以奇偶两组的形式闪烁。

按下按键开关7,发光二极管从中间向两边依次点亮。

按下按键开关8,发光二极管依次点亮相同颜色的管子,形成闪烁。

按键6、7、8控制下的闪烁时间都为500ms。

当自锁开关闭合时,为模式二:依次按下开关1—8,分别点亮发光二极管1—8,且同时数码管显示对应的数字。

具体电路如图9示。

图9 开关控制电路图2.3 整体硬件电路将各模块电路连接起来,形成完整的硬件电路图。

霓虹灯控制器包括2个部分,即AT89C52主控模块和LED发光二极管。

前者是主控模块,具有按键、复位功能。

后者是受控模块,上面接有8个LED发光二极管[4]。

P0口接阻值为1KΩ的排阻,提高其驱动能力,然后在P0.0上接一自锁开关,通过自锁开关的闭合使P0.0口出现高低电平,从而实现两种模式的切换。

P1口接8个共阳极发光二极管,且串联820Ω的限流电阻。

P2口接8个独立式按键,通过不同键的按下使P2口出现低电平,依次来实现不同花式的选择。

P3口接共阳极数码管,只要输出共阳极字型码,数码管便可静态显示相应的数字。

具体的整体电路如图10所示。

图10 整体硬件电路2.4系统所用元器件本系统硬件设计较为简单,主要由AT89C52单片机、按键式开关9个,自锁开关1个,发光二极管8个,共阳极数码管1个。

所用的元器件较少,具体的元器件清单如表1所示。

表1 元器件清单3.软件系统设计3.1软件系统总体设计方案霓虹灯控制器最大特点在于所有亮灯模式均由软件控制完成。

相关主题