基于fpga简易乐器演奏器设计

基于fpga简易乐器演奏器设计

ID:11633353

大小:344.50 KB

页数:15页

时间:2018-07-13

基于fpga简易乐器演奏器设计_第1页
基于fpga简易乐器演奏器设计_第2页
基于fpga简易乐器演奏器设计_第3页
基于fpga简易乐器演奏器设计_第4页
基于fpga简易乐器演奏器设计_第5页
资源描述:

《基于fpga简易乐器演奏器设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、课程设计说明书草鱼 乐曲演奏设计草鱼 实验任务:pork采用VHDL来实现的简易乐曲演奏器。草鱼它能实现自动演奏已存歌曲。草鱼且要求实现如下功能:pork草鱼 草鱼(1)演奏时可以通过按键选择是自动演奏,鲤鱼自动演奏则是演奏已存入的固定乐曲;pork草鱼 (2)至少保存一首自动演奏的乐曲,鲤鱼且自动演奏的乐曲能重复播放;pork草鱼 (3)进行自动演奏时,鲤鱼数码管上要同时能显示演奏乐曲的乐谱;pork草鱼 (4)自动播放时,鲤鱼设置低速,鲤鱼中速,鲤鱼快速控制键,鲤鱼能实现乐曲不同速度的播放。草鱼草鱼 1乐曲演奏电路原理草鱼 草鱼草鱼草鱼草鱼声音的频谱范围约在几十到几

2、千赫兹,鲤鱼若能利用程序来控制FPGA某个引脚输出一定频率的矩形波,鲤鱼接上扬声器就能发出相应频率的声音。草鱼乐曲中的每一音符对应着一个确定的频率,鲤鱼要想FPGA发出不同音符的音调,鲤鱼实际上只要控制它输出相应音符的频率即可。草鱼乐曲都是由一连串的音符组成,鲤鱼因此按照乐曲的乐谱依次输出这些音符所对应的频,鲤鱼就可以在扬声器上连续地发出各个音符的音调。草鱼而要准确地演奏出一首乐曲,鲤鱼仅仅让扬声器能够发生是不够的,鲤鱼还必须准确地控制乐曲的节奏,鲤鱼即乐曲中每个音符的发生频率及其持续时间是乐曲能够连续演奏的两个关键因素。草鱼草鱼 当一个20MHz的时钟脉冲来到时,鲤鱼

3、乐谱发生器模块输出一个音符数据给分频系数模块,鲤鱼分频系数模块输出此音符相应的分频系数,鲤鱼将分频系数送给数控分频器模块,鲤鱼当20MHz的时钟脉冲来到时,鲤鱼数控分频器就根据分频系数输出相应的频率(即此音符所对应的发生频率)给扬声器,鲤鱼扬声器就可发出对应音符的声音来.连续的4Hz的时钟脉冲就将乐谱发生器里所存储的音符数据一个接一个的送给了分频系数模块,鲤鱼再经过数控分频模块,最后扬声器一个接一个的发出音符数据所对应的声音来。草鱼曲子也就流畅的播放出来了。草鱼草鱼 2草鱼整体设计思想草鱼 15课程设计说明书根据设计要求,鲤鱼系统组成方框图3-1所示,鲤鱼它由乐曲选择模

4、块、pork数码显示模块、pork蜂鸣器模块、pork模式选择模块组成。草鱼草鱼 图3-1乐曲演奏电路结构方框图基准时钟20MHz模式选择选歌,控制FPGA时钟电路峰鸣器电路乐曲选择电路数码显示电路4Hz20MHz扬声器数码管草鱼 草鱼草鱼 3草鱼乐曲演奏电路模块草鱼 3.1草鱼乐曲选择模块草鱼 1草鱼草鱼草鱼乐曲选择模块草鱼 在此模块中设置了一个9位二进制计数器((计数最大值为511),鲤鱼作为音符数据ROM的地址发生器。草鱼这个计数器的计数频率选为4草鱼Hz,鲤鱼即每一计数值的停留时间为0.25s,鲤鱼恰为当全音符设为1s时,鲤鱼四四拍的4分音符持续时间。草鱼同时为

5、了实现对歌曲选择得控制以及对播放速度的要求,鲤鱼可以多分出几个频率,鲤鱼然后由控制开关来选择歌曲和播放频率。草鱼随着音调发生器模块中的计数器按不同的时钟速率作加法草鱼 计数时,鲤鱼乐曲就开始连续自然地依据不同的速度演奏起来了。草鱼草鱼 2草鱼草鱼草鱼乐曲选择模块的仿真图草鱼 图3-2乐曲选择模块仿真图草鱼草鱼 草鱼 草鱼草鱼草鱼草鱼通过仿真图可以清楚的看到,鲤鱼时钟clk由0开始计数,鲤鱼每计一次数输出toneindex的值随之发生一定的变化,鲤鱼只不过根据乐谱的不同,鲤鱼输出的变化也不尽相同。草鱼由于选择开关的控制可以看出,鲤鱼在不同模式下播放的歌曲是不同的,鲤鱼实现

6、了选歌的功能。草鱼草鱼 3草鱼草鱼草鱼乐曲选择模块生成的逻辑符号图草鱼 草鱼 草鱼 草鱼 草鱼草鱼图3-3乐曲选择模块逻辑符号图草鱼 15课程设计说明书3.2数码显示模块草鱼 1草鱼草鱼草鱼数码显示模块草鱼 草鱼草鱼草鱼草鱼该编码模块的作用为将输入的音符数据翻译为音乐产生模块的所需要的分频系数,鲤鱼并且显示音符的数字码型和高音阶,鲤鱼通过对照表各音名对应的分频系数值及初始值,鲤鱼根据输入得到初始值,鲤鱼从而得到分频系数以便进行分频,鲤鱼得到所需的频率。草鱼草鱼 2音数码显示模块的仿真图草鱼 草鱼 草鱼草鱼草鱼草鱼草鱼 图3-4数码显示模块仿真图草鱼 草鱼 草鱼 在此程序

7、中index为音乐节拍产生模块输出的音符数据,鲤鱼经过翻译后将tone输出到数控分频模块为其提供分频系数的初始值,鲤鱼code为数码管显示的字符数,鲤鱼high1为高音显示,鲤鱼当乐谱中有高音时,鲤鱼就会相应地以二进制的形式表现出来。草鱼草鱼 3草鱼草鱼草鱼数码显示模块生成的逻辑符号图草鱼 草鱼 草鱼 草鱼 草鱼 图3-5数码显示生模块逻辑符号图草鱼 草鱼 3.3草鱼模式选择模块草鱼 1草鱼草鱼草鱼模式选择模块草鱼 根据设计的要求,鲤鱼该简易乐曲演奏器能实现自动演奏乐曲的功能。草鱼与此同时,鲤鱼还需要一个整体复位信号rst来控制该演奏器是

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

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

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