具有自动乐曲演奏功能的电子琴设计dzgq.docx
《具有自动乐曲演奏功能的电子琴设计dzgq.docx》由会员分享,可在线阅读,更多相关《具有自动乐曲演奏功能的电子琴设计dzgq.docx(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、具有自动动乐曲演演奏功能能的电子子琴设计计先给出设设计结果果视频链链接:具有自自动乐曲曲演奏功功能的电电子琴-视频实实录 本文为为本人于于20112年下下学期做做的EDDA数字字系统设设计,文文章详细细介绍了了“具有有自动乐乐曲演奏奏功能的的电子琴琴”的FFPGAA设计原原理与方方法,使使用了RROM存存储音符符和节拍拍,矩阵阵键盘控控制整个个系统。一、选题题目的 电电子设计计自动化化,简称称EDAA(Ellecttronnic Dessignn Auutommatiion),发发展迅速速,应用用范围日日益扩大大。它以以计算机机为工具具,设计计者在EEDA软软件平台台上,用用硬件描描述语言言V
2、HDDL完成成设计文文件,然然后由计计算机自自动地完完成逻辑辑编译、化化简、分分割、综综合、优优化、布布局、布布线和仿仿真,直直至对于于特定目目标芯片片的适配配编译、逻逻辑映射射和编程程下载等等工作。EEDA技技术的出出现,极极大地提提高了电电路设计计的效率率和可操操作性,减减轻了设设计者的的劳动强强度。 本文文应用VVHDLL硬件描描述语言言,以QQuarrtuss8.0为开开发工具具设计了了一个具具有自动动演奏乐乐曲功能能的电子子琴系统统,它能能将预先先存储在在ROMM中的多多首乐曲曲自动播播放出来来,并同同时显示示音符,此此外,还还具有电电子琴弹弹奏的功功能。选选题新颖颖、实用用,趣味味
3、性、综综合性较较强。二、设计计目标1. 采采用444矩阵键键盘作为为:电子子琴按键键,高、中中、低音音选择键键,自动动播放和和电子琴琴弹奏功功能选择择键,乐乐曲选择择键。22. 使使用ROOM存储储乐曲,达达到只要要在其中中存储乐乐曲音符符节拍的的信息即即可自动动播放的的目的,对对乐曲的的编码要要简单易易用。33. 可可自动播播放世世上只有有妈妈好好、长长亭送别别、十十年三三首歌曲曲,带选选歌和自自动循环环播放的的功能。4. 实实时显示示正在播播放的音音符。5. 设设计要具具有模块块化,层层次化的的特点。6. 波波形仿真真时采用用时序仿仿真,以以更加贴贴近实际际,使系系统的实实际效果果达到最最
4、佳。三、实现现方案1. 原原理框图图 具有自自动乐曲曲演奏功功能的电电子琴系系统的原原理结构构框图如如下:图1 硬硬件系统统结构框框图 图2 软软件系统统结构框框图图3 乐乐曲自动动播放模模块结构构框图 图4 乐乐曲弹奏奏模块结结构框图图2. 设设计流程程图 具有自自动乐曲曲演奏功功能的电电子琴系系统的VVHDLL程序设设计流程程图如下下图5:图5 程程序设计计流程图图四、设计计过程1. 音音乐基础础知识 简谱谱应该说说是一种种比较简简单易学学的音乐乐记谱法法。它的的最大好好处是仅仅用7个个阿拉伯伯数字-123345667,就就能将万万千变化化的音乐乐曲子记记录并表表示出来来,并能能使人很很快
5、记住住而终身身不忘;同时涉涉及其他他的音乐乐元素也也基本可可以正确确显示。简简谱虽然然不是出出现在中中国,但但是好像像只有在在中国得得到非常常广泛的的传播。 乐音的的特性:它由四四个方面面组成:音高、音音值、音音量、音音色。 音高:由物体体在一定定的时间间内震动动的次数数决定,震震动次数数多,因因则高,反反之,则则低。 音值:即音的的长短,是是由音的的延续时时间的不不同而决决定的,音音的延续续时间长长,音则则长,反反之,则则短。 音量:即音的的强与弱弱,由震震幅的大大小决定定,震幅幅大,音音则强,反反之,则则弱。 音色:有发音音体的性性质决定定,发音音体的形形状及泛泛音的多多少决定定音色的的不
6、同,例例如,小小提琴、钢钢琴等各各种乐器器的音色色都是不不同的,在在合奏时时,人们们可清楚楚地辨认认。 乐乐音体系系:在音音乐使用用中有固固定音高高的音的的总和叫叫乐音体体系。 音级:乐音体体系中的的各音叫叫音级,音音级有基基本音级级与变化化音级两两种。 基本音音级:在在音乐中中经常使使用的七七个具有有独立名名称的音音叫基本本音级。基基本音级级的名称称用字母母或唱名名两种方方式来标标记。 音名:用C、DD、E、FF、G、AA、B来来标记基基本音级级的叫音音名,它它表示一一定的音音高,简简谱中用用1,22,3,4,55,6,7来标标记。 唱名:用doo、ree、mii、faa、sool、lla、
7、ssi作为为音级名名称的叫叫唱名。 音符:用以记记录音的的长短高高低的符符号叫音音符(以以符头在在谱表上上的位置置来表示示音的高高低,以以形状表表示音的的长短,音音符有符符头、符符干、符符尾三部部分或其其中某些些部分组组成,而而在简谱谱中以11 2 3 44 5 6 77或其上上下加点点来表示示不同音音高,以以短下划划线(_)或横横()来表示示音的长长短)。 下面重重点介绍绍组成音音乐的两两个最基基本的要要素:每每个音符符发音的的频率及及其持续续的时间间。 1.11 音符符和频率率的关系系 乐曲的的十二平平均律规规定:每每2 个个八度音音(如简简谱中的的中音11与高音音1)之之间的频频率相差差
8、一倍。在在2个八八度音之之间,又又可分为为12个个半音,每每2个半半音的频频率比为为。另外外,简谱谱中的低低音6的的频率为为4400Hz,音音符7到到1之间间、3到到4之间间为半音音,其余余为全音音。由此此可计算算出简谱谱中从低低音1至至高音77之间每每个音符符的频率率,如下下表1所所示:表1 简简谱中音音符与频频率的关关系音名频率(HHz)音名频率(HHz)音名频率(HHz)低音1261.6中音1523.3高音110466.5低音2293.7中音2587.3高音211744.7低音3329.6中音3659.3高音313188.5低音4349.2中音4698.5高音413966.9低音5392
9、中音5784高音515688低音6440中音6880高音617600低音7493.9中音7987.8高音719755.5 1.22 音符符的长短短 表示音音乐的长长短需要要有一个个相对固固定的时时间概念念。简谱谱里将音音符分为为全音符符、二分分音符、四四分音符符、十六六分音符符、三十十二分音音符等,如如下表22。在这这几个音音符里面面最重要要的是四四分音符符,它是是一个基基本参照照度量长长度,即即四分音音符为一一拍。这这里一拍拍的概念念是一个个相对时时间度量量单位。一一拍的长长度没有有限制,可可以是11秒 也也可以是是2秒或或半秒。假假如一拍拍是一秒秒的长度度,那么么二拍就就是两秒秒;一拍定为
10、为半秒的的话,两两拍就是是一秒的的长度。一一旦这个个基础的的一拍定下下来,那那么比一一拍长或或短的符符号就相相对容易易了。正正如五线线谱的附附点一样样,数字字后方加加一点会会将音符符长度增增加一半半。表2 简简谱中音音符长度度音符名称称记法时值编码全音符5 四拍16二分音符符5 二拍8四分音符符5一拍4八分音符符半拍2十六分音音符四分之一一拍1三十二分分音符八分之一一拍2. VHDDL程序序设计 2.1 顶顶层文件件 采用原原理图输输入法设设计,其其原理图图如下:图6 mmusiic_pplayyer原原理图 各模块块的设计计如下。 2.2 音音符的编编码及音音乐的存存储 22.2.1 音音符
11、的编编码 休止止符的编编码为:0;音音符长度度的编码码见表22。音名名的编码码如下表表3所示示:表3音名名的编码码音名编码音名编码音名编码低音111中音11高音121低音212中音22高音222低音313中音33高音323低音414中音44高音424低音515中音55高音525低音616中音66高音626低音717中音77高音7272.2.2 音音乐的存存储 以十进进制将音音乐分别别存储于于notte_rrom和和ticck_rrom两两个模块块中,前前者为音音符,后后者为音音符的长长度,下下面给出出世上上只有妈妈妈好的的存储过过程。在在Quaartuus III 主主窗体中中选择TTooll
12、sMMegaaWizzarddPluuge-In Mannageer,弹弹出如下下对话框框,单击击Nexxt继续续。图 7 MeegaWWizaardPPlugge-IIn MManaagerr第一页页按下图选选择并填填入文件件名,点点击Neext。图 8 MeegaWWizaardPPlugge-IIn MManaagerr第二页页 由由于音符符编在116到332之间间,所以以q选为为5位即即可,容容量选为为10224个字字如下图图所示图 9 数据据和地址址宽度的的选择在下图中中取消“qoutput port”前面的勾,点击Next继续。图 100 寄寄存器信信号的选选择在下图中中,按图图示
13、选择择并填入入notte_rrom.miff,点击击Nexxt继续续。图 111 指指明ROOM初始始化文件件图 122 完完成ROOM的定定制2.2.3 建建立ROOM初始始化文件件 初始始化ROOM的数数据文件件有.mmif格格式和.hexx格式,这这里采用用.miif格式式,可以以用文本本编辑器器编辑,也也可以用用Quaartuus III自带带的功能能产生RROM数数据文件件。定制一一个5112*88的ROOM的初初始化.miff文件可可按下列列步骤进进行:选选择菜单单Fille | Neew,在在对话框框中选择择Memmoryy Innitiialiizattionn Fiile,然
14、然后输入入5122和8,如如下图113(aa)所示示,点击击OK随随即打开开.miif文件件,如下下图133(b)所所示,然然后可在在其中输输入数据据,默认认为十进进制。 (a)RROM的的初始化化设置 (bb)初始始化的空空的ROOM文件件图13 ROMM初始化化2.2.4 在在ROMM中存储储音乐以世上上只有妈妈妈好为为例,其其简谱如如下图所所示:图14 世上只只有妈妈妈好简谱谱 根据据前述对对音符的的编码规规则,可可知第一一个音为为中音66,时值值为拍,存存储为66和6;再如第第二个音音符为中中音5,时时值拍,存存储为55和2;又如第第五个音音符为高高音5,时时值1拍拍,存储储为211和
15、4。依依此类推推,可将将整首乐乐曲存储储如下:(a)note_rom.mif文件 (b)tick_rom.mif文件图15 世上只只有妈妈妈好简谱谱在ROOM中的的存储其它两首首乐曲的的存储与与此类似似,且存存储在同同一个nnotee_room.mmif和和ticck_rrom.miff文件中中即可。3.键盘盘控制模模块3.1扫扫描及编编码 矩阵阵式键盘盘是一种种常见的的输入装装置,根根据其电电路连接接有共阴阴极和共共阳极两两种连接接方式,可可以采用用逐行或或逐列扫扫描法获获得按键键值。本本文根据据实验室室提供的的共阳极极矩阵键键盘设计计,其示示意图如如图166所示,定定义各功功能键如如下图1
16、17所示示,其中中177对应简简谱的117音音符,HH、M、LL分别为为高、中中、低音音选择键键,APP(Auuto Plaay)为为自动播播放选择择键,EEO(EElecctroonicc Orrgann)为电电子琴弹弹奏选择择键,SSongg为自动动播放时时的歌曲曲选择键键,三个个短“-”代表表休止符符。 图16 共阳极极矩阵式式键盘示示意图 图图17本本系统矩矩阵键盘盘功能键键示意 下面面介绍扫扫描原理理,采取取逐行扫扫描法,以以01111、110111、11101、111100的顺序序依次扫扫描,然然后读取取列引脚脚的电平平信号即即可判断断哪个按按键按下下。例如如,当扫扫描信号号为10
17、011时时,表示示在扫描描第二行行,若列列读出的的电平信信号为111011,则可可知第33列的键键被按下下,即第第二行第第3列的的键“77”被按按下,其其它按键键依次类类推,下下表4中中列出了了4*44矩阵键键盘扫描描时的情情况表4 按按键扫描描信息对对照表 列列行 0111110111110111110011111011111234无10111567H无11011APEOSonggM无11100-L无对该矩阵阵键盘按按从上到到下、从从左至右右的顺序序编码,依依次为:1,22,3,4,55,6,7,88,9,10,11,12,13,14,15,16 。扫描时,选选取的扫扫描频率率为1KKHz,
18、由由1MHHz分频频得到,具具体见源源程序。3.2 消抖 通通常的按按键所用用开关为为机械弹弹性开关关,当机机械触点点断开、闭闭合时,由于机机械触点点的弹性性作用,一一个按键键开关在在闭合时时不会马马上稳定定地接通通,在断断开时也也不会一一下子断断开。因因而在闭闭合及断断开的瞬瞬间均伴伴随有一一连串的的抖动,如如右图。抖抖动时间间的长短短由按键键的机械械特性决决定,一一般为55ms10mms。这这是一个个很重要要的时间间参数,在在很多场场合都要要用到。图188 按键键抖动 常见见的消抖抖方法有有采样型型防抖微微分电路路、D型型触发器器、移位位寄存器器、计数数器,结结合各消消抖法的的特点,本本文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 具有 自动 乐曲 演奏 功能 电子琴 设计 dzgq
限制150内