版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱:實(shí)驗(yàn)名稱:[蜂鳴器音樂發(fā)生器實(shí)驗(yàn)]姓名:學(xué)號(hào):指導(dǎo)教師:實(shí)驗(yàn)時(shí)間:[2013年6月15日]信息與通信工程學(xué)院信息與通信工程學(xué)院1實(shí)驗(yàn)要求用所學(xué)知識(shí)和編程技巧,編寫一段程序,實(shí)現(xiàn)用蜂鳴器演奏一首歌曲。按下(sw2)按鍵,蜂鳴器唱出一首歌,歌曲可以自己選擇,主要是通過不同的頻率來實(shí)現(xiàn)不同的音調(diào)。2實(shí)驗(yàn)原理2.1蜂鳴器類型蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。1、壓電式蜂鳴器主要由多諧振蕩、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。多諧振蕩器由晶體管或集成電路構(gòu)成。當(dāng)接通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號(hào),阻抗匹配器推動(dòng)壓電蜂鳴片發(fā)聲。2、電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動(dòng)膜片及外殼等組成。接通電源后,振蕩器產(chǎn)生的音頻信號(hào)電流通過電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng)。振動(dòng)膜片在電磁線圈和磁鐵的相互作用下,周期性地振動(dòng)發(fā)聲。實(shí)驗(yàn)箱上蜂鳴器驅(qū)動(dòng)原理:通過FPGA的143管腳驅(qū)動(dòng)蜂鳴器發(fā)聲,不同的頻率使蜂鳴器發(fā)出不同的音調(diào)。2.2音樂歌曲元素一首歌曲由音調(diào)和節(jié)拍兩個(gè)主要的元素組成。對(duì)于蜂鳴器來說,頻率的高低決定了音調(diào)的高低。所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻率分頻得來的。由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將計(jì)算得到的分頻數(shù)四舍五入取整。若基準(zhǔn)頻率過低,則由于分頻比太小,四舍五入取證后的誤差較大。若基準(zhǔn)頻率過高,雖然誤差變小,但分頻數(shù)將變大。實(shí)際的設(shè)計(jì)在盡量減小頻率誤差的前提下去合適的基準(zhǔn)頻率。給蜂鳴器輸入相應(yīng)的頻率,可以使其發(fā)出表中所示的低音、中音、高音的do~xi的聲音。將其按照音樂演奏的規(guī)律組合,便可以得到所需要的樂曲。2.3任務(wù)原理2.3.1音調(diào)的控制
頻率的高低決定了音調(diào)的高低。音樂的十二平均率規(guī)定;每?jī)蓚€(gè)8度音之間的頻率相差1倍。在兩個(gè)8度音之間,又可分為12個(gè)半音,每?jī)蓚€(gè)半音的頻率比為。另外,音名A的頻率為440Hz,音名B到C直接、E到F之間為半音,其余為全音。由此可以計(jì)算出簡(jiǎn)譜中從低音1至高音1之間每個(gè)音名對(duì)應(yīng)的頻率如表1中所示。音名頻率/Hz音名頻率/Hz音名頻率/Hz低音1261.6中音1523.3高音11046.5低音2293.7中音2587.3高音21174.7低音3329.6中音3659.3高音31318.5低音4349.2中音4698.5高音41396.9低音5392中音5784高音51568低音6440中音6880高音61760低音7493.9中音7987.8高音71975.5表1簡(jiǎn)譜中的音名與頻率的關(guān)系所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻率分頻的到,由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將計(jì)算得到的分頻數(shù)四舍五入取整。實(shí)際設(shè)計(jì)中,在盡量減小頻率誤差的前提下取適合的基準(zhǔn)頻率,本實(shí)驗(yàn)中取6MHz為基準(zhǔn)頻率。本題需要演奏的是兩只老虎樂曲,該樂曲各音階頻率及相應(yīng)的分頻比如表2所示,為了減小輸出的偶次諧波分量,最后輸出到蜂鳴器的波形應(yīng)為對(duì)稱方波,因此在到達(dá)蜂鳴器之前,有一個(gè)二分頻的分頻器。音名分頻比預(yù)置數(shù)音名分頻比預(yù)置數(shù)低音391027281中音2511111272低音576538730中音3455211831低音668189565中音5382712556低音7607310310中音6340912974中音1573610647高音1286713516表2各音階頻率對(duì)應(yīng)的分頻比及預(yù)置數(shù)此外,對(duì)于樂曲中的休止符,只要將分頻系數(shù)設(shè)為0,即初始值為2141=16383即可,此時(shí)蜂鳴器不會(huì)發(fā)聲。2.3.2音長(zhǎng)的控制音符的持續(xù)時(shí)間必須根據(jù)樂曲的速度及每個(gè)音符的節(jié)拍數(shù)來確定。本實(shí)驗(yàn)中最短的音符為4分音符,如果將全音符的持續(xù)時(shí)間設(shè)為1s的話,則只需要再提供一個(gè)4Hz的時(shí)鐘頻率即可產(chǎn)生4分音符的時(shí)長(zhǎng)。如圖1所示是樂曲演奏電路的原理框,其中,樂譜產(chǎn)生電路用來控制音樂的音調(diào)和音長(zhǎng)??刂埔粽{(diào)通過設(shè)置計(jì)數(shù)器來實(shí)現(xiàn),預(yù)置不同的數(shù)值可以使計(jì)數(shù)器產(chǎn)生不同頻率的信號(hào),從而產(chǎn)生不同的音調(diào)??刂埔糸L(zhǎng)是通過控制計(jì)數(shù)器預(yù)置數(shù)的停留時(shí)間來實(shí)現(xiàn),預(yù)置數(shù)停留時(shí)間越長(zhǎng),則該音符的演奏的時(shí)間越長(zhǎng)。每個(gè)音符的演奏時(shí)間都是0.25s的整數(shù)倍,對(duì)于節(jié)拍長(zhǎng)的音符,在記譜時(shí)可連續(xù)記錄多次即可。2.4實(shí)驗(yàn)流程圖圖1樂曲演奏的電路原理框圖3FPGA所用的管腳分配4實(shí)驗(yàn)結(jié)果:在編輯框內(nèi)輸入好程序以后,對(duì)程序進(jìn)行編譯,檢查錯(cuò)誤,無誤后將其下載到實(shí)驗(yàn)箱后,即可實(shí)現(xiàn)演奏兩只老虎歌曲,可用按鍵sw2對(duì)其進(jìn)行控制,當(dāng)按鍵按下后,停止演奏,否則一直循環(huán)演奏。5實(shí)驗(yàn)心得通過這次實(shí)驗(yàn),第一、我學(xué)到了一個(gè)有時(shí)序功能的器件如何用verilog語言實(shí)現(xiàn)其功能。在閱讀程序、修改程序的過程中我更加熟悉了verilog語言,掌握了基本的編寫程序的技巧和能力。第二、我認(rèn)識(shí)到了實(shí)際用軟件實(shí)現(xiàn)相應(yīng)功能,原理來源于數(shù)字電路的基礎(chǔ)知識(shí),但又區(qū)別與課本上的內(nèi)容。而學(xué)習(xí)了verilog語言,我意識(shí)到,不能從原有的思維方式出發(fā)進(jìn)行分析和編程,必須建立整體的概念,從輸入輸出的整體功能出發(fā)用程序建立模塊。并通過模塊和模塊的嵌套或者連接實(shí)現(xiàn)相應(yīng)功能。第三、通過修改程序的聯(lián)系,我體會(huì)到了如何結(jié)合實(shí)際模塊的時(shí)序功能用程序?qū)崿F(xiàn)對(duì)器件的控制。為了在課堂上完成這次實(shí)驗(yàn),課下真的需要下一番功夫。首先,自己認(rèn)真提前學(xué)習(xí)的語言的編程,又在課上聽老師講解重點(diǎn)。課下自己編寫了一些簡(jiǎn)單的小程序,以熟悉語言,但是在課上分析的整體程序還是有一定困難,在老師的講解下,才慢慢理解。在理解的基礎(chǔ)上修改程序很簡(jiǎn)單,但是想要自己獨(dú)立編寫這樣一個(gè)程序,我想,還需要很長(zhǎng)時(shí)間的實(shí)踐才能得以實(shí)現(xiàn)。所以,還有許多需要努力的地方。通過這次實(shí)驗(yàn),學(xué)到了很多東西,體會(huì)到了自己實(shí)現(xiàn)一個(gè)程序功能的小小喜悅,也認(rèn)識(shí)到了自己只是FPGA道路上的新手,還有很多未知的知識(shí)需要學(xué)習(xí)。真正學(xué)習(xí)的歷程需要在課下多下功夫,希望通過這學(xué)期的學(xué)習(xí)自己能熟練掌握一些編程的技術(shù),培養(yǎng)良好的思維模式。6參考文獻(xiàn)[1]王金明.《數(shù)字系統(tǒng)設(shè)計(jì)與VerilogHDL》第3版、第2版,電子工業(yè)出版社,2009、2005.TP271/W24.[2]夏宇聞.《Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程》,北京航空航天大學(xué)出版社,第1、2版,2008.TP312VH/X31.[3]蔣璇,臧春華.《數(shù)字系統(tǒng)設(shè)計(jì)與PLD應(yīng)用技術(shù)》,電子工業(yè)出版社,TP271/J63.[4]張前,王次炤,《音樂美學(xué)基礎(chǔ)》,人民音樂出版社,1992.05,J601/Z22附錄1:兩只老虎曲譜圖附錄2:程序清單//音高與頻率的對(duì)應(yīng)關(guān)系//----------------------------------------------------------------------//| | 1| 2 | 3 |4 | 5 | 6 | 7 |//|低音|261.6Hz|293.7Hz|329.6Hz|349.2Hz|392Hz|440Hz|493.9Hz|//|中音|523.3Hz|587.3Hz|659.3Hz|698.5Hz|784Hz|880Hz|987.8Hz|//|高音|1045.5Hz|1174.7Hz|1318.5Hz|1396.9Hz|1568Hz|1760Hz|1975.5Hz|//----------------------------------------------------------------------module liangzhi(clk,beep); //模塊名稱song input clk; //系統(tǒng)時(shí)鐘50MHz output beep; //蜂鳴器輸出端reg beep_r; //寄存器reg[7:0]state; //樂譜狀態(tài)機(jī)reg[15:0]count,count_end;reg[23:0]count1;//樂譜參數(shù):D=F/2K(D:參數(shù),F:時(shí)鐘頻率,K:音高頻率)parameterL_5=16'd63776,//低音5 M_1=16'd47774, //中音1 M_2=16'd42568, //中音2 M_3=16'd37919, //中音3 M_4=16'd35791,//中音4 M_5=16'd31888, M_6 =16'd28409; //中音5 parameter TIME=12000000; //控制每一個(gè)音的長(zhǎng)短(250ms) assignbeep=beep_r; //輸出音樂always@(posedgeclk)begin count<=count+1'b1; //計(jì)數(shù)器加1 if(count==count_end) begin count<=16'h0; //計(jì)數(shù)器清零 beep_r<=!beep_r; //輸出取反 endendalways@(posedgeclk)begin if(count1<TIME) //一個(gè)節(jié)拍250mS count1=count1+1'b1; else begin count1=24'd0; if(state==8'd35)//64個(gè)節(jié)拍后循環(huán) state=8'd0; else state=state+1'b1; case(state) 8'd0: count_end=M_1;//中音"1",持續(xù)1個(gè)節(jié)拍 8'd1:count_end=M_2;//中音"2",持續(xù)1個(gè)節(jié)拍 8'd2:count_end=M_3;//中音"3",持續(xù)1個(gè)節(jié)拍 8'd3: count_end=M_1;//中音"1",持續(xù)2個(gè)節(jié)拍 8'd4:count_end=M_1; 8'd5: count_end=M_2; 8'd6: count_end=M_3; 8'd7: count_end=M_1; 8'd8:count_end=M_3; 8'd9: count_end=M_4; 8'd10,8'd11: count_end=M_5; 8'd12:count_end=M_3; 8'd13: count_end=M_4; 8'd14,8'd15: count_end=M_5; 8'd16:count_end=M_5; 8'd17: count_end=M_6; 8'd18:count_end=M_5; 8'd19:count_end=M_4; 8'd20: count_end=M_3; 8'd21: count_end=M_1; 8'd22: count_end=M_5; 8'd23: count_end=M_6; 8'd24:count_end=M_5; 8'd25: count_end=M_4; 8'd26: count_end=M_3; 8'd27:count_end=M_1; 8'd28:count_end=M_2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 重慶市潼南區(qū)202-2026學(xué)年九年級(jí)上學(xué)期期末語文試題(含答案)(含解析)
- 2026福建福州市水路運(yùn)輸應(yīng)急保障中心編外人員招聘1人備考題庫及答案詳解1套
- 2026浙江紹興市產(chǎn)融科技服務(wù)有限公司項(xiàng)目制人員招聘2人備考題庫及完整答案詳解一套
- 畜禽幼崽保育與飼養(yǎng)技術(shù)手冊(cè)
- 2026西北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院計(jì)算與藝術(shù)交叉研究中心非事業(yè)編制人員招聘1人備考題庫(陜西)附答案詳解
- 2026海南??谑旋埲A區(qū)公費(fèi)師范生招聘2人備考題庫參考答案詳解
- 2026年影視后期剪輯特效制作課程
- 2026年1月浙江省高考(首考)化學(xué)試題(含標(biāo)準(zhǔn)答案及解析)
- 超重失重課件
- 職業(yè)噪聲暴露的健康管理路徑
- 四川省遂寧市2026屆高三上學(xué)期一診考試英語試卷(含答案無聽力音頻有聽力原文)
- 福建省寧德市2025-2026學(xué)年高三上學(xué)期期末考試語文試題(含答案)
- 建筑施工行業(yè)2026年春節(jié)節(jié)前全員安全教育培訓(xùn)
- 2026屆高考語文復(fù)習(xí):小說人物形象復(fù)習(xí)
- 2026年山東省煙草專賣局(公司)高校畢業(yè)生招聘流程筆試備考試題及答案解析
- 八年級(jí)下冊(cè)《昆蟲記》核心閱讀思考題(附答案解析)
- 2025年中職藝術(shù)設(shè)計(jì)(設(shè)計(jì)理論)試題及答案
- 鐵路交通法律法規(guī)課件
- 2025年體育行業(yè)專家聘用合同范本
- 對(duì)于尼龍件用水煮的原因分析
- ECMO患者血糖控制與胰島素泵管理方案
評(píng)論
0/150
提交評(píng)論