名称:电子琴模拟设计VHDL代码Quartus仿真
软件:Quartus
语言:VHDL
代码功能:
电子琴模拟
1、输入7个按键,模拟琴键,对应7个音阶
2、通过控制产生不同频率,发出不同音调的声音
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1.工程文件
2.程序文件
3.程序编译
4.RTL图
5.仿真图
部分代码展示:
LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY music IS PORT ( sysclk : IN STD_LOGIC;--时钟 keys : IN STD_LOGIC_VECTOR(6 DOWNTO 0);--7个琴键 LED : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);--3个LED显示节拍1~7 spkout : OUT STD_LOGIC--蜂鸣器信号 ); END music; ARCHITECTURE behavioral OF music IS --蜂鸣器控制模块 COMPONENT music_ctrl IS PORT ( sysclk : IN STD_LOGIC; tonestep : IN STD_LOGIC_VECTOR(7 DOWNTO 0);--频率控制字 spkout : OUT STD_LOGIC--蜂鸣器输出 ); END COMPONENT; --频率控制字产生模块 COMPONENT musicdec IS PORT ( keys : IN STD_LOGIC_VECTOR(6 DOWNTO 0);--7个琴键 LED : OUT STD_LOGIC_VECTOR(2 DOWNTO 0);--3个LED显示节拍1~7 tonestep : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--输出频率控制字 ); END COMPONENT; SIGNAL tonestep : STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN --调用频率控制字产生模块 u_musicdec : musicdec PORT MAP ( keys => keys,--7个琴键 LED => LED,--3个LED显示节拍1~7 tonestep => tonestep--输出频率控制字 );
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1281
阅读全文
583