国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

音樂播放器蜂鳴器ROM存儲(chǔ)歌曲verilog,代碼/視頻

這篇具有很好參考價(jià)值的文章主要介紹了音樂播放器蜂鳴器ROM存儲(chǔ)歌曲verilog,代碼/視頻。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

名稱:音樂播放器蜂鳴器ROM存儲(chǔ)歌曲

軟件:Quartus

語言:Verilog

代碼功能:

????? ?設(shè)計(jì)音樂播放器,要求至少包含2首歌曲,使用按鍵切換歌曲,使用開發(fā)板的蜂鳴器播放音樂,使用Quartus內(nèi)的ROM IP核存儲(chǔ)音樂文件,

簡(jiǎn)譜存儲(chǔ)在ROM中,共2首歌曲。

? ? ?《茉莉花》的簡(jiǎn)譜存儲(chǔ)在ROM中,具體值可以打開music.mif文件查看

? ? ?《兩只老虎》的簡(jiǎn)譜存儲(chǔ)在ROM2中,具體值可以打開music2.mif文件查看

mif文件說明:

8表示簡(jiǎn)譜1

9表示簡(jiǎn)譜2

10表示簡(jiǎn)譜3

以此類推

每個(gè)簡(jiǎn)譜對(duì)應(yīng)4個(gè)相同的值

演示視頻:音樂播放器蜂鳴器ROM存儲(chǔ)歌曲Verilog_Verilog/VHDL資源下載

代碼下載:音樂播放器蜂鳴器ROM存儲(chǔ)歌曲Verilog_Verilog/VHDL資源下載名稱:音樂播放器蜂鳴器ROM存儲(chǔ)歌曲(代碼在文末付費(fèi)下載)軟件:Quartus語言:Verilog代碼功能: 設(shè)計(jì)音樂播放器,要求至少包含2首歌曲,使用按鍵切換歌曲,使用開發(fā)板的蜂鳴器播放音樂,使用Quartus內(nèi)的ROM IP核存儲(chǔ)音樂文件,簡(jiǎn)譜存儲(chǔ)在ROM中,共2首歌曲。 《茉莉花》的簡(jiǎn)譜存儲(chǔ)在ROM中,具體值可以打開music.mif文件查看 《兩只老虎》的簡(jiǎn)譜存http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=194

部分代碼展示

//播放器控制模塊
module?music_ctrl(sysclk,stop_key,select,start_key,tonecode,tonestep,led,spkout);
???input???????????sysclk;//50M晶振
input???????????stop_key;//reset
input???????????select;//歌曲選擇,0和1對(duì)應(yīng)不同歌曲
input???????????start_key;//開始
input???????[9:0]?tonestep;
???output??????[7:0]?tonecode;
output???????led;//指示燈
output??????????spkout;//蜂鳴器輸出
???
reg?spkout=0;
???reg?[10:0]??????addr='d0;//分頻控制字--addr[21:0]
???reg?[24:0]??????divclk_counter='d0;
???reg?????????????musicclk=0;
???
???wire?[9:0]??????step;
???reg?[7:0]???????tonecode='d0;
???wire?[9:0]??????tonestep;
???reg?[7:0]???????codeaddr1='d0;
reg?[7:0]???????codeaddr2='d0;
???
wire?[7:0]?ROM_data1;
wire?[7:0]?ROM_data2;
//ROM(歌曲茉莉花)
ROM?i1_ROM(
.address(codeaddr1),
.clock(musicclk),
.q(ROM_data1)
);
//ROM(歌曲兩只老虎)
ROM2?i2_ROM(
.address(codeaddr2),
.clock(musicclk),
.q(ROM_data2)
);
reg??music_select=1'd0;
assign?led=music_select;
always@(posedge?sysclk?or?negedge?stop_key?or?negedge?start_key)
if(!stop_key)
music_select<=0;//停止
else?if(!start_key)
music_select<=1;//開始
???assign?step?=?tonestep;
???always?@(posedge?sysclk)?????
??????begin
addr?<=?addr?+?step;//step是根據(jù)音樂文件產(chǎn)生的頻率控制字,不同step產(chǎn)生不同頻率的spkout
??????end
???always?@(posedge?sysclk)?????
??????begin
?????????if?(divclk_counter?==?179)//50M/(1799999*2)=分頻到13.9Hz---仿真將1799999改小為179
?????????begin
????????????musicclk?<=?(~musicclk);//musicclk=13.9Hz
????????????divclk_counter?<=?0;
?????????end
?????????else
????????????divclk_counter?<=?divclk_counter?+?1;
??????end
always?@(posedge?sysclk)?
if(music_select==0)begin
spkout<=1'b1;//0時(shí)蜂鳴器拉高,不唱
end
else?begin
spkout<=addr[10];//addr的最高位就是輸出蜂鳴器的頻率--仿真將addr[21]改成addr[10]
end
???always?@(posedge?musicclk?or?negedge?stop_key)
???begin
if(!stop_key)
codeaddr1?<=?0;//停止
else?if(select==0)begin//歌曲1
?????????if?(music_select)
???????????????begin
??????????????????tonecode?<=?ROM_data1;//播放歌曲
??????????????????if?(codeaddr1?==?255)
?????????????????????codeaddr1?<=?0;//播放完后循環(huán)
??????????????????else
?????????????????????codeaddr1?<=?codeaddr1?+?1;
???????????????end
end

