资源描述:
《基于vhdl简易音乐播放器设计说明书》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、EDA技术实用教程课程设计简易音乐播放器电子12-1120604012439简易音乐播放器设计1.MIDI概述MIDI(MusicalInstrumentDigitalInterface)乐器数字接口,是20世纪80年代初为解决电声乐器之间的通信问题而提出的。MIDI是编曲界最广泛的音乐标准格式,可称为“计算机能理解的乐谱”。它用音符的数字控制信号来记录音乐。一首完整的MIDI音乐只有几十KB大,而能包含数十条音乐轨道。MIDI应用也比较广泛,电视晚会的音乐编导可以用MIDI功能辅助音乐创作,或按MIDI标准生成音乐
2、数据传播媒介,或直接进行乐曲演奏。如果在计算机上装备了高级的MIDI软件库,可将音乐的创作、乐谱的打印、节目编排、音乐的调整、音响的幅度、节奏的速度、各声部之间的协调、混响由MIDI来控制完成。利用MIDI技术将电子合成器、电子节奏机(电子鼓机)和其他电子音源与序列器连接在一起即可演奏模拟出气势雄伟、音色变化万千的音响效果,又可将演奏中的多种按键数据存储起来,极大的改善了音乐演奏的能力和条件。2.工作原理MIDI音乐是Windows下的一种合成音乐,由于它通过记谱的方式来记录一段音乐。因此与wave音乐相比,它可以极
3、大的减少存储容量。MIDI音乐的基本原理为:组成乐曲的每一个音符的频率值(音调)及其持续的时间(音长)是乐曲能连续演奏的两个基本数据,因此只要控制输出到扬声器的激励信号频率的高低和每一个频率信号持续时间,就可以使扬声器发生连续的乐曲。图1是歌曲《生日快乐歌》开头一句的简谱。由图1可知,该乐典涉及:中音5,6,7;高音1,2,3,4,5。以此为例下面介绍在本音乐发生器芯片中音乐的形成过程。前两个音符为中音5,1/16音符,它对应的编码为1000,所占的脉冲个数为2,这样逐个将以上的简谱翻译成代码如下:
4、10001000
5、1001100110001000
6、101110111010101010101010
7、
8、100010001001100110001000
9、110011001011101110111011
10、
11、100010001111111111011101
12、101110111010101010011001
13、
14、111011101101110110111011
15、110011001011101110111011
16、图1《生日快乐歌》歌谱在节奏时钟脉冲的控制下,将每个代码所对应的分频系数逐一赋给基频,得到对应的音调,这样连续起来就形成一段美妙的音
17、乐。本设计的关键是要准确地产生音乐中各音符所对应的频率信号,并根据乐曲要求按节拍输出。为了减少系统复杂性,本设计根据可变模值计数器的原理,按39照乐曲要求定时改变计数器的预置数,即可产生乐曲所需要的频率信号。芯片原理框图如图2所示。图2中节拍控制电路产生节拍定时信号;音符产生电路按节拍要求产生乐曲所需要的音符;预值数产生电路受音符控制,产生该音符频率相对应的预置数,送计数器的置入数据输入端。音符频率发生器根据不同的预置数产生相应的频率信号,从而完成乐曲的演奏功能。图2播放器原理1.音乐编码模块此模块包括节拍控制电路和
18、音符产生电路。节拍控制电路以乐曲中最短音符的节拍为基准,产生乐曲所需要的全部节拍。因为乐曲《生日快乐歌》中最短音符为1/4节拍,全曲共有48个1/4节拍,故节拍控制器至少需要产生48个有效状态。考虑到一遍演奏完需要间隔时间,所以选定节拍控制计数器CNT1的计数状态为48+4个,其中间隔时间为4个有效状态。本例要求演奏时能循环进行,因此需要另外设置一个时长计数器,当乐曲演奏完成时,保证能自动从头开始演奏。音符产生电路采用查找表形式.在节拍控制产生电路的节拍信号作用下,按乐曲中音符持续时间的长短输出相应音符名称。以乐曲中
19、前两个音节为例,其音符输出查找表如表1所示。391.音调发生模块此模块包括预值数产生电路和频率发生器。预值数产生电路设计采用查找表形式,按照音符的频率要求产生相应的预置数。根据可变模值计数器的设计原理及音符的分频系数,可计算出乐曲《生日快乐歌》中各音符的预置数如表2所示。表2音频的分频和预置数频率发生器由可变模值计数器实现.由于系统要求产出的信号频率较高,因此选用2MHz高频脉冲信号作为可变模值计数器的计数脉冲。此片段内各音阶频率及相应的分频如表3所示。为了减少输出的偶次谐波分量,最后输出到扬声器的波形应为对称方波,
20、考虑到输出信号是脉冲极窄的脉冲式信号,为了有利于驱动扬声器,可以在到达扬声器之前,有一个二分的分频器,或在计数器输出端外加一个D触发器也可以均衡占空比。当然,如果输出到扬声器的信号采用正弦波代替对称方波将会有更好的效果。表3音符与频率对照表由于最大的分频系数为5102,故采用13位十二进制计数器已能满足分频要求。在表3中除给出了分频比以外,还给