• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

電子琴設(shè)計Verilog代碼遠程平臺Quartus

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

2-23121G03926222.doc

共1個文件

名稱:電子琴設(shè)計Verilog代碼遠程平臺Quartus

軟件:Quartus

語言:Verilog

代碼功能:

電子琴設(shè)計手動彈奏和自動演奏

本系統(tǒng)主要由音頻發(fā)生模塊,鍵盤控制模塊和存儲器模塊組成。選擇手動彈奏模式按鍵時,按下音符鍵后就會選通相應(yīng)的頻率輸出;選擇自動演奏模式按鍵時,儲存器會將編寫好的音樂信息依次取出,去選通各個對應(yīng)的頻率輸出,實現(xiàn)自動演奏。音頻發(fā)生器由分頻器來實現(xiàn),可產(chǎn)生16個頻率,這些頻率經(jīng)放大后驅(qū)動喇叭,從而發(fā)出聲音。

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

本代碼已在遠程云端平臺驗證,遠程云端平臺如下,其他遠程云端平臺可以修改管腳適配:遠程平臺照片.png

演示視頻:

設(shè)計文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. RTL圖

5. 管腳分配

6. 仿真文件

7. 仿真圖

整體仿真圖

紅框內(nèi)為自動演奏歌曲,后面為按鍵彈奏

下圖可看到按鍵控制對應(yīng)輸出頻率,音調(diào)越高,頻率越高

部分代碼展示:

//琴鍵控制
module?dianziqin(sysclk,music_key,BEEP,auto_SW);
input????????sysclk;//10MHz
input????????[15:0]music_key;//16個琴鍵
input??auto_SW;//自動播放開關(guān),1自動播放,0按鍵模式
output???????BEEP;//蜂鳴器輸出
wire????????[11:0]?step_data;
//琴鍵控制
key_ctrl?i_key_ctrl(
.sysclk(sysclk),
.music_key(music_key),
.step_data(step_data),
.auto_SW(auto_SW)
);
//分頻模塊
fenpin?i_fenpin(
.sysclk(sysclk),
.auto_SW(auto_SW),
.music_key(music_key),
.BEEP(BEEP),
.step_data(step_data)
);
endmodule

點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=346

  • 2-23121G03926222.doc
    下載

相關(guān)推薦