单片机控制的霓虹灯控制器讲解.docx
- 文档编号:11536093
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:14
- 大小:384.54KB
单片机控制的霓虹灯控制器讲解.docx
《单片机控制的霓虹灯控制器讲解.docx》由会员分享,可在线阅读,更多相关《单片机控制的霓虹灯控制器讲解.docx(14页珍藏版)》请在冰豆网上搜索。
单片机控制的霓虹灯控制器讲解
单片机控制的霓虹灯控制器
学生:
xxx指导教师:
xxx
内容摘要:
本设计采用AT89C51单片机实现对霓虹灯的控制。
系统的设计由霓虹灯的硬件电路设计和软件设计两部分组成。
硬件设计分为发光二极管的设计、复位电路、时钟电路、按键设计、外设接口设计五个模块组成,按键主要功能是实现人为控制霓虹灯,实现单片机控制显示不同的图案以及想要的各种花样闪烁,并能实现各种闪烁模式的互相切换。
软件部份是运用Keil软件基于C语言进行编写的程序。
该系统具有电路结构简单、易操作等优点,具有较强的实用价值。
并且有较强的实用性,操作简单,扩展功能强。
如需要增加功能可方便更改程序,灵活性强。
关键词:
单片机 发光二极管 花样闪烁 霓虹灯
theneonlightcontrollerbasedonsinglechip
Abstract:
ThisdesignusesAT89C51single-chipmicrocomputertorealizethecontrolofneonlights.Thedesignofthecontrollerincludingthehardwarecircuitdesignandsoftwaredesignoftheneonlights twoparts.Hardwaredesignisdividedintothelightemittingdiodedesign,resetcircuit,clockingcircuitdesign,keydesignandperipheralinterfacedesign.ThemainfunctionofKeysistorealizetheanthropogeniccontrolofneonlights,realizesingle-chipmicrocomputercontroldisplaydifferentpatternandwantallkindsofpatternflicker,andcanrealizeallkindsofscintillationmodeswitchtoeachother.ThesoftwarepartistouseKeilsoftwarebasedonClanguageprogram.Ithasstrongpracticality,simpleoperation,andthefunctionexpendedisstrong.Ifweneedtoincreasethefunction,itwillbeeasilychangedprocedures,andithashighadaptability.
Keywords:
single-chiplightemittingdiodeflickerneonlights
单片机控制的霓虹灯控制器
前言
霓虹技术,在中国已经发展了近百年的历史了,在新的霓虹技术,在新的竞争形势下,霓虹技术发展到今天,在中国目前最常用的霓虹技术有四种,即中国的日本制作工艺、美国制作工艺和俄罗斯制作工艺、传统制作工艺。
它们有各自的特征:
日本制作工艺,以立式炮火进行对接和弯制一次成型,送气以脚踏为主,主要分布在北京;美国制作工艺是以长排火技术进行弯制,主要特征是九孔和五孔对火进行焊接,分布在广州等地区;而俄罗斯制作工艺的平台是以耐火水泥板为主,特征是直接烧制成型,主要在东北地区;中国传统制作工世,灯管以立式炮火进行弯制,特征是以铜制独孔对火焊接灯头,主要分布在上海,甚至覆盖了全国。
目前,比较先进的是可以进行远距离遥控霓虹灯变化的控制器,遥控、定位、监视、监控等是其技术原理依据。
在现在的商业时代,霓虹灯的的用处也越来越广,而且越来越商业化,出现了很多新型霓虹灯产业。
在商业领域的招牌、门面、字幕广告、酒店酒吧、建筑物轮廓等都有霓虹灯闪烁的装饰身影,它们都是用来引来消费者的关注,促进产业的发展。
在一个灯红酒绿的城市,霓虹灯是这个城市繁华的象征,是这个城市经济发展的标志。
但是,传统的霓虹灯采用的是玻璃灯管,在包装运输时存在不易制作、安装及易破碎等缺陷。
很久以前,人们就期望能用不同颜色的小灯泡安装在电线里用于装饰和照明。
如今,这种灯已遍布各国的各个城市,走进了大街小巷,走进了我们的生活中,所以霓虹的发展是很有前景的。
1霓虹灯的设计
1.1设计任务
设计一个单片机控制的霓虹灯控制器,通过程序控制单片机,让26个发光二极管闪烁,形成各式各样的花样和图案。
1.2总体设计方案
1.2.1单片机芯片的选择
从霓虹灯的成本上考虑,本次设计选择成本校低的AT89C51,此芯片功能强大,足以用于本次设计
1.2.2接口设计
从使用者是否方便使用的角度考虑,本次设计的接口设计为USB接口,利用PL2303HX来实现此功能,使用者可以在任何有USB接口的电器上使用此霓虹灯控制器,如电脑等。
1.2.3方案设计
霓虹灯的设计选用的器件是发光二极管,将26个不同颜色的发光二极管连接在AT89C51单片机上,但是AT89C51单片机只有40个引脚,如果每个引脚上连接一个发光二极管,对二极管逐个控制,则需要26个引脚,不能实现资源的合理利用。
考虑到引脚有限,所以利用LED显示器里的动态扫瞄的方案,可以在P0的每个引脚上接4个发光二极管,然后再通过P2的前4个引脚各连接一个PNP三极管,通过给三极管低电平来扫瞄P0端口的发光二极管,类似于单片机中LED显示器的扫瞄方法来实现位选码和段选码。
2设计原理
2.1单片机AT89C51
AT89C51是美国ATMEL公司生产的低电压,是一种带4K字节可编程、可擦除的只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,是高性能CMOS8位的微处理器,俗称单片机。
该器件是采用ATMEL的高密度、非易失存储器制造技术进行制造的,该单片机与工业标准的MCS-51指令集和输出管脚是相互兼容的。
因为是将多功能的8位CPU和闪烁存储器组合在单个芯片中,AT89C51是一种高效微控制器,为嵌入式控制系统提供了很多高灵活性且低成本的方案。
AT89C51的引脚如图2.1-1所示,功能介绍如下:
●VCC:
接+5V,电源端,为单片机提供电能。
●GND:
接地端口。
●RST:
复位信号的输入。
当该引脚连接振荡器复位器件时,要让RST脚保持两个机器周期以上的高电平时间。
●XTAL1:
接外部晶体的一个引脚,CHMOS单片机采用外部时钟信号时,时钟信号由此引脚引入。
●XTAL2:
接外部晶体的一个引脚,HMOS采用外部时钟信号时,外部时钟信号由此引脚引入。
●ALE/PROG:
地址锁存允许。
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址。
●EA/VPP:
EA=0时,单片机只访问外部程序存储器;当EA=1时,单片机访问内部程序存储器;在AT89C51单片机片内EPROM编程期间,此引脚引入21V编程电源VCC。
●P0口:
为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。
其内部缺少一个上拉电阻。
●P1口:
是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
●P2口:
为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流。
P3口:
P3口为双功能静态端口。
●P3口:
和P1、P2端口一样,是一个内部提供上拉电阻的8位双向I/O口,但与P1、P2口有区别,它有自己独有的特点,就是P3口可作为AT89C51的一些特殊功能口,如用于定时器和计数器等。
对于本次设计,我只选用了P0和P1端口作为数据输入输出端口,用于控制霓虹灯的发光二极管的控制引脚。
图2.1-1AT89C51引脚
2.2芯片PL2303HX
随着电子技术的不断更新发展,PL2303HX广泛用于电子产业,用此芯片连接而成的USB接口已成为外设的连接标准。
芯片PL2303HX的引脚如下图2.2-1所示,特征介绍如下:
◆对USB1.1协议完全兼容。
◆能对输出电压进行调节,能满足不同电压的应用。
◆两个GPIO端口。
◆SSOP小封装的28个引脚。
◆具有外部的流控制功能。
图2.2-1PL2303HX引脚
3霓虹灯的硬件设计
硬件设计分成三个模块,分别是:
复位控制电路模块、时钟电路模块、发光二极管模块、按键设计模块和外设USB接口模块,下面是对这些硬件设计模块进行详细的介绍。
3.1复位控制电路
单片机在启动运行时都需要进行复位,复位能使CPU和系统中的其他部件都处于一个确定的工作状态,并从这个状态开始工作。
在系统中,有时也会出现不正常显示和不正常运行的情况,并且为了我们方便调试,所以在单片机上需要设计一个复位电路,复位电路主要完成两个功能,即系统的上电复位功能、系统在运行时用户的按键复位功能。
在本次设计中单片机的复位是靠外部电路来实现的,AT89C51单片机有一个复位引脚RST,有效电平是高电平。
若RST保持高电平,单片机便保持复位状态。
此时,ALE/PSEN、P0、P1、P2和P3口都输出的是高电平。
若RST变成低电平后,则单片退出复位状态,CPU开始正常工作。
需要注意的是,复位操作是不会影响到片内RAM工作的内容。
复位电路的基本功能是控制器上电时提供复位信号,直至控制器的电源稳定后,撤销复位信号,单片机才进入正常工作状态。
图3.1-1为基本RC复位电路,其电路为高电平复位有效。
图3.1-1复位控制电路
3.2时钟电路
单片机的工作是在统一的时钟脉冲的控制下运行,这个时钟脉冲信号是由单片机的时钟电路发出的,单片机的时钟产生有内部时钟和外部时钟两种,本次设计采用的是内部时钟方式。
此方式是利用芯片内部的振荡器,然后在引脚XTAL1和XTAL2两个引脚上连接一个频率为11.0592MHZ的晶体振荡器,就构成了单片机的自激振荡器,发出的脉冲直接送入内部的时钟电路。
外接晶振时,C4和C5的值通常选择为15PF—33PF之间,电容对频率有微调作用。
时钟控制电路图如图3.2-1所示:
图3.2-1时钟电路
3.3发光二极管的设计
如图3.3-1的发光二极管的电路是本次设计的最重要的硬件设计部份,26个发光二极管全部连接在P0端口的8个引脚上上的引脚,P0_6和P0_7两个引脚上各自连接一个发光二极管的阴极,二极管的阳极直接与电源正极相连,通过给这个引脚低电平,就可以让这两个二极管闪烁。
然后将剩下的24个发光二极管分成6组,P0_0到P0_5引脚分别与4个并连的发光二极管的阴极相连,然后在P1_2到P1_5引脚上各自连接一个PNP型三极管,将4个三极管的集电极与每组发光二极管的其中一个的阳极相连,然后通过控制P1端口的三极管来向24个发光二极管提供高电平,通过P0端口向发光二极管提供低电平,实现26个发光二极管逐个点亮,以便于发光二极管闪烁出各种图形。
图3.3-1发光二极管电路
3.4外设USB接口
单片机的外设有两种方法:
串口连接和USB接口,串口连接的外设是很不方便,但USB接口相对于串口来说,有更多的优点,如:
方便易用,数据传输速度与串口连接相比校快,可以连接多个设备等,已经被广泛使用。
如图3.4-1是本次设计的外设电路,可以实现控制器与电脑通信,用于向霓虹灯提供电源和程序下载等功能,用PL2303HX芯片实现USB接口。
图3.4-1USB接口
3.5按键设计
在单片机应用系统人机交互中,常需要配置一些开关,实现向单片机内部输入数据,传送命令信号等功能,是单片机工作中进行人工干预系统的主要手段。
开关具有“断开”和“闭合”两种稳定状态。
通过简单电路可将这两种状态转换为逻辑电平的“1”和“0”,从而在接口电路的控制下被CPU所检测,常见的按键开关有按钮开关和触摸开关。
本次设计采用的是两个独立按键,独立式按键电路设计时,每个按键与P1端口的一个引脚相连,另一端接地。
无键按下时,P1的2个I/O口均通过电阻接高电平,信息为“1”;有键按下时,将使对应的I/O口通过该键接地,信息为“0”。
通过这两个按键对霓虹灯进行人为控制。
按键的硬件设计如图3.5-1所示。
图3.5-1按键的电路
4霓虹灯的软件设计
本次设计的软件部分分成了两个模块:
延时函数模块和主函数模块,程序设计简单易懂。
4.1延时函数
此延时函数是用于主函数调用,实现发光二极管的闪烁的功能,延时为0.2S。
程序如下:
voiddelay02s(void)
{
unsignedchari,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
}
4.2按键控制程序
程序设计效果是如果CPU检测到K1按下,则霓虹灯将分成上下两个部分交替闪烁;如果CPU检测到K2按下,则霓虹灯将会整体被点亮,一起闪烁。
因为按键按下到闭合后,会再产生一个负的矩形脉冲,但由于在按动按键时,总会有一些抖动,所以为了克服按键触点机械抖动所导致的检测误判,必须采取去抖动措施,可从硬件和软件两方面着手,但因为软件去抖较为简单,而且降低了成本,所友本次设计采用软件去抖动。
软件上采取的措施是在检测到有按键按下时,执行一个10ms左右的延时程序,再确认该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平,则确认该键处于闭合状态,从而消除抖动的影响。
流程如图4.2-1所示。
图4.2-1按键去抖
4.3霓虹灯控制程序
主程序主要负责各个模块的初始化工作:
建立两个字符型数组,数组a和数组b;初始化P0和P1端口;用while循环语句对P0和P1端口进行动态扫瞄,每扫瞄一次,对P0和P1端口进行初始化,输入0XFF的值,用于发光二极管的消隐,提高霓虹灯的闪烁质量。
主函数中,每点亮一次发光二极管就调用一次延时函数,通过两个字符型数组:
a[]={0x7f,0xbf,0xdf,0xef};b[]={0x0f,0xf3,0xfc,0x37,0xcb,0xF7,0x9f,0x6f,0xfb}分别对P1和P0端口进行扫瞄,实现霓虹灯先从上往下、从左往右、从右往左等顺序轮流点亮闪烁。
如图4.3-1是该程序的流程图:
图4.3-1程序流程图
5结束语
本次设计是基于单片机的霓虹灯控制器,控制系统采用AT89C51单片机,发光二极管的设计为主要硬件设计,成功实现霓虹灯的硬件电路与软件程序设计。
实现了在单片机的8个引脚上单独点亮26个不同颜色的发光二极管,可从上往下再从右往左等顺序依次闪烁,实现霓虹灯的花样闪烁。
在本次设计中,在实现霓虹灯花样闪烁的情况下,还添加了两个独立按键,对霓虹灯进行人为的控制,为使用者提供了更多的选择,我们可以按照自己的意愿选择霓虹灯的闪烁方式。
本次设计充分锻炼了我的动手操作能力,从理论到实践的整个过程,独自完成整个设计,自己学到了更多的知识。
从开始着手设计到设计完成,了解到了设计的整个过程,虽然在设计的过程中遇到了很多的问题,但是通过同学和老师的帮助以及自己的努力之下,将本次设计圆满完成。
在设计的过程中,起初自己的知识只局限于书本上的知识和老师教的知识,在设计方面自己的想法很不成熟,始终想不到方法在单片机上的8个引脚上连接26个发光二极管,并且能实现单独控制每一个发光二极管,通过老师的引导以及自己不断的实践和尝试,想到了单片机中的数码管的动态扫瞄的方法。
在本次设计中,我要感谢我的现代通信原理实验课的孙活老师,是他良好的教学方案,让我学到了更多的知识。
在本次设计当中我获益匪浅,明白了三个道理:
1、学习中要把理论和实践联系在一起,只有实践才能开拓自己的思维;2、在遇到困难时,要保持清醒自己的头脑,看清自己的问题,学会请教别人,学习别人的经验,不要遇到困难就退缩,退缩是永远无法成功的,所以我们要学会有条有理地外理任何的问题和困难;3、学会独立,学会独自完成事情,不要总想着别人来帮自己,自己才能帮得了自己,只有自己亲手做了,才能从中学到更多的知识,才能将知识有效的转换成自己的。
参考文献:
[1]彭介华:
电子技术课程设计指导,高等教育出版社,2008.4,P3-P7
[2]高吉祥、易凡:
电子技术基础实验与课程设计,北京电子工业出版社,2005.6,P21-P30
[3]任为民:
电子技术基础课程设计,中央广播电视大学出版社,2006.12,P7-P15
[4]李群芳、肖看、张士军:
单片机微型计算机与接口技术,电子业出版社,2011.11,P52-P57
[5]马忠梅:
单片机C语言应用程序设计,北京航空航天大学出版社,2005.6,P31-P42
[6]林立:
单片机原理应用—基于Proteus和Keil,电子工业出版社,2009.7,P15-P27
附录1:
设计原理图
附录2:
源代码
用C语言来编程,通过动态扫瞄的方法实现26个不同颜色的发光二极管按照一定的规律轮流闪烁。
#include
voiddelay02s(void);
voiddelay(unsignedcharc)
{
unsignedchari;
for(;c>0;c--)
for(i=122;i>0;i--);
}
voidmain(void)
{
unsignedinti,j;
unsignedcharcodea[]={0xfb,0xf7,0xef,0xdf};
unsignedcharcodeb[]={0xf0,0xcf,0x3f,0xec,0xd3,0xef,0xf9,0xf6,0xdf};
P0=0XFF;
P1=0XFF;
while
(1)//扫瞄
{
if(P1_0==0)
{
delay(10);
if(P1_0==0)
{
while(P1_0==0)
{
p1=0xc3;
P0=0xec;
delay02s();
P0=0XFF;//消隐
p1=0xc3;
P0=0x3e;
delay02s();
P0=0XFF;//消隐
}
}
}
elseif(P1_1==0)
{
delay(10);
if(P1_0==0)
while(P1_0==0)
{
P1=0xc3;
p0=0x00;
delay02s();
P0=0XFF;
delay02s();
}
}
else
{
for(i=0;i<2;i++)
{
for(j=0;j<4;j++)
{
P1=a[j];
P0=b[i];
delay02s();
P0=0XFF;//消隐
}
}
P1=0X0F;
P0=0x00;
delay02s();
P0=0XFF;//消隐
P0=b[3];
delay02s();
for(i=4;i<9;i++)
{
for(j=0;j<4;j++)
{
P1=a[j];
P0=b[i];
delay02s();
P0=0XFF;//消隐
}
}
P1=0X0F;
P0=0x00;
delay02s();
P0=0XFF;//消隐
}
}
}
voiddelay02s(void)//延时
{
unsignedchari,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 控制 霓虹灯 控制器 讲解