乐器演奏电路设计

乐器演奏电路设计

ID:765963

大小:619.03 KB

页数:14页

时间:2017-09-04

乐器演奏电路设计_第1页
乐器演奏电路设计_第2页
乐器演奏电路设计_第3页
乐器演奏电路设计_第4页
乐器演奏电路设计_第5页
资源描述:

《乐器演奏电路设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、重庆交通大学计算机与信息学院设计性实验报告班级:通信工程专业07级2班姓名(学号):实验项目名称:乐器演奏电路设计实验项目性质:设计性实验所属课程:VHDL实验室(中心):指导教师:徐雯娟实验完成时间:2009年12月13日教师评阅意见:签名:年月日实验成绩:一、实验目的1,了解普通扬声器的工作原理;2,了解QuartusII4.1中提供了宏功能元件库mega_lpm。3,使用LPM_ROM参数化存储模块。二、实验内容及要求要求能够演奏出《友谊地久天长》的曲调或可另选一段较完整的曲调。(扩展要求:能够从数码管上显示出当前曲调的简谱和频率)SPEAKERCLKTONESPKS

2、U3NOTETABSTONEINDEXCLKU1TONETABHIGHINDEXCODETONEU2三、实验原理1,音符的频率:可以由上图中的U3获得,这是一个数控分频器。由其clk端输入一具有较高频率(这里是12MHz)的信号,通过U3分频后由SPKOUT输出,U3对clk输入信号的分频比由11位预置数Tone[10..0]决定。SPKOUT的输出频率将决定每一音符的音调,这样,分频计数器的预置值Tone[10..0]与SPKOUT的输出频率,就有了对应关系。2,音符的持续时间:须根据乐曲的速度及每个音符的节拍数来确定,图中模块U2的功能首先是为U3提供决定所发音符的分频

3、预置数,而此数在U3输入口停留的时间即为此音符的节拍值。模块U2是乐曲简谱码对应的分频预置数查表电路,其中设置了乐曲全部音符所对应的分频预置数(一共8个),每一音符的停留时间由音乐节拍和音调发生器模块U1的clk的输入频率决定(如为4Hz),这8个值的输出由对应于U2的3位输入值Index[2..0]确定。3,乐谱的存储:在U1中设置了一个7位二进制计数器(计数最大值为65),作为音符数据ROM的地址发生器。这个计数器的计数频率若选为4Hz,即每一计数值的停留时间为0.25秒,恰为当全音符设为1秒时,四四拍的4分音符持续时间。随着U1中的计数器按4Hz的时钟速率作加法计数时

4、,即随地址值递增时,音符数据ROM中的音符数据将从ROM中通过ToneIndex[2..0]端口输向U2模块,乐曲就开始连续自然地演奏起来了。音高频率对照表(徐老师给定发的原频率对照表中频率偏低)1234567低音261293329349396440493中音523587659698784880988高音1047117513191397156817601975四、实验仪器、材料1,2MHZ和4HZ的信号源2,ACEX1KEP1K30TC144—1芯片3,扬声器五、方案设计(设计性实验需要,综合性实验无该项)1,音符的产生:音符的产生是利用数控分频器模块SPKEAR对输入的时

5、钟信号CLK400KHZ进行分频,预置数为TONE[10..0],然后分频得出频率为CLK/2*(2048-TONE[10..0]),通过控制输入预置数TONE[10..0]来达到不同的输出频率,以达到控制扬声器发出不同的声音。例如:当设置预置数TONE[10..0]为1538时,输出SPKEAR频率为396,为低音5。2,频率的分频:由于实验给定信号源为12MHZ,不满足数控分频器模块SPKEAR对输入时钟信号的要求,遂其进行30分频(PULSE30),产生0.4MHZ的时钟信号。3,预置数的产生:预置数TONE[10..0]由模块TONETAB产生。模块TONETAB有

6、输入端口INDEX[2..0]送入音符,模块由CASE选择语句产生与INDEX[2..0]输入端口送入的音符相对应的预置数TONE[10..0],也同时产生其音符CODE[2..0]送入音符显示模块DISPCODE,和频谱频率frenquence[9..0]送入频率显示模块DISPFREN。例如:当输入端口INDEX[2..0]送入000(为低音5对应的编码),有CAES选择语句产生TONE[10..0]为1538,frenquence[9..0]为396以及CODE[2..0]为101的输出。4,音符的存储:音符的持续时间须根据乐曲的速度及每个音符的节拍数来确定。由存储模

7、块music_rom_data控制,以四分之一节拍为1个单位在LPM_ROM中进行存储音符的编码(例如本实验《友谊地久天长》中频谱共涉及了8个音符,使用3个二进制数分别对其编码进行存储;又有二分之一节拍数的音符存储2个单元,以此类推,直到对整首歌曲的乐谱存储结束)。存储模块music_rom_data的输出为数控分频器模块TONETAB的输入端INDEX[2..0]。音符与编码对照表:音符5(低音)123561(高音)6(低音)编码0000010100111001011101115,音符的输出驱动:音符的存储由计数

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

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

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