基于单片机实现的音乐播放器设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1、设计课题任务、功能要求说明及总体方案介绍
1.1 设计课题任务 (1)
1.2 功能要求说明 (1)
1.3 设计课题总体方案介绍及工作原理说明 (1)
2、设计课题硬件系统的设计
2.1 设计课题硬件系统各模块功能简要介绍 (5)
2.2 设计课题电路原理图、PCB图、元器件布局图 (5)
2.3 设计课题元器件清单 (5)
3、设计课题软件系统的设计
3.1 设计课题使用单片机资源的情况 (7)
3.2 设计课题软件系统各模块功能简要介绍 (7)
3.3 设计课题软件系统程序流程框图 (7)
3.4 设计课题软件系统程序清单 (7)
4、设计结论、仿真结果、误差分析、教学建议等等
4.1 设计课题的设计结论及使用说明 (10)
4.2 设计课题的仿真结果 (10)
4.3 设计课题的误差分析 (10)
4.4 设计体会 (10)
4.5 教学建议 (11)
参考文献 (12)
致谢 (13)
附录 (14)
第一章设计课题任务、功能要求说明及总体方案介绍
1.1 设计课题任务
设计一个具有特定功能的音乐播放器。该音乐播放器上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该音乐播放器可以播放多首音乐,曲目选择可以由键盘控制,曲目名称可以显示在显示器上。
1.2功能要求说明
(1) 该音乐播放器上电后显示系统提示符“P.”。
(2) 在按下第一个键后就播放第一首歌曲,并在显示器上显示“1”。
(3) 在按下第二个键后就播放第二首歌曲,并在显示器上显示“2”。
(4) 在按下第三个键后就播放第三首歌曲,并在显示器上显示“3”。
(5) 在播放音乐的中间能切换歌曲,在放完一首歌后回到起始状态,下一步的动作由人控制。
1.3设计课题总体方案介绍及工作原理说明
本设计由AT89C52 单片机,3*1独立键盘,数码管等构成。总体方案图如图1.1所示
图1.1 总体方案图
(1)总体原理:
乐曲中不同的音符,实质就是不同频率的声音。通过单片机产生不同的频率的脉冲信号,由蜂鸣器放出,就产生了美妙和谐的乐曲。
(2)单片机产生不同频率脉冲信号的原理:
1)要产生音频脉冲,只要算出某一音频的脉冲(1/频率),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期的时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期的时间再对I/O反相,就可以在I/O脚上得到此频率的脉冲。
2)利用8051的内部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法如下:
例如,频率为523Hz,其周期天/523 S=1912uS,因此只要令计数器计时
956uS/1us=956,在每计数956次时就将I/O反接,就可得到中音DO(532Hz)。
计数脉冲值与频率的关系公式如下:
N=Fi/2/Fr
(N:计数值,Fi:内部计时一次为1uS,故其频率为1MHz,Fr:要产生的频率)(3)其计数值的求法如下:
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
(4)每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,下表为节拍码的对照。但如果1拍为0.4秒,1/4拍是0.1秒,只要设定延迟时间就可求得节拍的时间。假设1/4节拍为1DELAY,则1拍应为4DELAY,以此类推。所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如下表为1/4和1/8节拍的时间设定。
1/4节拍 1/8节拍
节拍码节拍数节拍码节拍数
1 1/4拍 1 1/8拍
2 2/4拍 2 1/4拍
3 3/4拍 3 3/8拍
4 1拍 4 1/2拍
5 1又1/4拍 5 5/8拍
6 1又1/2拍 6 3/4拍
7 1又3/4拍 7 7/8拍
8 2 拍 8 1 拍
9 2又1/4拍 9 1又1/8拍
A 2又1/2拍 A 1又1/4拍
B 2又3/4拍 B 1又3/8拍
C 3拍 C 1又1/2拍
D 3又1/4拍 D 1又5/8拍
E 3又1/2拍 E 1又3/4拍
F 3又3/4拍 F 1又7/8拍
各调节拍的时间设定
1/4节拍 1/8节拍
曲调值 DELAY 曲调值 DELAY
调4/4 125毫秒调4/4 62毫秒
调3/4 187毫秒调3/4 94毫秒
调2/4 250毫秒调2/4 125毫秒
⑹建立音乐的步骤:
1)先把乐谱的音符找出,然后由上建立T值表的顺序。
2)把T值表建立在TABLE1,构成发音符的计数值放在“SONG”。
3)简谱码(音符)为高位,节拍为(节拍数)为低4位,音符节拍码放在程序的“SONG”处。
简谱对应的简谱码、T值、节拍数
简谱发音简谱码 T值节拍码节拍数
5 低 5SO 1 64260 1 1/4拍
6 低 6LA 2 64400 2 2/4拍
7 低 7SI 3 64524 3 3/4拍
1 中 1DO 4 64580 4 1拍
2 中 2RE 5 64684 5 1又1/4拍