名稱:電子琴設(shè)計Verilog代碼遠(yuǎn)程云端平臺Quartus
軟件:Quartus
語言:Verilog
代碼功能:
電子琴:
要求能切換手動彈奏和自動播放模式。
手動彈奏模式下,分高低兩個音域,可通過 1 2 3 4 5 6 7共7個按鍵,可通過14個按鍵來彈奏 且通過一個顯示模塊顯示按鍵。
播放模式下可播放儲存的音樂。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在遠(yuǎn)程云端平臺驗證,遠(yuǎn)程云端平臺如下,其他遠(yuǎn)程云端平臺可以修改管腳適配:
演示視頻:
設(shè)計文檔:
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;//自動播放開關(guān),1自動播放,0按鍵模式 output???????BEEP;//蜂鳴器輸出 output?[7:0]?seg_select;//數(shù)碼管段選顯示 output?[3:0]?bit_select;//數(shù)碼管位選顯示 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) ); //數(shù)碼管顯示模塊 display?i_display( .clk_in(clk), .key_num(key_num),? .seg_select(seg_select), .bit_select(bit_select) ); endmodule
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=347
閱讀全文