课程设计 基于单片机的音乐播放器

课程设计 基于单片机的音乐播放器

ID:47482271

大小:217.07 KB

页数:22页

时间:2020-01-11

课程设计 基于单片机的音乐播放器_第1页
课程设计 基于单片机的音乐播放器_第2页
课程设计 基于单片机的音乐播放器_第3页
课程设计 基于单片机的音乐播放器_第4页
课程设计 基于单片机的音乐播放器_第5页
资源描述:

《课程设计 基于单片机的音乐播放器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、221设计课题任务、功能要求说明及总体方案介绍1.1任务设计一个具有特定功能的音乐播放器。该音乐播放器上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该音乐播放器可以播放多首音乐,曲目选择可以由键盘控制,曲目名称可以显示在显示器上。1.2功能要求说明设有四个按键,其中两个能实现多首音乐的选择,另一个能实现开始功能和单曲重播的功能,最后一个能实现复位和关闭歌曲的功能。设有一位数码管,每选择一首曲子能在数码管上显示当前的曲目(只是数字)。设有八位二极管,能随歌曲频率闪烁。1.3总体方案介绍及工作原理说明1.3.1总体方案介绍作为单片机的重要硬件资源之一,利用定时器可以产生各种固定频

2、率的方波信号,也可以产生包括“Do“、“Re“、“Me“--等音阶在内的各种频率声音。在此设计中我们采用12MHz的晶振,产生的频率信号即音乐信号由P3.7口输出,信号经过放大后由喇叭发出声音。乐曲中,每一音符对应着确定的频率,我们可以参照给出的各音符频率及其相应的时间常数来编写程序,根据表中所提供的常数,将其16进制代码送入芯片里,可以奏出音符。音符的节拍我们可以用定时器T0来控制,送入不同的初值,就可以产生不同的定时时间。便如某歌曲的节奏为每分钟94拍,即一拍为0.64秒。其它节拍与时间的对应关系也可以从两者关系表中得到。定时器T0工作在定时方式1,改变TH0及TL0,产生不同的音频频率。

3、要编写的乐谱按要求以音符字节数据表的形式存放在程序中,改变乐曲就是通过改变该数据表的内容来实现的。主程序的任务是按顺序读取数据表中的字节,根据情况调用音级子程序和音长子程序,启动定时器T0进行工作。1.3.2工作原理说明(1)要生产音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间.利用定时器计时这个半周期时间,2222每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲.(2)利用8051的内部定时器使用其工作在计数器模式MODE1下,改变计数值THO及TLO以产生不同频率的方法.(3)例如频率为523

4、Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us=956,在每次计数956次时将I/O反相,就可得到中音DO(523Hz).   计数脉冲值与频率的关系公式如下:N=Fi÷2÷Fr……………………………………………1.1N:计算值;Fi:内部计时一次为1us,故其频率为1MHz;(4)其计数值的求法如下:T=65536-N=65536-Fi÷2÷Fr……………………………1.2例如:设K=65536,F=1000000=Fi=1MHz,求低音DO(261Hz).中音DO(523Hz).高音的DO(1046Hz)的计算值.T=65536-N=65536-Fi÷2÷

5、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(5)C调各音符频率与计数值T的对照表如表1所示.表1.1C调各音符频率与计数值T的对照表音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)低1 DO26263628#4FA#74064860#1 DO#27763731中5SO78464898低2 RE29463835#5SO#83164934#2RE#31163928中6LA88

6、064968低3M33064021#693264994低4FA34964103中7SI98865030#4FA#37064185高1DO104665058低5SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#646664463高3M131865157低7SI49464524高4FA139765178中1DO52364580#4FA#148065198(6)每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,表2为节拍与节拍码的对照.如果1拍为0.4秒,1/4拍是0.1秒,

7、只要设定延迟时间就可求得节拍的时间.假设1/4拍为1DELAY,则1拍应为4DELAY,以此类推.所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如表3为1/4和1/8节拍的时间设定.22222硬件系统的设计2.1硬件系统各模块功能简要介绍2.1.1单片机最小系统图2.1单片机最小系统(1)时钟源电路单片机内部具有一个高增益反相放大器,用于构成振荡器。通常在引脚XTALl和XTAL2

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。