音乐彩灯设计报告 2.docx
《音乐彩灯设计报告 2.docx》由会员分享,可在线阅读,更多相关《音乐彩灯设计报告 2.docx(8页珍藏版)》请在冰豆网上搜索。
音乐彩灯设计报告2
电子工程学院课外学分设计报告
题目:
基于单片机的音乐彩灯设计
姓名:
庄爽学号:
05号
专业:
电子信息工程实验室:
开放实验室
班级:
A1121
设计时间:
2014年04月07日——2014年05月27日
评定成绩:
审阅教师:
目录
1.专业综合设计任务…………………………………………………4
2.方案设计与论证(或基本原理与论证)…………………………4
3.音乐彩灯设计程序…………………………………………………5
4.原理图………………………………………………………………9
5.实现与测试(或调试)………………………………………………10
6.分析与总结………………………………………………………11
摘要
随着科学的发展,人们生活水平的提高,人们不满足于吃饱穿暖,而要有更高的精神享受。
不论是思想,还是视觉,人们都在追求更高的美。
特别使在视觉方面,人们不满足于一种光,彩灯的诞生让人们是视觉对美有了更深的认识。
但现在市面上的音乐彩灯只是按照一定的方式闪烁,让人们感觉到十分的粗糙无味,更没有声音那样用震撼力,音乐彩灯的出现让我们既有了听觉上的享受,更有了精神上的享受。
本设计是一个音乐彩灯控制器,实现了音乐大小、节奏、音调的控制。
1.专业综合设计任务
目前,基于彩灯控制器的设计的方法很多,有利用单片机控制的、有利用传感器控制的,还有利用EDA控制的等等。
在简化设计步骤和节约实验器材的情况下,为了简化硬件电路,也可采用PLCS7-20CN控制的,虽然硬件电路比较简便,但是实验程序更复杂,实验步奏更繁琐;对于编写程序是个比较困难的问题。
通常采用单片机控制的方法,即利用单片机的端口来控制彩灯以及音乐播放,在程序编写上更容易编写,程序的可编译性更强。
本设计利用8951单片机来实现基于单片机的音乐彩灯控制的设计。
用一恒流源供电,当按下“开始”按键时单片机开始输出,彩灯开始闪烁和音乐播放开始同步播放;当按下“停止”按钮时音乐播放停止,彩灯停止闪烁,LCD显示停止。
当再次按下“开始”按钮时彩灯开始闪烁和音乐播放开始同步播放。
2.方案设计与论证(或基本原理与论证)
根据设计要求可以把电路组成部分分为音乐控制部分,整个系统有三个或以上的控制开关。
音乐控制按钮,清零端CLRDENG等。
利用单片机89C51产生乐曲音符,再把音谱翻译成计算机音乐语言,由单片机进行信息处理,经过信号放大,由喇叭发出乐曲。
由于音符和节拍都由计算机产生,所以发音符和节拍都准确。
根据不同频率的方波,驱动喇叭发出不同频率的声音,由程序查表得到定时常数和延迟常数,分别用以控制定时器产生方波的频率和发出该频率方波的持续时间,当延迟时间到时,再查下一个的定时常数和延迟常数,依次下去,就可以演奏乐曲。
3.音乐彩灯设计程序
#include
#defineucharunsignedchar
#defineuintunsignedint
#defineledP1
sbitbeep=P2^4;
uchari;
uintcodetable[]={//音频
64021,64103,64260,64400,
64524,64580,64684,64777,
64820,64898,64968,65030,
65058,65110,65157,65178
};
ucharcodetable2[]={//流水灯状态
0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,
0xc3,0x81,0x00,0xfe,0x3c,0x18,0x00,0xff
};
//uintcodetable1[]={
//0xc9,0xb,//低音1
//0xcf,0x0a,
//0xd4,0x14,
//0xd7,0x00,
//0xdb,0x10,
//0xdf,0x0f,
//0xe3,0x01,//低音7
//0xe4,0x14,//中音1
//0xe7,0x14,
//0xea,0x0a,
//0xeb,0x10,
//0xed,0x19,
//0xef,0x18,
//0xf1,0x11,//中音7
//0xf2,0x0a,//高音1
//0xf3,0x1b,
//0xf5,0x05,
//0xf5,0x19,
//0xf6,0x1d,
//0xf7,0x1c,
//0xf8,0x19,//高音7
//};
/************************************************
*延时ms
*************************************************/
voiddelay_ms(uinti)
{
ucharj;
while(i--)
for(j=0;j<120;j++);
}
/*************************************************
*定时器0初始化
**************************************************/
voidinitTimer(void)
{
TMOD=0x1;
TH0=0xff;
TL0=0xff;
TR0=1;
ET0=1;
EA=1;
}
/*************************************************
*定时器0中断函数
*************************************************/
voidtimer0()interrupt1
{
TH0=(table[i]+100)/256;
TL0=(table[i]+100)%256;
beep=~beep;
}
/*****************************主函数**********************************/
voidmain()
{
beep=1;
initTimer();
while
(1)
{
delay_ms(200);
i++;
TR0=0;
led=table2[i];
delay_ms(300);
TR0=1;
if(i==16)i=0;
}
}
4.原理图
图一LM386电路
图二音乐彩灯电路原理图
5.实现与测试结果(或调试)
扬声器先低音发出12345671,再高音发出12345671,每变化一个音阶的同时流水灯呈现出不同的状态,实验现象如图三所示:
图三音乐彩灯实验现象
6.分析与总结
通过以上的设计过程,我不但在知识上收获了,而且发现了自己的一些不足之处;我遇到了很多的问题。
首先是对电路的优化,硬件可以通过改变一些管脚连接来实现更方便的布线,是整个电路更合理。
通过这次设计,进一步掌握单片机理论知识,知道AT89S52单片机的原理、编程和功能的应用,充分提高动手能力和排除故障的能力。
同时通过课程设计加深了我对单片机的认识和兴趣,发挥了我的创新能力。
参考文献:
[1]杨国志,王立峰,杨东光,王辉林编著.实用电子制作实例[M].福建科学技术出版社,2000.10.
[2]张仁.单片机音乐彩灯同步控制器的设计[J].成都气象学院院报,1995.5.(165~168).
[3]王连涛主编.音乐喷泉的单片机控制[J].电子世界,2005.(21~22).
[4]康华光,陈大钦编著.电子技术基础(模拟部分第四版)[M].高等教育出版社,2002.3.
[5]潘永雄,沙河编著,电子线路CAD实用教程(第三版)[M].西安电子科技大学出版社,2010.2.
[6]门宏编著.图解电子技术[M].人民邮电出版社,2010.6.
[7]刘瑞新,沈淑娟著.C语言程序设计基础[M].机械工业出社,2004.8.