课程设计报告书题目:基于单片机的蜂鸣器音乐播放器设计学院:电子信息科学与技术学院
班级:15级电子一班
姓名:王珍
学号:150807141137
完成日期:2019年 04 月24日
课程设计任务书
班级:15级电子一班
学号:150807141137
姓名:王珍
指导老师:杨磊
设计题目:蜂鸣器放音乐设计
一、设计目的及要求:
1. 熟悉印制电路板设计的步骤和方法,能够按照自己的思想设计出所需的电路功能,并能明白其原理和应用。
2. 熟悉常用电子器件的类别、型号、规格、性能及其使用范围,能查阅有关的电子器件图书。
3. 能够正确识别和选用常用的电子器件,并且能够熟练使用普通万用表和数字万用表。
4. 能够熟练的使用单片机编程软件,实现硬件及软件的紧密结合,并能熟练地调试程序,明白程序的目的和编写步骤。
要求:掌握设计电路和写单片机程序及调试。
二、设计内容和方法:
用STC89C52单片机和电平转换芯片MAX232组成一个简单的控制电路,用以控制蜂鸣器发出各种不同的声音,并利用虚拟仪器控制。
通过电脑的串口写入一段程序到单片机中,实现单片机的控制作用。
利用按键控制蜂鸣器的发声,经MAX232与电脑相连,用虚拟仪器实现对单片机的控制。
本设计是设计一个单片机控制的蜂鸣器发声系统的设计。
近年来随着科技的飞速发展,单片机的应用正在不断的走向深入,同时带动着传统控制检测日新月异更新。
本秒表采用89c52为中心器件,将软、硬件有机地结合起来,使得系统能够实现控制蜂鸣器发声。
其软件系统采用c语言编写程序,并在keil下调试通过硬件电路通过MAX232与电脑相连,并与软件相结合,调试修改,使达到预期
的目的。
三、硬件部分:
3.1蜂鸣器电路设计
由于蜂鸣器的工作电流一般比较大,
以至于单片机的I/O口是无法直接驱动的,
所以要利用放大短路来驱动,一般使用三
极管来放大电流就可以了。
3.2电源电路
电源电路是系统的最基本部分,
任何部分都离不开电源部分,单片机
系统也不例外,而且我们应该高度重
视电源部分,不能因为电源部分电路
比较简单而有所疏忽,其实有一半的
故障或制作失败都和电源有关,电源
部分做好才能保证电路的正常工作。
3.3单片机晶振电路
52单片机内部的振荡电路是-一个增益反相放大器,引线XYAL1和XTAL2分别为反相放大器的输入和内部时钟电路输入和来自反相放大器的输出,该反相放大器可以配置为片内振荡器。
单片机内部虽然有震荡电路,但要形成时钟,外部还需要附加电路石晶振荡和
陶瓷振荡均可采用,有余输
入至内部时钟信号要通过一
个二分频触发器,因此对外
部时钟信号的脉宽无任何要
求,单必须保证脉冲的高低
电平要求的宽度。
3.4单片机复位电路
单片机小系统采用上电自动复位和手动按键
复位两种方式实现系统的复位操作。
上电复位要
求接通电源后,自动实现复位操作。
手动复位要
求在电源接通的条件下,在单片机运行期间,如
果发生死机,用按钮开关操作使单片机复位。
单
片机要完成复位,必须向复位端输出并持续两个
机器周期以上的高电平,从而实现复位操作。
四、软件部分:
4.1单片机程序
/*****************************************/
/*音乐:祝你生日快乐 */
/*****************************************/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit BEEP = P3^7;
uchar code SONG_TONE[]=
{
212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,129,169,19 0,119,119,126,159,142,159,0
};
uchar code SONG_LONG[]=
{
9,3,12,12,12,24,9,3,12,12,12,24,9,3,12,12,12,12,12,9,3,12,12,12,24,0
};
void DelayMS(uint ms)
{
uchar t;
while(ms--)
{
for(t=0;t<120;t++);
}
}
void PlayMusic()
{
uint i =0,j,k;
while(SONG_LONG[i]!=0||SONG_TONE[i]!=0)
{
for(j=0;j<SONG_LONG[i]*20;j++)
{
BEEP = ~BEEP;
for(k=0;k<SONG_TONE[i]/3;k++);
}
DelayMS(10);
i++;
}
}
void main()
{
while(1)
{
PlayMusic();
DelayMS(500);
}
}
五、总结:
作为一名电子信息的大四学生,我觉得做单片机课程设计是很有意义的,而且也是必要的。
在做这次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。
为了让自己的设计更加完善,查阅这方面的实际资料是十分必要的也是必不可少的。
其次,在这次课程设计中,我们运用了以前学过的专业课知识,如: proteus 仿真、汇编语言、模拟和数字电路知识等。
虽然过去我从未独立应用过他们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获。