彩灯控制器设计单片机

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

郑州轻工业学院
微控制器应用课程设计
彩灯控制器设计
院(系):电子信息工程
专业:电信11-01 学号:
姓名:
指导老师:耿鑫
完成时间:2015年1月10日
郑州轻工业学院
课程设计任务书
题目彩灯控制器设计
专业、班级电信11-01 学号 541 姓名
主要内容、基本要求、主要参考资料等:
一、主要内容:
①熟悉单片机应用系统的设计方法和规范,达到综合的目的。

②学习文件检索和查找数据手册的能力。

③学习protel软件的使用。

④学会整理和总结设计文档报告。

二、基本要求:
①以MCS-51系列单片机为核心,设计了一种多花样(至少
8种以上)自动切换的彩灯控制器。

②随着彩灯显示图案的变化,发出不同的音响声。

③彩灯显示的不同形式可由不同进制计数器驱动LED显示
完成。

④音响由选择不同频率CP脉冲驱动扬声器形成。

三、主要参考资料:
①张毅坤等单片微型计算机原理及应用西安西安电子科技大学出版社
②李建忠编著单片机原理及应用西安西安电子
科技大学出版社
完成期限:
指导教师签名:
课程负责人签名:
2015年 1月 17日
目录目录0
摘要1
1 设计要求1
2 设计方案1
3 硬件介绍2
3.1 AT89C51芯片2
3.2 LED彩灯3
3.3 扬声器4
4硬件电路4
4.1上电复位电路4
5 软件设计7
5.1源程序8
5.2调试仿真14
总结15
参考文献16
附录1 元器清单17
附录2原理图17
摘要
电子技术发展迅速,彩灯控制器的种类越来越多,本设计用单片机AT89C51结合LED制作了一种新型的LED彩灯控制系统的设计方法,以AT89C51单片机作为主控核心,利用软件编程实现对LED彩灯和扬声器进行控制,实现多花样自动切换,彩灯显示图案变化的同时,扬声器发出不同的音响声。

本系统具有体积小、硬件少、电路结构简单、用处广、易于制作及容易操作等优点。

关键字:LED彩灯;AT89C51单片机;彩灯控制器;扬声器1 设计要求
以MCS-51系列单片机为核心,设计了一种多花样(至少8种以上)自动切换的彩灯控制器。

随着彩灯显示图案的变化,发出不同的音响声。

彩灯显示的不同形式可由不同进制计数器驱动LED显示完成。

音响由选择不同频率CP脉冲驱动扬声器形成。

2 设计方案
本系统核心硬件为AT89C51单片机,用于控制LED彩灯和扬声器,以高低电平控制LED灯的明灭,通过LED彩灯明灭以显示不同图案花样,让彩灯整体达到美轮美奂的视觉效果。

同时,以单片机端口的高低电平变化产生脉冲,驱动扬声器发声,以不同频率的脉冲让扬声器发出不同声音,已达到视觉听觉同时感受的效果。

3 硬件介绍
3.1 AT89C51芯片
AT89C51是一种带4K字节闪烁可编程可擦除只读存储的低电压,高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,及工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

本系统以AT89C51为控制核心,电路结构简洁,易制作、操作,使用方便。

3.2 LED彩灯
LED彩灯是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。

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

半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。

但这两种半导体连接起来的时候,它们之间就形成一个P-N结。

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

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

LED灯非常节能,白光LED的能耗仅为白炽灯的1/10,节能灯的1/4;寿命长,寿命可达10万小时以上,对普通家庭照明可谓"一劳永逸";可以工作在高速状态.节能灯如果频繁的启动或关断灯丝就会发黑很快的坏掉;环保,没有汞的有害物质。

LED 灯泡的组装部件可以非常容易的拆装,不用厂家回收都可以通过其它人回收;固态封装,属于冷光源类型。

所以它很方便运输和安装,可以被装置在任何微型和封闭的设备中,不怕振动,基本上用不着考虑散热。

本系统中,主要利用LED彩灯的低耗节能使用时间长等特性,便于电路的设计制作。

3.3 扬声器
扬声器是一种把电信号转变为声信号的换能器件,扬声器的性能优劣对音质的影响很大。

扬声器在音响设备中是一个最薄弱的器件,而对于音响效果而言,它又是一个最重要的部件。

扬声器的种类繁多,而且价格相差很大。

音频电能通过电磁,压电或静电效应,使其纸盆或膜片振动并及周围的空气产生共振(共鸣)而发出声音。

4硬件电路
4.1上电复位电路
上电压从无到有在RESET处会先处于高电平一段时间,然后由于该点通过电阻接地则RESET该点的电平会逐渐的改变为低电平,从而使得单片机复位口电平从1到0,达到给单片机复位的功能。

这样一种复位方式就是所谓上电复位。

电容在上接高电平,电阻在下接地,中间为RST。

这种复位电路为高电平复位。

其工作原理是:通电时,电容两端相当于是短路,于是RST 引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。

本系统中,上电启动和复位电路组合为一个电路,结构简单,操作方便。

如图1
图1 上电复位电路
4.2时钟电路
为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,时钟电路一般由晶体振荡器、晶震控制芯片和电容组成。

晶振频率的大小决定了单片机系统工作的快慢。

本系统中采用11.0592MHz晶振,和两个30pF电容,结构简单。

如图2
图2 时钟电路
4.3LED彩灯电路
本系统中采用8个LED彩灯来显示图案变化,为保护电路,另外串联1k欧姆的电阻,电路中采用8电阻的并阻,使电路更简洁。

如图3
图3 LED彩灯
4.4扬声器电路
由于单片机I/O口输出电流非常小,不能让扬声器正常工作,系统中扬声器通过三极管放大。

