基于EDA乐曲硬件演奏电路.doc

上传人:h**** 文档编号:129550 上传时间:2018-07-09 格式:DOC 页数:13 大小:785.50KB
下载 相关 举报
基于EDA乐曲硬件演奏电路.doc_第1页
第1页 / 共13页
基于EDA乐曲硬件演奏电路.doc_第2页
第2页 / 共13页
基于EDA乐曲硬件演奏电路.doc_第3页
第3页 / 共13页
基于EDA乐曲硬件演奏电路.doc_第4页
第4页 / 共13页
基于EDA乐曲硬件演奏电路.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、沈阳工程学院课程设计(论文) 1 引 凌阳, 拇指 凌阳 言 凌阳, 拇指 凌阳 基本要求 凌阳, 拇指 凌阳 利用 FPGA,设计一个乐曲硬件演奏电路 。 食指 演奏时可选择键盘输入乐曲或者已存入的乐曲 , 拇指 并配以一个小扬声器 。 食指 乐曲的 12 平均率规定:每 2 个八度音 (如简谱中的中音 1 与高音 1)之间的频率相差 1 倍 。 食指 在 2 个八度音之间 , 拇指 又可分为 12个半音 , 拇指 每 2 个半音的频率比为 12/2。 食指 另外 , 拇指 音符 A(简谱中的低音 6)的频率为 440Hz, 拇指 音符 B 到 C 之间、 E 到 F 之间为半音 , 拇指

2、其余为全音 。 食指 由此可以计算出简谱中从低音 l 至高音 1 之间每个音符的频率 。 食指 设计音符查找表电路模块 , 拇 指时钟模块 , 拇指 数控分频器模块 , 拇指 音乐节拍产生模块电路 。 食指 任意选择歌曲进行设计 。食指 凌阳, 拇指 凌阳 原理描述 凌阳, 拇指 凌阳 产生音乐的两个因素是音乐频率和音乐的持续时间 , 拇指 以纯硬件完成演奏电路比利用微处理器来实现乐曲演奏要复杂的多 , 拇指 如果不凭借 EDA 工具和硬件描述语言 , 拇指 凭借传统的数字逻辑技术 , 拇指 即使最简单的演奏电路也难以实现 。 食指 乐曲硬件演奏电路系统主要有数控分频器和乐曲存储模块组成 。

3、食指 数控分频器对 FPGA 的基准频率进行分频 , 拇指 得到与各个音阶对应的频率输出 。 食指 乐曲存储模块产生节拍控制和音 阶选择信号 , 拇指 即在此模块中可存放一个乐曲曲谱真值表 , 拇指 由一个计数器来控制此真值表的输出 , 拇指 而由计数器的计数时钟信号作为乐曲节拍控制信号 。 食指乐曲演奏电路的结构框图如下: 凌阳, 拇指 凌阳 2 凌阳, 拇指 凌阳 图 1.1 凌阳, 拇指 凌阳 乐曲演奏电路的结构框图 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指

4、 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 乐曲硬件演奏电路的层次化设计方案 凌阳, 拇指 凌阳 音乐节拍发生器 NoteTabs 凌阳, 拇指 凌阳 该模块将利用 FPGA 的片内 POM 存放乐曲简谱真值表 , 拇指 该计数器的计数频率为4HZ, 拇指 即每一个数值的停留时间为 0.25S, 拇指 随着 NoteTabs 中计数器按 4HZ 的时钟频率做加法计数时 , 拇指 乐符数据叫输向音符译码电路 ToneTaba, 拇指 所以所存的乐曲就自然的演奏起来 。 食指

5、凌阳, 拇指 凌阳 数控分频器电路 基准时钟 音符查表电路 音乐节拍发生电路 手动输入 时钟电路 模式选择 3 其 VHDL 源程序如下: 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 LIBRARY 凌阳, 拇指 凌阳 IEEE;凌阳, 拇指 凌阳 USE 凌阳, 拇指 凌阳 IEEE.STD_LOGIC_1164.ALL;凌 阳, 拇指 凌阳 ENTITY 凌阳, 拇指 凌阳 NoteTabs 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PORT 凌阳, 拇指 凌阳 ( 凌阳, 拇指 凌阳 clk 凌阳, 拇指 凌

6、阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 IN 凌阳, 拇指 凌阳 STD_LOGIC;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 OUT 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 15 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 );凌阳, 拇指 凌阳 END

