首页 乐曲自动演奏器

乐曲自动演奏器

举报
开通vip

乐曲自动演奏器乐曲自动演奏器 一、 功能介绍 使用FPGA设计一个乐曲自动演奏控制器,将源程序下载至FPGA器件中,实现乐曲自动演奏。(本设计的乐曲是《友谊天长地久》的部分音乐) 乐曲演奏的原理是:由于组成乐曲的每个音符的频率值(音调)及其持续时间(音长)是乐曲演奏的2个基本数据,因此需要控制输出到扬声器的激励信号的频率高低和该频率信号持续的时间。频率的高低决定了音调的高低,而乐曲的简谱与各音名的频率之间也有固定的对应关系。所有不同频率的信号都是从同一基准频率分频而得来的,由于音阶频率多为非整数,而分频系数又不能为小数,故必须将...

乐曲自动演奏器
乐曲自动演奏器 一、 功能介绍 使用FPGA 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 一个乐曲自动演奏控制器,将源程序下载至FPGA器件中,实现乐曲自动演奏。(本设计的乐曲是《友谊天长地久》的部分音乐) 乐曲演奏的原理是:由于组成乐曲的每个音符的频率值(音调)及其持续时间(音长)是乐曲演奏的2个基本数据,因此需要控制输出到扬声器的激励信号的频率高低和该频率信号持续的时间。频率的高低决定了音调的高低,而乐曲的简谱与各音名的频率之间也有固定的对应关系。所有不同频率的信号都是从同一基准频率分频而得来的,由于音阶频率多为非整数,而分频系数又不能为小数,故必须将计算的到的分频数进行四舍五入取整,基准频率和分频系数应综合考虑加以选择,从而保证音乐不会走调。如在4MHz时钟下,中音1(对应的频率值为523.3Hz)的分频系数应该为:4000000/(2*523.3)=0xd3821,这样只需对系统时钟进行3821次分频即可得到所要的中音1。至于其他音符,同样可求出对应的分频系数,这样利用程序可以很轻松地得到对应的乐声。此外,在程序中设置了一个状态机,每250ms改变一个状态(即一个节拍),组成乐曲的每个音符的频率值(音调)相对应于状态机的每一个状态。只要让状态机的状态按顺序转换,就可以自动播放音乐了。《友谊天长地久》乐谱见下表(注:N一拍;N两拍;N﹒四拍;N﹒八拍;N为乐谱。由于芯片存储容量太小,源程序只加入乐谱的一部分音符) 《友谊天长地久》乐谱 0 5 | 1.  1 1 3 | 2.  1 2 3 | 1.  1 3 5 | 6. 6 | 5.  3 3 1 | 2.  1 2 3 | 1.  6 6 5 | 1. 6 | 5.  3 3 1 | 2.  1 2 6 | 5 .  3 3 5 | 6. 1 | 5.  3 3 1 | 2.  1 2 3 | 1.  6 6 5 | 1. 0 ? 简谱中的音名与频率的关系 音名 频率/Hz 分频数 低音5 392 16’d5102 低音6 440 16’d4545 中音1 523.5 16’d3821 中音2 587.3 16’d3373 中音3 659.3 16’d3033 中音5 784 16’d2551 高音5 880 16’d2273 高音6 1760 16’d1913       二、 硬件设计(电路图、原器件清单) 实物元件清单: 印刷电路板一个; 电阻(10KΩ的10个,200Ω的8个,1KΩ的14个,50Ω的1个); 三极管3个; 发光二极管(红黄绿各三个); 蜂鸣器1个; 8段显示器2个; 按键4个; 4M晶振1个; 电容(104的6个,10μ的1个); 电源线1个; 芯片底座1个; 电路图: 功率放大显示部分: 核心控制部分: 三、 软件设计( 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图、源程序) 流程图 一个完整的EDA设计流程既是自顶向下设计方法的具体实施途径,也是EDA工具软件本身的组成结构。其大致的设计流程包括:设计输入、综合、适配、时序仿真和功能仿真、编程下载、硬件测试的步骤。对于目前流行的EDA工具软件,图1-1的设计流程具有一般性[3]。 图1-1  应用FPGA/CPLD的EDA开发设计流程框图        各部分源程序及说明 module song(clk,beep);      //模块名称song //I/O口说明 input clk;                //系统时钟4MHz output beep;                //蜂鸣器输出端 //内部寄存器 reg beep_r;                    //寄存器 reg[3:0] state;                  //乐谱状态机 reg[15:0]count,count_end; reg[17:0]count1; //参数--分频系数 parameter  L_5=16'd5102,              //低音5 L_6=16'd4545,                        //低音6 M_1=16'd3821,                        //中音1 M_2=16'd3405,                        //中音2 M_3=16'd3033,                        //中音3 M_5=16'd2551,                          //中音5 M_6=16'd2273,                          //中音6 H_1=16 'h1913;                          //高音6 parameter TIME=1000000;          //控制每个音的长短(250ms) assign beep= beep_r;                  //输出音乐 //上升沿脉冲计数 always@(posedge  clk) begin count<=count+1'b1;                    //计数器加1 if(count==count_end) begin count<=16'h0;                          //计数器取0 beep_r<=! beep_r;                        //输出取反 end end //上升沿脉冲计数 always@(posedge  clk) begin if(count1 实验室 17025实验室iso17025实验室认可实验室检查项目微生物实验室标识重点实验室计划 的试验箱上,一切运行正常,但转到我们需要用的芯片上就不能出现我们想要的结果。后来又查 资料 新概念英语资料下载李居明饿命改运学pdf成本会计期末资料社会工作导论资料工程结算所需资料清单 ,了解到芯片的时钟的频率不同,然后我们就开始转换频率再计算,同时把原来的程序根据要求的频率进行修改,但还是不能显示出流畅的音乐。最后,当我们想放弃这个设计换其他程序设计的时候,我们想起可能是蜂鸣器本身的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。然后,我们找到以前制作收音机的喇叭,接上后效果还是挺明显的,听到音乐的那一刻确实挺有成功感。 其次,也是对EDA这门课的深入理解与应用。如果说刚开始我还不知道EDA是干嘛的,但现在我可以说写一下简单的程序,看懂一些复杂的程序,然后就是提高了对QuartusⅡ操作能力。 当然,通过这次课程设计,还是发现自己的很多不足。由于当初EDA课程学得不是太好,导致刚开始操作时经常会遇到或大或小的问题,而且这次做的设计我觉得是老师要求里的比较简单的一个,还花费了这么长时间,也说明自己的能力不是太好。事实证明:要想真正掌握这门课还需要再花费一些精力。
本文档为【乐曲自动演奏器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_009226
暂无简介~
格式:doc
大小:31KB
软件:Word
页数:0
分类:互联网
上传时间:2019-07-25
浏览量:27