• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

音乐流水灯音乐播放器数码管Verilog代码

05/16 13:26
866
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1-23092622144XW.doc

共1个文件

名称:音乐流水灯音乐播放器数码管(代码在文末付费下载)

软件:Quartus

语言:Verilog

要求:

要求设计一个基于FPGA的带数码管显示的音乐流水灯装置。

1、在EDA工具Quartusll13.0平台上,运用Verilog语言模块化与层次化的设计方法,编写单一状态机控制各个模块,并实现流水灯?闪烁、数码管显示及音乐播放等功能。

2、设计代码简洁,系统稳定,便于维护和修改,灵活性强。

3、可根据用户的喜好改变乐曲、流水灯闪烁方式以及数码管显示内容。

演示视频:

部分代码展示

module?music(sysclk,key_speed,key_style,?model_Key,led,?spkout,HEX0);
???input???????????sysclk;//50M晶振
input?key_speed;//切换速度,按下高电平
input?key_style;//切换样式
???input???????????model_Key;//歌曲选择键
???output??????????spkout;//蜂鸣器输出
output??????[7:0]?led;//流水灯
output??????[7:0]?HEX0;//数码管-低亮
wire??model_Key_down;
wire???????[9:0]?tonestep;
???wire??????[7:0]?tonecode;
wire??????[3:0]?music_num;
???//调用频率控制字产生模块
???musicdec?u_musicdec
(
.tonecode(tonecode),//输入简谱
.tonestep(tonestep)//输出频率控制字
);
???
//调用按键消抖模块
key_jitter?u1_key_jitter(
?????.?clkin(sysclk),???
?????.?key_in(model_Key),//输入
??.?key_negedge(model_Key_down)//消抖后按键下降沿
);
//音乐控制模块
music_ctrl?i_music_ctrl(
.sysclk(sysclk),?
.model_Key_down(model_Key_down),?//model_Key_down
.music_num(music_num),
.tonecode(tonecode),//简谱
.tonestep(tonestep),//频率控制字
.spkout(spkout)////蜂鸣器输出
);
//流水灯模块
water_lamp?i_water_lamp(
.?clk_50M(sysclk),//50MHz
.?key_speed(key_speed),//切换速度
.?key_style(key_style),//切换样式
.?led(led)//led流水灯
);
//显示模块
display?i_display(
.?clk(sysclk),
.?music_num(music_num),//当前歌曲
.?HEX0(HEX0)//数码管-低亮
);
endmodule

设计文档(文档点击可下载):

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 仿真图

显示模块

流水灯模块

按键消抖模块

简谱频率控制模块

本代码已在以下开发板验证,开发板资料:

FPGA开发板使用手册V1.0.pdf

大西瓜第一代FPGA开发板使用手册V1.0.pdf

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=180

  • 1-23092622144XW.doc
    下载

相关推荐