7、;凌阳, 拇指 凌阳 ARCHITECTURE 凌阳, 拇指 凌阳 one 凌阳, 拇指 凌阳 OF 凌阳, 拇指 凌阳 NoteTabs 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指凌阳 凌阳, 拇指 凌阳 SIGNAL 凌阳, 拇指 凌阳 Counter 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 138;凌阳, 拇指 凌阳 BEGIN 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌

8、阳, 拇指 凌阳 CNT8 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 PROCESS(clk)凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 BEGIN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 IF 凌阳, 拇指 凌阳 Counter 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 138 凌阳, 拇指 凌阳 THEN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Counter 凌阳, 拇指 凌阳 凌阳, 拇指

9、 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

10、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

11、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

12、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

13、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指

14、 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指

15、 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指

16、 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

17、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

18、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

19、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

20、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

21、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇

22、指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ToneIndex 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 NULL;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳

23、凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 CASE;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 PROCESS;凌阳, 拇指 凌阳 END;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 7 凌阳, 拇指 凌阳 图 2.1 音乐节拍发生器元件符号图 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 仿真图如下: 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 图 2.2 音

24、乐节拍发生器 仿真输出波形 凌阳, 拇指 凌阳 音符译码电路 ToneTaba 模块 凌阳, 拇指 凌阳 音符译码电路即音调发生器实际上是一个查表电路 , 拇指 放置 21 个音乐简谱对应 的频率表 , 拇指 根据该表为数控分频模块提供所发音符频率的初始值 , 拇指 而此数控分频模块入口的停留时间即为此音符的节拍数 , 拇指 以 VHDL 程序中仅设置了“梁祝”乐曲全部音符所对应的音符频率的初始值 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 其 VHDL 源程序如下 : 凌阳, 拇指 凌阳 LIBRARY 凌阳, 拇指 凌阳 I