如图4
图4 扬声器
4.5硬件总电路
系统中以AT89C51单片机为控制核心,P2口控制LED彩灯使其自动变化,显示8种不同图案,同时P1.5口控制扬声器,图案变化的同时,发出不同声音,电路结构简单,易于制作,图案自动变化,操作方便。

如图5 硬件电路
图5 硬件电路
5 软件设计
本系统主要是控制LED彩灯自动变化8中图案的同时扬声器发出不同声音。

设计中是控制8个LED灯,以不同亮灭,完成图案变化;而产生不同的响声,是依靠单片机发出不同频率脉冲完成的。

5.1源程序
在LED彩灯控制中,设计中利用控制P2口高低电平来控制LED灯的亮灭,间断时间用了延时程序:
void dalay(unsigned int z)//延时程序,延时10m秒
{
unsigned char i,j;
for(z;z>0;z--)
for(i=38;i>0;i--)
for(j=130;j>0;j--);
}
扬声器的不同响声,设计中调用了子程序:
void bee(unsigned int mm)
{
p1=0;
dalay(mm);
p1=1;
dalay(mm);
// }
}
源程序:
#include<reg52.h>
#include<intrins.h>
unsigned char n;
sbit p1=P1^5;
void dalay(unsigned int z)//延时程序延时10m秒{
unsigned char i,j;
for(z;z>0;z--)
for(i=38;i>0;i--)
for(j=130;j>0;j--);
}
void bee(unsigned int mm) //扬声器子程序
{
p1=0;
dalay(mm);
p1=1;
dalay(mm);
}
void main()
{ unsigned char tem,ten;
unsigned int aa,bb;
for(aa=0;aa<2;aa++) //1从右向左依次灭亮{
tem=0x01;
for(bb=0;bb<8;bb++)
{
P2=tem;
dalay(50);
tem=_crol_(tem,1);
bee(2);
}
}
for(aa=0;aa<2;aa++)//2从左向右依次灭亮
{
tem=0x80;
for(bb=0;bb<8;bb++)
{
P2=tem;
dalay(50);
tem=_cror_(tem,1);
bee(4);
}
}
for(aa=0;aa<2;aa++) //3从两边齐向中心灭亮 {
tem=0x01;
ten=0x80;
for(bb=0;bb<16;bb++)
{
P2=(tem+ten);
dalay(50);
tem=_crol_(tem,1);
ten=_cror_(ten,1);
bee(6);
}
}
for(aa=0;aa<2;aa++) //4从两边向中心交替灭亮 {
tem=0x01;
ten=0x80;
for(bb=0;bb<16;bb++)
{
if(bb%2==0)
P2=tem;
else P2=ten;
dalay(50);
tem=_crol_(tem,1);
ten=_cror_(ten,1);
bee(8);
}
}
for(aa=0;aa<2;aa++)//5从左向右依次灭{
tem=0x80;
for(bb=0;bb<8;bb++)
{
P2=(P2+tem);
dalay(50);
tem=_cror_(tem,1);
bee(10);
}
}
for(aa=0;aa<2;aa++)//6从右向左依次点亮灭{
tem=0x01;
for(bb=0;bb<8;bb++)
{
P2=(P2+tem);
dalay(50);
tem=_crol_(tem,1);
bee(12);
}
}
for(aa=0;aa<2;aa++)//7从右向左依次点亮{
tem=0x01;
P2=0xff;
for(bb=0;bb<8;bb++)
{
P2=(P2-tem);
dalay(50);
tem=_crol_(tem,1);
bee(14);
}
}
for(aa=0;aa<2;aa++)//8从左向右依次点亮{
tem=0x80;
P2=0xff;
for(bb=0;bb<8;bb++)
{
P2=(P2-tem);
dalay(50);
tem=_cror_(tem,1);
bee(16);
}
}
}
5.2调试仿真
结合原理图和源程序,设计中用了PROTEUS仿真,如图6
图6 仿真
总结
本系统中,采用AT89C51单片机为控制核心,电路结构简单,便于制作。

系统中各种图案自动变化,彩灯控制器使用过程非常方便,易于普及。

电路中使用LED彩灯为发光器件,节能效果非
常好,而且使用寿命非常长。

电路中也可以适当增加变化LED灯的数量和位置,就得到多种多样的图案变化,实用性非常强。

通过此次课程设计,对所学的知识有了比较全面的了解和应用,真正尝试到了理论联系实际的趣味,明白了“说是说、做是做,说和做是两码事儿”的古语。

此次设计巩固了理论基础知识,加强了PROTEL等软件的使用,学会了在实验中应注意什么,怎么样保护元件,怎样采能最准最快的查出错误,且对word文档的操作有了更加高是水平。

通过连接和调试电路使理论更接近于实际,同时也发现了自己知识的不足,特别是动手能力的缺乏,对以后的学习和实践有了比较强的指导意义。

使我感触最深的是做任何事都要细心,而且要有耐心,怀着执著的心去追求真理。

参考文献
[1]杨志忠主编,《单片机应用技术》第二版高等教育出版
社,2003
[2]胡宴如主编,《单片机应用技术》第三版高等教育出版社 2003
[3]叶致诚,《单片机应用技术》北京:高等教育出版社,1995年
[3]张秀娟,陈新华主编。

《单片机应用技术》机械工业出版社。

2008
[3]张毅坤等单片微型计算机原理及应用西安电子科技大学出版社
[3]李建忠编著单片机原理及应用西安西安电子科技大学出版社
附录1 元器清单
附录2原理图。

相关文档
最新文档