名称:音乐播放器设计Verilog代码Quartus 小梅哥AC620开发板(文末获取)
软件:Quartus
语言:Verilog
代码功能:
音乐播放器
设计音乐播放器,要求至少包含2首歌曲,使用按键切换歌曲,使用开发板的蜂鸣器播放音乐,使用Quartus内的ROM IP核存储音乐文件,
简谱存储在ROM中,共2首歌曲。
《茉莉花》的简谱存储在ROM中,具体值可以打开music.mif文件查看
《两只老虎》的简谱存储在ROM2中,具体值可以打开music2.mif文件查看
mif文件说明:
8表示简谱1
9表示简谱2
10表示简谱3
以此类推
每个简谱对应4个相同的值
本代码已在小梅哥AC620开发板验证,小梅哥AC620开发板如下,其他开发板可以修改管脚适配:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. 仿真图
Testbench
整体仿真图
频率控制字产生模块
音乐控制模块
部分代码展示:
//音乐播放器 module music(sysclk,stop_key,start_key,led,select, spkout,SH_CP,ST_CP,DS); input sysclk;//50M晶振 input stop_key;//reset--按下低电平 input start_key;//开始 input select;//歌曲选择,0和1对应不同歌曲 output spkout;//蜂鸣器输出 output led;//指示灯--低亮 output SH_CP;//shift clock output ST_CP;//latch data clock output DS;//shift serial data wire [9:0] tonestep; wire [7:0] tonecode; wire [3:0] music_num; //调用频率控制字产生模块 musicdec u_musicdec ( .tonecode(tonecode),//输入简谱 .tonestep(tonestep)//输出频率控制字 );
源代码
点击下方的公众号卡片获取