25、EEE;凌阳, 拇指 凌阳 USE 凌阳, 拇指 凌阳 IEEE.STD_LOGIC_1164.ALL;凌 阳, 拇指 凌阳 ENTITY 凌阳, 拇指 凌阳 ToneTaba 凌阳, 拇指 凌阳IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PORT 凌阳, 拇指 凌阳 ( 凌阳, 拇指 凌阳 Index 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 IN 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 15;凌阳, 拇指 凌阳

26、 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 CODE 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 OUT 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 15;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇

27、指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 HIGH 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 OUT 凌阳, 拇指 凌阳 STD_LOGIC; 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 OUT 凌阳, 拇指 凌阳 INTEGER 凌阳,

28、拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 16#7FF# 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 );凌阳, 拇指 凌阳 END;凌阳, 拇指 凌阳 ARCHITECTURE 凌阳, 拇指 凌阳 one 凌阳, 拇指 凌阳 OF 凌阳, 拇指 凌阳 ToneTaba 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 BEGIN 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Search 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 PROCESS(Index)凌阳, 拇指 凌阳 凌阳, 拇指

29、凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 BEGIN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 CASE 凌阳, 拇指 凌阳 Index 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指

30、凌阳 - 凌阳, 拇指 凌阳 译码电路 , 拇指 查表方式 , 拇指 控制音调的预8 置数 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 WHEN 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳

31、Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳 ,拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 NULL;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇

32、指 凌阳 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 CASE;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 PROCESS;凌阳, 拇指 凌阳 END;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 在源程序中 Index 是音乐节拍发生器输出的音符数据; TONE 是为数控分频模块提供的音符频率的初始值 , 拇指 为方便测试 , 拇指 特设置了一个音名代码显示输出 CODE和音高指示信号 HUGH 可以通过一个数码管或 LED 来显示乐曲演奏时对应的音

33、符和高音名 。 食指 CODE 输出对应该音阶简谱的显示数码 1, 拇指 HIGH 输出为高电平 , 拇指 指示音阶为高 , 拇指 HIGH 输出为低电平时则指示音阶为中音 。 食指 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 图 2.3 凌阳, 拇指 凌阳 音符译码器元件符号图 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 仿真图如下: 凌阳, 拇指 凌阳 9 凌阳, 拇指 凌阳 图 2.4 凌阳, 拇指 凌阳 音符译码器仿真输出波形 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 2.3 凌阳, 拇指 凌阳 数控分频模块 (Speakera)设计 凌阳, 拇指 凌阳 数控分频器对 FPG

34、A 的基准频率进行分频 , 拇指 得到与各个音阶 对应的频率输出 。 食指数控分频模块是 11 位的加法计数器构成 。 食指 当计数器计满是 , 拇指 产生一个进位信号FULLSPKS, 拇指 该信号就是用作发音的频率信号 。 食指 在即使器的预置端给定不同的初始值 , 拇指 其输出将产生不同的频率信号 , 拇指 频率信号初值 Tone 就是前级音符译码电路的输出 。 食指 低音时 , 拇指 Tone 值小 , 拇指 分频比大 , 拇指 进位信号 SPKS 的周期长 , 拇指 扬声器发出的声音低 , 拇指 Tone 随音乐的乐谱而变化 , 拇指 自动控制分频比 , 拇指 从而实现数控分频 ,

35、拇指 发生信号的频率与 Tone 成正比 , 拇指 这就是利用数控分频器演奏音乐 的原理 。 食指 凌阳, 拇指 凌阳 通过分频后其进位信号 FULLSPJKS 是一周期脉冲信号 , 拇指 为有利于驱动扬声器 ,拇指 在音调输出时再进行 2 分频 , 拇指 将脉冲展宽 , 拇指 使之占空比为 50%, 拇指 扬声器这样就有足够的发声功率 。 食指 凌阳, 拇指 凌阳 其 VHDL 源程序如下: 凌阳, 拇指 凌阳 LIBRARY 凌阳, 拇指 凌阳 IEEE;凌阳, 拇指 凌阳 USE 凌阳, 拇指 凌阳 IEEE.STD_LOGIC_1164.ALL;凌 阳, 拇指 凌阳 ENTITY 凌阳

36、, 拇指 凌阳 Speakera 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PORT 凌阳, 拇指 凌阳 ( 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 clk 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 IN 凌阳, 拇指 凌阳 STD_LOGIC;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳,

37、 拇指 凌阳 凌阳, 拇指 凌阳 Tone 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 IN 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 16#7FF#;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 SpkS 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 OUT 凌阳, 拇指

38、 凌阳 STD_LOGIC 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 );凌阳, 拇指 凌阳 END;凌阳, 拇指 凌阳 ARCHITECTURE 凌阳, 拇指 凌阳 one 凌阳, 拇指 凌阳 OF 凌阳, 拇指 凌阳 Speakera 凌阳, 拇指 凌阳 IS 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 SIGNAL 凌阳, 拇指 凌阳 PreCLK 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 STD_LOGIC;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 SIGNAL 凌阳, 拇

39、指 凌阳 FullSpkS 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 STD_LOGIC;凌阳, 拇指 凌阳 BEGIN 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 DivideCLK 凌阳, 拇指 凌阳: 凌阳, 拇指 凌阳 PROCESS(clk)凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 VARIABLE 凌 阳, 拇指 凌阳 Count4 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 INTEGER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0

40、 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 15;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 BEGIN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PreCLK 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 11 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 THEN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 10 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳

41、凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 PreCLK 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 1;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Count4 凌阳, 拇指 凌阳 := 凌阳, 拇指 凌阳 0;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指

42、凌阳 凌阳, 拇指 凌阳 凌阳 ,拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ELSIF 凌阳, 拇指 凌阳 clkEVENT 凌阳, 拇指 凌阳 AND 凌阳, 拇指 凌阳 clk 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 1 凌阳, 拇指 凌阳 THEN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Count4 凌阳, 拇指 凌

43、阳 := 凌阳, 拇指 凌阳 Count4 凌阳, 拇指 凌阳 + 凌阳, 拇指 凌阳 1; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 IF;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指

44、凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 END 凌阳, 拇指 凌阳 PROCESS;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 GenSpkS 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 PROCESS(PreCLK, 凌阳, 拇指 凌阳 Tone)凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 VARIABLE 凌 阳, 拇指 凌阳 Count11 凌阳, 拇指 凌阳 : 凌阳, 拇指 凌阳 INTE

45、GER 凌阳, 拇指 凌阳 RANGE 凌阳, 拇指 凌阳 0 凌阳, 拇指 凌阳 TO 凌阳, 拇指 凌阳 16#7FF#;凌阳 ,拇指 凌阳 BEGIN 凌 阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 IF 凌阳, 拇指 凌阳 PreCLKEVENT 凌阳, 拇指 凌阳 AND 凌阳, 拇指 凌阳 PreCLK 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 1 凌阳, 拇指 凌阳 THEN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇

46、指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 IF 凌阳, 拇指 凌阳 Count11 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 16#7FF# 凌阳, 拇指 凌阳 THEN 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳

47、 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 Count11 凌阳, 拇指 凌阳 := 凌阳, 拇指 凌阳 Tone;凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳 ,拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 FullSpkS 凌阳, 拇指 凌阳 = 凌阳, 拇指 凌阳 1; 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指凌阳 凌阳, 拇指 凌阳凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 凌阳, 拇指 凌阳 ELSE 凌阳, 拇指 凌阳 凌阳,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。