設(shè)計(jì)文檔:

1. 工程文件

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

2. 程序文件

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

ROM文件

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

Mif文件

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

3. 程序編譯

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

4. RTL圖

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

5. Testbench

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

6. 仿真圖

整體仿真圖

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

音樂控制模塊

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

頻率控制模塊

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

數(shù)碼管顯示模塊

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器

verilog怎么通過按鍵切換歌曲,音視頻,fpga開發(fā),Verilog,蜂鳴器,音樂播放器文章來源地址http://www.zghlxwxcb.cn/news/detail-763134.html

到了這里,關(guān)于音樂播放器蜂鳴器ROM存儲(chǔ)歌曲verilog,代碼/視頻的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • FPGA蜂鳴器播放音樂

    FPGA蜂鳴器播放音樂

    ??最近做EDA課設(shè),看到自己的買的板子上有蜂鳴器,所以就打算做一個(gè)FPGA控制蜂鳴器播放音樂。 ??這里我使用的板子是睿智助學(xué)的FPGA開發(fā)板,板子上的芯片是 EP4CE6E22C8 ,如果是你使用的是其他開發(fā)板或者是自己做的板子,就根據(jù)原理圖,在寫完代碼時(shí)綁定相應(yīng)的引腳下

    2024年02月06日
    瀏覽(14)
  • 【FPGA】五、蜂鳴器播放音樂

    【FPGA】五、蜂鳴器播放音樂

    文章目錄 前言 一、蜂鳴器簡(jiǎn)介 二、音頻音符簡(jiǎn)介 三、任務(wù)要求 四、程序設(shè)計(jì) 1、設(shè)計(jì)思路 ?2、程序代碼? ? 總結(jié) ? ? ? ? 蜂鳴器(Buzzer)是現(xiàn)代常用的一種電子發(fā)聲器,主要用于產(chǎn)生聲音信號(hào)。它是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,被廣泛用于計(jì)算機(jī)、

    2024年02月11日
    瀏覽(16)
  • STM32蜂鳴器播放音樂(代碼全)

    在STM32F103ZET6板子上使用蜂鳴器播放音樂,我們可以將其分為幾個(gè)模塊:初始化模塊、蜂鳴器控制模塊、音樂播放模塊和主函數(shù)模塊。以下是一個(gè)簡(jiǎn)單的示例代碼,使用STM32 HAL庫和定時(shí)器來驅(qū)動(dòng)蜂鳴器播放音樂。 首先,確保你已經(jīng)配置了STM32CubeMX或STM32CubeIDE,并生成了HAL庫代碼

    2024年04月25日
    瀏覽(20)
  • 使用單片機(jī)控制蜂鳴器播放音樂的代碼

    在嵌入式系統(tǒng)中,單片機(jī)常常被用于控制各種外設(shè),其中包括蜂鳴器。蜂鳴器是一種能夠發(fā)出聲音的電子元件,可以通過單片機(jī)的控制來播放各種音樂或聲效。本文將介紹如何使用單片機(jī)控制蜂鳴器播放音樂,并提供相應(yīng)的源代碼。 在開始編寫代碼之前,我們首先需要確定使

    2024年02月01日
    瀏覽(20)
  • MCU-51:?jiǎn)纹瑱C(jī)蜂鳴器播放音樂和提示音

    MCU-51:?jiǎn)纹瑱C(jī)蜂鳴器播放音樂和提示音

    蜂鳴器是一種將電信號(hào)轉(zhuǎn)換為聲音信號(hào)的器件,常用來產(chǎn)生設(shè)備的按鍵音、報(bào)警音等提示信號(hào) 蜂鳴器按驅(qū)動(dòng)方式可分為有源蜂鳴器和無源蜂鳴器 有源蜂鳴器:內(nèi)部自帶振蕩源,將正負(fù)極接上直流電壓即可持續(xù)發(fā)聲,頻率固定 無源蜂鳴器:內(nèi)部不帶振蕩源,需要控制器提供振

    2024年02月02日
    瀏覽(23)
  • STM32通過PWM輸出使蜂鳴器實(shí)現(xiàn)播放音樂功能

    STM32通過PWM輸出使蜂鳴器實(shí)現(xiàn)播放音樂功能

    源碼下載鏈接[點(diǎn)擊跳轉(zhuǎn)] https://download.csdn.net/download/Coin_Collecter/88641632 ? ? ? ?PWM ,全稱 Pulse Width Modulation ,即脈寬調(diào)制技術(shù),是一種通過改變信號(hào)的占空比來控制電路的技術(shù)。在 PWM 信號(hào)中,周期是固定的,而占空比則可以根據(jù)需要進(jìn)行調(diào)整。通過改變占空比,可以控制電路

    2024年02月02日
    瀏覽(21)
  • FPGA實(shí)現(xiàn)蜂鳴器播放音樂實(shí)驗(yàn),以兒歌《兩只老虎》為例

    FPGA實(shí)現(xiàn)蜂鳴器播放音樂實(shí)驗(yàn),以兒歌《兩只老虎》為例

    ** ** 開發(fā)板上電后,通過蜂鳴器播放《兩只老虎》。 原理:想要讓蜂鳴器播放音樂,就需要知道每個(gè)音符的頻率,再通過換算將頻率轉(zhuǎn)換為周期,再結(jié)合開發(fā)板具體的系統(tǒng)時(shí)鐘周期,便可計(jì)算出每個(gè)音符對(duì)應(yīng)多少個(gè)系統(tǒng)時(shí)鐘周期個(gè)數(shù),通過對(duì)這些個(gè)數(shù)計(jì)數(shù),便可控制蜂鳴器播

    2024年02月15日
    瀏覽(86)
  • 單片機(jī)蜂鳴器播放音樂C語言Protues 仿真實(shí)驗(yàn)
  • STM32-PWM驅(qū)動(dòng)無源蜂鳴器播放音樂(附網(wǎng)盤代碼)

    STM32-PWM驅(qū)動(dòng)無源蜂鳴器播放音樂(附網(wǎng)盤代碼)

    一、工作原理: 1.利用STM32的定時(shí)器PWM輸出通道,驅(qū)動(dòng)蜂鳴器以特定頻率發(fā)聲,實(shí)現(xiàn)播放音樂的效果。 2.C調(diào)音符與頻率對(duì)照表: 3.以下為常用的七聲音階頻率(Hz): #define??MC ????????262? ? Do #define??MD ????????294? ? Re #define??ME ????????330? ? ?Mi #define??MF ??

    2024年02月07日
    瀏覽(19)
  • 《FPGA學(xué)習(xí)》->蜂鳴器播放

    《FPGA學(xué)習(xí)》->蜂鳴器播放

    ?? 與其擔(dān)心未來,不如現(xiàn)在好好努力。在這條路上,只有奮斗才能給你安全感。你若努力,全世界都會(huì)為你讓路。 蜂鳴器的發(fā)聲原理由振動(dòng)裝置和諧振裝置組成,而蜂鳴器又分為無源他激型與有源自激型。本實(shí)驗(yàn)采用無源蜂鳴器,蜂鳴器的發(fā)聲不同是靠頻率不同進(jìn)行控制的

    2024年02月08日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包