基于单片机的节日彩灯设计六种状态.docx
- 文档编号:26095440
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:15
- 大小:271.53KB
基于单片机的节日彩灯设计六种状态.docx
《基于单片机的节日彩灯设计六种状态.docx》由会员分享,可在线阅读,更多相关《基于单片机的节日彩灯设计六种状态.docx(15页珍藏版)》请在冰豆网上搜索。
基于单片机的节日彩灯设计六种状态
《
吉林农业大学
工程技术学院
单片机课程设计(论文)
设计(论文)题目
基于单片机的节日彩灯设计
】
姓名:
学号:
学院:
专业:
年级:
指导教师:
$
2014年12月20日
摘要1
一、绪论2
LED彩灯控制器概述2
LED彩灯控制技术状况2
本设计任务3
二、系统硬件设计3
单片机最小系统设计3
LED彩灯显示电路设计4
按键控制电路设计5
整体电路6
三、系统的软件设计7
按键扫描子程序设计8
主程序设计8
四、系统调试与测试结果分析8
系统调试8
测试结果及状态分析9
结论10
参考文献11
附录1程序12
附录2系统仿真电路图16
摘要
本设计用单片机89C52结合LED制作一个节日彩灯,它由一块89C52组成,通过逐次扫描其中一块的~口,从而依次实现彩灯轮流顺序点亮、倒序点亮的功能。
关键词
LED灯AT-89C52单片机
ABSTRACT
ThedesignwithAT-89C52combinedwithLEDstomakeaholidaylantern,itconsistsofanAT-89C52.Throughsuccessivescanonepiece~port,whichinturnlanternrotationorderlight,reverselightfunction.
KEYWORDS
LEDlights AT-89C52
一、绪论
彩灯是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。
而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。
在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
LED彩灯控制器概述
新型LED彩灯系统包括两大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)。
彩灯控制器是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;彩灯管是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明管内。
该LED彩灯控制器是一种基于AT89C51单片机的彩灯控制器,实现对LED彩灯的控制。
其以AT89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块。
如果稍微改动控制电路,就可以改变电路的不同工作状态,控制彩灯变幻出不同的闪烁效果。
LED彩灯控制技术状况
彩灯控制电路是由单元模块电路组合而成的,主要以AT89C52单片机为控制中心,并与按键控制电路、时钟电路、复位电路在直流稳压电路的相互作用下进而控制彩灯亮灭的顺序,从而实现多控制、多闪烁方式的LED彩灯循环。
本设计任务
运用AT89C52单片机等元件组成LED节日彩灯控制电路:
按键控制电路、彩灯显示电路、以及单片机最小系统等模块。
并用Proteus等软件仿真,做出其电路仿真图。
二、系统硬件设计
为使该LED节日彩灯控制系统具有更加好的方便性和灵活性,我们对系统的硬件做了精心设计。
硬件电路包括单片机最小系统、LED彩灯显示电路、按键控制电路四大模块。
单片机最小系统设计
要使单片机工作起来,最基本的电路的构成由单片机、时钟电路、复位电路等组成。
单片机最小系统如图1-1所示。
时钟电路:
本系统采用单片机内部方式产生时钟信号,用于外接一个12MHz石英晶体振荡器和2个30pF微调电容,构成稳定的的自激振荡器,其发出的脉冲直接送入内部的时钟电路。
复位电路:
确定单片机工作的起始状态,完成单片机的启动过程。
单片机系统的复位方式有上电自动复位和手动按键复位。
本设计采用手动按键复位,该复位方式同样具有上电自动复位功能。
电路如图1-1所示。
图1-1单片机最小系统
LED彩灯显示电路设计
LED彩灯显示电路实际上是由8个发光二极管和8个电阻构成的电路。
发光二极管与电阻对应串联,然后接在与之相对应的P0口上。
通过软件编程对P2口输出高低电平来实现不同的闪烁花型。
由于发光二极管的导通电压一般为以上,另外,他的工作电流根据型号不同一般为1mA到30mA,电阻选择范围100欧姆~3千欧姆在此我们这里选用560欧姆的电阻。
如图1-2所示。
图1-2LED彩灯显示电路
按键控制电路设计
按键控制电路是由6个按键开关构成的。
他们分别接在单片机AT89C52的P1接口,
—开始,按此键则灯开始流动(由上而下)。
—停止,按此键则停止流动,所有灯为暗。
—上,按此键则灯由上向下流动(一个灯)。
—下,按此键则灯由上向下流动(两个灯)。
—下,按此键则灯由下向上流动(两个灯)。
—下,按此键则灯由下向上流动(一个灯)
如图1-3所示。
图1-3键盘控制电路
整体电路
图1-4整体电路
三、系统的软件设计
单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多控制、多闪烁方式的LED彩灯系统循环点亮的现象,我们还需要告诉单片机怎么样进行控制,即编写程序控制单片机管脚电平的高低变化,来实现发光二极管的明灭。
软件编程是多控制、多闪烁方式的LED彩灯系统中的一个重要的组成部分,是本设计的重点和难点。
下面,我将阐述多控制、多闪烁方式的LED彩灯系统是如何实现8个LED彩灯的循环点亮,来介绍实现流水彩灯控制的软件编程方法。
按键扫描子程序设计
本设计是以单片机AT89C52为核心控制8个发光二极管2种闪烁方式的变换。
程序启动时跳转到键盘判断模块程序中,循环检测直到有按键按下的时候,程序转去相对应按键的彩灯显示的花型模块。
主程序设计
程序启动时跳转到键盘判断模块程序中,此程序里面包含Key1-Key4的按键情况判断,循环检测直到有按键按下的时候,程序转去相对应按键的彩灯显示的花型模块。
四、系统调试与测试结果分析
系统调试
根据系统设计方案,本系统的调试共分为三大部分:
硬件调试,软件调试和软硬件联调。
由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试,最后将各模块组合后进行整体测试。
硬件调试
对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。
软件调试
软件调试采用单片机仿真器及微机,将编好的程序进行调试,主要是检查语法错误。
硬件软件联调
将调试好的硬件和软件进行联调,主要调试系统的实现功能。
测试结果及状态分析
此次系统设计结果较好,经Proteus软件仿真系统的调试,可检测出仿真电路正常;对应按键按下,彩灯出现不同花型,实现了多控制、多闪烁的LED彩灯循环。
经以上仿真测试证实,本设计能实现设计系统要求的预期功能.
结论
本次课程设计以AT89C52单片机作为主控核心,按键控制电路、彩灯显示电路以及单片机最小系统等模块组成的核心主控制电路,利用软件编程烧录程序到单片机来实现对LED节日彩灯的控制。
通过软硬件的仿真调试,对彩灯控制器的运行成果感觉比较满意,它实现了要求达到的目标,实现了多控制、多闪烁方式的LED节日彩灯循环。
本系统可根据操作提示随意变换想要的闪烁方式和控制彩灯的闪烁频率。
让身处其中的群众有一种酣畅淋漓的感觉。
同时本设计具有电路结构简单、易操作、硬件少、体积小、成本低、低能耗等优点,具有一定的实用和参考价值。
参考文献
[1]马秀娟.电工电子实践教程[M].哈尔滨:
哈尔滨工业大学出版社,.
[2]褚南峰.电工技术试验及课程设计[M].北京:
中国电力出版社,.
[3]康华光.电子技术基础[M].第五版.北京:
高等教育出版社,.
[4]曹立军.单片机原理与应用[M].西安:
西安电子科技大学出版社,
附录1程序
#include<>
#include<>
#defineuintunsignedint
#defineucharunsignedchar
sbitkey1=P1^0;//开始
sbitkey2=P1^1;//停止
sbitkey3=P1^2;//由上向下
sbitkey4=P1^3;//由下向上
voiddelay_ms();
voidInit();
ucharscan();
voidshang();
voidxia();
bittimerFLAG;//定时器标志
ucharn;//定时器计数变量
ucharstatus;//运行状态标志
ucharLED=0x7F;//灯的显示缓存
/***************************************************/
//主函数
/***************************************************/
voidmain()
{
ucharanjian;
Init();
while
(1)
{
anjian=scan();
if(anjian==1)
{
status=1;
P0=LED;
TR0=1;//启动定时器0
}
elseif(anjian==2)
{
status=0;
P0=0xFF;
TR0=0;//关闭定时器0
LED=0x7F;
}
elseif(anjian==3&&status==2)
status=1;
elseif(anjian==4&&status==1)
status=2;
anjian=0;
P2=status;
}
}
/***************************************************/
//定时器
/***************************************************/
voidtime0()interrupt1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
if(n++==20)
{
timerFLAG=1;
n=0;
}
if(timerFLAG)
{
if(status==1)
{
xia();
}
if(status==2)
{
shang();
}
}
}
/***************************************************/
//延时函数
/***************************************************/
voiddelay(uchari)
{
ucharj;
while(i)
{
for(j=0;j<250;j++)
;
}
}
/***************************************************/
//初始化
/***************************************************/
voidInit(void)
{
TMOD=0x11;//设置定时器0为工作方式1
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;//开总中断
ET0=1;//开定时器0中断
P0=0xFF;
}
/***************************************************/
//按键扫描
/***************************************************/
ucharscan(void)
{
ucharans;
//if(P1!
=0xF0)
//{
//delay(4);
if(!
key1)
{
ans=1;
while(!
key1);
}
if(!
key2)
{
ans=2;
while(!
key2);
}
if(!
key3)
{
ans=3;
while(!
key3);
}
if(!
key4)
{
ans=4;
while(!
key4);
}
//}
return(ans);
}
/***************************************************/
//由下到上闪
/***************************************************/
voidshang(void)
{
if(timerFLAG)
{
LED=_cror_(LED,1);
P0=LED;
timerFLAG=0;
}
}
/***************************************************/
//由上到下闪
/***************************************************/
voidxia(void)
{
if(timerFLAG)
{
LED=_crol_(LED,1);
P0=LED;
timerFLAG=0;
}
}
附录2系统仿真电路图
"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 节日 彩灯 设计 状态