当前位置:   article > 正文

电子琴设计Verilog代码远程云端平台Quartus_电子琴verilog

电子琴verilog

名称:电子琴设计Verilog代码远程云端平台Quartus

软件:Quartus

语言:Verilog

代码功能:

电子琴 

要求能切换手动弹奏和自动播放模式 

手动弹奏模式下 分高低两个音域 可通过 1 2 3 4 5 6 7共7个按键,可通过14个按键来弹奏 且通过一个显示模块显示按键。

播放模式下可播放储存的音乐。

本代码已在远程云端平台验证,远程云端平台如下,其他远程云端平台可以修改管脚适配:

远程平台照片.png

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. 仿真文件testbench

7. 仿真图

整体仿真图

控制模块

分频模块

显示模块

部分代码展示:

//电子琴
module dianziqin(clk,keys,BEEP,auto_key,seg_select,bit_select);
input        clk;//10MHz
input        [13:0]keys;//14个琴键
input  auto_key;//自动播放开关,1自动播放,0按键模式
output       BEEP;//蜂鸣器输出
output [7:0] seg_select;//数码管段选显示
output [3:0] bit_select;//数码管位选显示
wire [11:0] add_step;
wire [7:0] key_num;//按键号
//分频模块
div_clk i_div_clk(
.clk(clk),
.auto_key(auto_key),
.keys(keys),
.BEEP(BEEP),
.add_step(add_step)
);
//琴键控制
control i_control(
.clk(clk),
.keys(keys),
.key_num(key_num),
.add_step(add_step),
.auto_key(auto_key)
);
//数码管显示模块
display i_display(
.clk_in(clk),
.key_num(key_num), 
.seg_select(seg_select),
.bit_select(bit_select)
);
endmodule
源代码

 扫描文章末尾的公众号二维码

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/710764
推荐阅读
相关标签
  

闽ICP备14008679号