FPGA设计简易音乐播放器
- 格式:doc
- 大小:242.50 KB
- 文档页数:18
课 程 设 计 报 告
题 目: FPGA简易音乐播放器设计
学 院: 电子信息学院
班 级: 08041301
学生(学号): 汪顺 **********
学生 (学号): 叶尔达·叶尔丁巴图 **********
日期: 2015 年 12 月
1
摘 要
利用EDA软件设计一个简易硬件播放器并能播放多首音乐(最少四首) ,
可通过按键手动控制音乐播放。在播放音乐的同时可实现音谱与音高的显示,并
通过 10 个 LED小灯显示不同音调的变化。使用硬件描述语言设计音调发生模
块,音调编码模块,乐曲存储模块,控制模块,小灯控制模块,数字显示模块,
音谱与音高输出模块等各个模块。并下载到DE0—CV上实现。
关键词:EDA、音乐播放器、音调编码、数字显示、DE0—CV
2
目 录
摘 要 .............................................................. 1
目 录 ............................................................. 2
一、 课程设计目的 .................................................... 3
二、设计任务与要求 ................................................... 3
三、方案设计与论证 ................................................... 4
四、 单元电路设计与参数计算 .......................................... 6
4.1音频发生模块..................................................................................................... 6
4.2音频编码模块..................................................................................................... 7
4.3乐曲储存模块..................................................................................................... 7
4.4控制模块........................................................................................................... 10
4.5小灯显示模块................................................................................................... 10
4.6数字显示模块................................................................................................... 11
4.7分频模块........................................................................................................... 12
4.8总体设计........................................................................................................... 13
五、电路的安装与调试................................................................................................. 14
5.1音频编码模块................................................................................................... 14
5.2乐曲储存模块................................................................................................... 14
5.3 控制模块.......................................................................................................... 15
5.4 小灯控制模块(led) .......................................................................................... 15
5.5 音谱与音高输出模块...................................................................................... 16
六、遇到问题的解决方法............................................................................................. 16
七、结论与心得............................................................................................................. 17
八、参考文献................................................................................................................. 17
3
简易音乐播放器设计
一、 课程设计目的
《模拟、数字电路课程设计》是继《模拟电子技术基础》 、《数字电子技术基础》 、《电子技术基础实验》课程后,电气类、自控类和电子类等专业学生在电子技术实验技能方面综合性质的实验训练课程,是电子技术基础的一个部分,其目的和任务是通过二周的时间,让学生掌握 EDA 的基本方法,熟悉一种 EDA
软件,并能利用 EDA 软件设计一个电子技术综合问题,并在实验箱上成功下载,为以后进行工程实际问题的研究打下设计基础。
(1)通过课程设计使学生能熟练掌握一种 EDA 软件的使用方法, 能熟练进行设计输入、编译、管脚分配、下载等过程。
(2)通过课程设计使学生能利用 EDA 软件进行至少一个电子技术综合问题的设计,设计输入可采用图形输入法或硬件描述语言输入法。
(3)通过课程设计使学生初步具有分析寻找和排除电子电路中常见故障的能力。
(4)通过课程设计使学生能独立写出严谨的、有理论根据的、实事求是的、文理通顺的字迹端正的课程设计报告。
二、设计任务与要求
(1)设计一个简易硬件播放器并能播放多首音乐(最少四首),可通过按键手动控制音乐播放。
(2)在播放音乐的同时可实现音谱与音高的显示。
(3)并通过 10个LED小灯显示不同音调的变化。
(4)使用硬件描述语言设计音调发生模块,音调编码模块,乐曲存储模块,控制模块,小灯控制模块,数字显示模块,音谱与音高输出模块等各个模块。
4 三、方案设计与论证
(1)音乐产生
产生音乐的两个因素是音乐频率和音乐的持续时间(即节拍), 以纯硬件完成演奏电路比利用微处理器 (CPU) 来实现乐曲演奏要复杂的多。如果不借助于功能强大的 EDA工具和硬件描述语言,凭借传统的数字逻辑技术,即使最简单的演奏电路也难以实现。 根据设计要求,乐曲硬件演奏电路系统主要由音频发生模块(speaker)和乐曲存储模块(notetabs)组成。音频发生模块对 FPGA 的基准频率进行分频(设计采用1MHZ),得到与各个音阶对应的频率输出。乐曲存储模块产生节拍控制和音阶选择信号,即在此模块中可存放一个乐曲曲谱真值表,由一个计数器来控制此真值表的输出,而由计数器的计数时钟信号作为乐曲节拍控制信号。(设计采用16HZ)
(2) 音名与频率的关系
音乐的十二平均率规定:每两个八度音(如简谱中的中音1与高音1)之间
的频率相差一倍。在两个八度音之间,又可分为十二个半音,每两个半音为1个全音(如简谱中的低音1与低音2),每两个半音之间频率之比是122,两个全音之间的频率之比是62。另外,音名 A(简谱中的低音 6)的频率为 440Hz,音名 E 到 F之间,B到C之间为半音,其余为全音,由此可以计算出简谱中从低音 1 到高音 1 之间每个音名的频率如表 3-1 所示
由于音阶频率多为非整数,而分频系数又不能为小数,故必须将得到的分频数四舍五入取整。若基准频率过低,则由于分频系数过小,四舍五入取整后的误差较大,若基准频率过高,虽然误码差变小,但分频结构将变大。实际的设计应综合考虑两方面的因素,在尽量减小频率误差的前提下取舍合适的基准频 5 率。本例中选取1MHz 的基准频率各音阶频率及相应的分频系数如表 2 所示。为了减少输出的偶次谐波分量,最后输出到扬声器的波形应为对称方波,因此在到达扬声器之前,有一个二分频的分频器。
由于最大的分频系数为 1274, 故采用 11位二进制计数器已能满足分频要求。
在表 3-2,除给出了分频比以外,给出了对应于各个音阶频率时计数器不同的初始值,对于乐曲中的休止符,要将分频系数设为 0,即初始值为 2047 即可,此时扬声器将不会发声。对于不同的分频系数,加载不同的初始值即可。
(3) 节拍控制原理
该演奏电路演奏的乐曲是“梁祝”等片段,其最小的节拍为 1 拍。将 1 拍的
时长定为 0.125 秒,则需要再提供一个8Hz 的时钟频率即可产生 1 拍的时长,演奏的时间控制通
(4)设计图如下:
音调存储
控制选歌 音调显示 音调编码 转换成频率
音谱.音高显示 分频器 1MHz基准
8Hz节拍