1 / 22
文档名称:

毕业论文 基于单片机的音乐门铃设计.doc

格式:doc   页数:22
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

毕业论文 基于单片机的音乐门铃设计.doc

上传人:chemcary 2014/5/14 文件大小:0 KB

下载得到文件列表

毕业论文 基于单片机的音乐门铃设计.doc

文档介绍

文档介绍:目录



前言………………………………………………………………………………3

第一章设计要求………………………………………………………………4
第二章设计分析说明………………………………………………………………4
第三章设计方案确定………………………………………………………………4
第四章设计方案说明………………………………………………………………5

第五章实物制作过程介绍…………………………………………………………14

第六章设计总结……………………………………………………………………15
第七章参考文献……………………………………………………………………16


前言
单片机就是功能简单化了的计算机。单片机又称单片微控制器,它不是完成某一个功能的芯片,而是把一个计算机系统集成到一个芯片上。概括地讲,一块芯片就是一台计算机。单片机体积小,质量轻,集成度高,功能强,可靠性高,应用灵活,易于掌握,价格便宜,为学习,应用和开发提供了便利条件,在智能仪表,实时工控,通信设备,导航系统,家用电器等多方面得到广泛的应用。同时,学习使用单片机是理解计算机组成原理与结构的最佳选择。,
门铃在生活中是一件极其常见的一种生活用品,随着市场上智能化数字的不断升温,门铃系统已作为智能化办公室和智能化住宅小区的一个重要组成部分,被各商家和用户所接受。人们已经开始习惯用门铃系统代替传统的铁钥匙去管理各通道门,这使门铃系统得到了飞跃的发展。随着单片机技术的飞速发展,通过单片机实现人们对物质生活的满足,这将会日益成为今后的一个重要的方向
由于电子音乐门铃具有铃声动听,价格低廉,耗电少等特点,在现在家居中的应用越来越流行。有了电子音乐门铃在客人拜访时,听到的将不再是单调的提示等候音,而是不同凡响的流行音乐旋律,特效音等个性化的电子声乐,音乐是有音符组成,声音的频率范围约在几十到几千赫兹,若能利用程序来控制单片机某个线口的高电平和低电平,则在该线口就能产生一定频率的矩形波,接上扬声器就能发出一定频率的声音,若再利用延时控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调。要奏出准确的控制乐曲节奏,常用节拍来表示。
现在对于我们可以利用单片机演奏乐曲,它可以由数字电路或者模拟电路组成,而本次设计基于单片机控制的,那么这样就利用到了单片机的中断系统了,即定时/计数器溢出中断的运用了。
我们可以从单片机的基本发音实验出发。我们知道,声音的频谱范围在几时到几千赫兹,能利用程序来控制单片机线口的高电平或低电平,则在该线口上就能产生一定频率的矩形波,接上扬声器就能发出一定频率的声音。我们在利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调而发出美妙的音乐。

设计要求
利用所学的单片机知识设计一个可以播放音乐的音乐门铃,
并做出实物。
了解单片机控制音乐门铃的工作原理。
设计分析说明
,只要算出某一音频的周期(1/频率),然后将此周期除以2,即得出半周期时间。利用定时器这个半周期时间,每当计时时间到后就将输出脉冲I/O反相,然后重复计时此半周期时间再对I/O就可在I/O脚上得到此频率的脉冲。
,使用其工作在模式1下,改变定时器TH0及TL0可以产生不同频率的音频脉冲。
,其周期T=1/523=1912us,因此只要令定时器计时956us/1us=956,在每次计数956次时将I/O反相,就可得到中音DO(523Hz).
计数脉冲值与频率的关系公式如下:
N=Fi÷2÷Fr
N:计数次数
Fi:音频脉冲频率
Fr:单片机的机器周期
定时器初始值的求法如下:
T=65536-N=65536-Fi÷2÷Fr
例如:设K=65536,F=1000000=Fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音的DO(1046Hz)的定时器初始值。
T=65536-N=65536-Fi÷2÷Fr=65536-1000000÷2÷Fr=65536-500000/Fr
低音DO:T=65536-500000/262=63627
中音DO:T=65536-500000/523=64580
高音DO:T=65536-500000/1047=65059
音符的工作原理如下:
音符就是其实就是代表声音频率的高低。。当启动定时器便可以得到该声音的频率。
节拍的工作原理如下:
节拍其实就是维持一个声音发声的时间。它的工作子程序如下:
DELAY: