硬件电子琴电路模块方案设计课件_第1页
硬件电子琴电路模块方案设计课件_第2页
硬件电子琴电路模块方案设计课件_第3页
硬件电子琴电路模块方案设计课件_第4页
硬件电子琴电路模块方案设计课件_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、硬件电子琴电路模块方案设计1 实验四实验四 硬件电子琴电路模块设计硬件电子琴电路模块设计 硬件电子琴电路模块方案设计2 基础知识 一、节拍 1、在音乐中,时间被分成均等的基本单位, 每个单位叫做一个“拍子”或 称一拍。 2、拍子的时值是以音符的时值来表示的, 一拍的时值可以是四分音符(即以四分音 符为一拍),也可以是二分音符(以二分 音符为一拍)或八分音符(以八分音符为 一拍)。例2/4,3/4等 硬件电子琴电路模块方案设计3 3、拍子的时值是一个相对的时间概念 比如当乐 曲的规定速度为每分钟 60 拍时, 每拍占用的时间是一秒,半拍是二分之一 秒;当规定速度为每分钟 120 拍时,每拍 的时

2、间是半秒,半拍就是四分之一 秒。 在本次实验中,最小的节拍是1/4拍,规定 速度是每拍1秒。可以得到,在我们把音符 按照以1/4拍为单位存放到ROM里,而后以 4HZ频率读取,则可以实现乐曲的节拍。 硬件电子琴电路模块方案设计4 基础知识 二、音符与频率 乐曲中不同的音符实质上表示的是不同频 率的声音。 只要产生不同频率的脉冲,再通过喇叭等 播放出来即可。又由于方波容易用定时器 产生,故使用方波脉冲。 硬件电子琴电路模块方案设计5 基础知识 要产生音频脉冲: 1、算出某一音频的脉冲的周期(1/频率) 2、然后将此周期除以2,即为半周期的时间。 3、利用定时器,计时这个半周期的时间,每 当计时到

3、后,就将输出脉冲的I/O反相。 4、重复计时此半周期的时间再对I/O反相, 就可以在I/O脚上得到此频率的脉冲。 硬件电子琴电路模块方案设计6 例如,频率为523Hz, 其周期为1/523 S=1912uS, 因此只要令计数器计时956,在每计数956次时 就将I/O反接,就可得到中音DO(532Hz)。 其计数值N可以根据以下公式得到: 2N=Tr/Ti=Fi/Fr (Fi为内部时钟频率,Fr为对应音符频率) (Ti为内部时钟周期,Tr为对应音符周期) 硬件电子琴电路模块方案设计7 音符与频率对应表 硬件电子琴电路模块方案设计8 可以得到:如果以1MHZ为内部时钟频率, 要发出低7SI音(4

4、94HZ),我们需要计数 2024个1MHZ时钟周期,其中,当计数到 2024/2=1012个时钟时,将脉冲翻转一次。 结合前述的节拍,如果要发出低7SI音1拍, 则只要持续494HZ方波1秒钟即可,如果按 1/4拍单位存放到ROM里,ROM的读出时 钟是4HZ,那低7SI音应该装载几个存储单 元? 硬件电子琴电路模块方案设计9 本实验用FPGA实现乐曲的播放原理 分四步 1、将待播放的音乐音符存入ROM 2、以4HZ频率读取ROM 3、根据1MHZ的内部时钟要求,将读出的音 符换算成应计数的数值 4、以1MHZ为内部时钟,实现符合要求的方 波信号。 硬件电子琴电路模块方案设计10 硬件电子琴

5、电路设计方案硬件电子琴电路设计方案 硬件电子琴电路模块方案设计11 模块模块Speaker 模块模块Speakera中的主要电路是中的主要电路是一个数控分一个数控分 频器频器,它由一个初值可预置的加法计数器,它由一个初值可预置的加法计数器 构成,当模块构成,当模块Speakera由端口由端口Tone获得一获得一 个个2进制数后,将以此值为计数器的预置数进制数后,将以此值为计数器的预置数 ,对端口,对端口Clk12MHZ输入的频率进行分频,输入的频率进行分频, 之后由之后由Spkout向扬声器输出发声。向扬声器输出发声。 硬件电子琴电路模块方案设计12 模块模块TONE 模块模块Tone是音阶发

6、生器,当是音阶发生器,当8位发声控制输位发声控制输 入入Index中某一位为高电平时,则对应某一中某一位为高电平时,则对应某一 音阶的数值将从端口音阶的数值将从端口Tone输出,作为获得输出,作为获得 该音阶的分频预置值;同时由该音阶的分频预置值;同时由Code输出对输出对 应该音阶简谱的显示数码,如应该音阶简谱的显示数码,如5,并由,并由 High输出指示音阶高输出指示音阶高8度显示。度显示。 硬件电子琴电路模块方案设计13 增加乐曲自动演奏电路增加乐曲自动演奏电路 在原设计的基础上,增加一个在原设计的基础上,增加一个Notetabs模块用于模块用于 产生节拍控制(产生节拍控制(Index数

7、据存留时间)和音阶选数据存留时间)和音阶选 择信号,即在择信号,即在Notetabs模块放置一个乐曲曲谱真模块放置一个乐曲曲谱真 值表,乐曲曲谱真值表放置于名为值表,乐曲曲谱真值表放置于名为Music的的ROM 模块中。模块中。 由一个计数器来生成读取由一个计数器来生成读取ROM所需的地址数据,所需的地址数据, 对对ROM以以4HZ的频率进行读取,实现控制此真值的频率进行读取,实现控制此真值 表的输出,而由此计数器的计数时钟信号作为乐表的输出,而由此计数器的计数时钟信号作为乐 曲节拍控制信号,从而可以设计出一个纯硬件的曲节拍控制信号,从而可以设计出一个纯硬件的 乐曲自动演奏电路。乐曲自动演奏电

8、路。 硬件电子琴电路模块方案设计14 需要说明: 由于实验板上,只有50MHZ有源晶振,故将用 50MHZ进行分频实现12.5MHZ的时钟,在后续 模块Speakera.v中再分频得到近似1MHZ时钟, 要求自行设计50MHZ到12.5MHZ的分频模块: div_50_12M.v 系统需要4HZ频率读ROM,于是用50MHZ, 分频得到4HZ频率。要求自行设计50MHZ到4HZ 的分频模块:div_50_4HZ.v 由于这两个分频模块仿真时间较长,故这部分 不要求进行仿真不要求进行仿真。 硬件电子琴电路模块方案设计15 1、构建一个工程名为songer的工程 硬件电子琴电路模块方案设计16 由

9、File-New Project Wizard,弹出对话框,设置文件 夹目录,Project名称。 注意, 1 )不能将文件 夹放置在软件安 装目录下,应放 在E盘或DATA盘上 2)要求以自己 的学号作为文件 夹名 硬件电子琴电路模块方案设计17 正确选择FPGA目标器件和EDA工具,这次设计的仿 真工具采用Modelsim。 硬件电子琴电路模块方案设计18 分别输入ToneTaba.v和Speakera.v的 Verilog HDL文本,进行综合和功能仿真, 理解、验证模块功能。 硬件电子琴电路模块方案设计19 仿真激励文件生成 在New Source Wizard界面选择Verilog

10、Test Fixture,然后输入测试文件名 硬件电子琴电路模块方案设计20 选择要测试的模块 硬件电子琴电路模块方案设计21 测试文件相关设置完成 后,按Finish,ISE即 给出测试模块的框架 根据框架,考虑测试的 完备性,完善测试模块 硬件电子琴电路模块方案设计22 分别编写Notetabs .v 、ToneTaba.v和 div_50_12M.v的Verilog HDL测试文件,用 Modelsim进行功能仿真、时序仿真。观察波 形,理解模块实现的功能。 硬件电子琴电路模块方案设计23 下面讨论如何调用ROM的IPcore实现对音乐 的存储。 硬件电子琴电路模块方案设计24 IP核生

11、成器的启动方法有两种,一种是在核生成器的启动方法有两种,一种是在 【Projcet Navigator】中新建中新建Coregen IP 类型的资源类型的资源(请参考第请参考第2章中工程的建立与章中工程的建立与 管理管理);另一种是直接在;另一种是直接在Windows界面下运界面下运 行行【开始开始】【程序程序】【Xilinx ISE Design Suit 10.1】【ISE】【 Accessories】【CORE Generator】命命 令。令。 本次设计采用第一种方法。本次设计采用第一种方法。 硬件电子琴电路模块方案设计25 首先打开电脑上的记事本,按照COE文件 的格式要求输入梁祝音

12、乐或者自己编 辑的音乐数据,并存盘。 硬件电子琴电路模块方案设计26 COE文件内容 MEMORY_INITIALIZATION_RADIX = 10; MEMORY_INITIALIZATION_VECTOR= 3 , 3 , 3 , 3, 5, 5, 5,6, 8, 8, 8 , 9 , 6 , 8, 5, 5, 12,12,12, 15, 13 , 12 , 10 , 12, 9, 9, 9, 9, 9, 9, 9 , 0 , 9 , 9, 9, 10, 7, 7, 6, 6, 5 , 5 , 5 , 6, 8, 8, 9, 9, 3, 3, 8 , 8 , 6 , 5, 6, 8, 5

13、, 5, 5, 5, 5 , 5 , 5 , 5, 10, 10, 10, 12, 7, 7, 9 , 9 , 6 , 8, 5, 5, 5, 5, 5, 5, 3 , 5 , 3 , 3, 5, 6, 7, 9, 6, 6, 6 , 6 , 6 , 6, 5, 6, 8, 8, 8, 9, 12 ,12 ,12 ,10, 9, 9,10, 9,8, 8, 6 , 5 , 3 , 3, 3, 3, 8,8, 8,8, 6 , 8 ,6 , 5, 3, 5, 6,8, 5,5, 5 ,5 , 5 ,5, 5,5,0, 0, 0; 硬件电子琴电路模块方案设计27 硬件电子琴电路模块方案设计28 选择IP(CORE Generate NET Code1 LOC = F12 ; NET Code1 LOC = E12 ; NET Code1 LOC = E11 ; NET Code1 LOC = F11 ; NET High1 LOC = E9 ; NET reset LOC = D18|pulldown ; NET Spkout LOC = D7 ; 硬件电子琴电路模块方案设计35 用发光管LD3LD0显示Code3Code0表示琴音简谱 码,发光管LD5显示高8度,Spkout接J4的D7端口)。 当程序下载到Spant

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论