版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)四實(shí)驗(yàn)四 硬件電子琴電路模塊設(shè)計(jì)硬件電子琴電路模塊設(shè)計(jì)基礎(chǔ)知識(shí)一、節(jié)拍 1、在音樂(lè)中,時(shí)間被分成均等的基本單位,每個(gè)單位叫做一個(gè)“拍子”或 稱一拍。 2、拍子的時(shí)值是以音符的時(shí)值來(lái)表示的,一拍的時(shí)值可以是四分音符(即以四分音符為一拍),也可以是二分音符(以二分音符為一拍)或八分音符(以八分音符為一拍)。例2/4,3/4等 3、拍子的時(shí)值是一個(gè)相對(duì)的時(shí)間概念 比如當(dāng)樂(lè) 曲的規(guī)定速度為每分鐘 60 拍時(shí),每拍占用的時(shí)間是一秒,半拍是二分之一 秒;當(dāng)規(guī)定速度為每分鐘 120 拍時(shí),每拍的時(shí)間是半秒,半拍就是四分之一 秒。 在本次實(shí)驗(yàn)中,最小的節(jié)拍是1/4拍,規(guī)定速度是每拍1秒??梢缘玫?,在我們把
2、音符按照以1/4拍為單位存放到ROM里,而后以4HZ頻率讀取,則可以實(shí)現(xiàn)樂(lè)曲的節(jié)拍。基礎(chǔ)知識(shí)二、音符與頻率 樂(lè)曲中不同的音符實(shí)質(zhì)上表示的是不同頻率的聲音。 只要產(chǎn)生不同頻率的脈沖,再通過(guò)喇叭等播放出來(lái)即可。又由于方波容易用定時(shí)器產(chǎn)生,故使用方波脈沖?;A(chǔ)知識(shí) 要產(chǎn)生音頻脈沖:1、算出某一音頻的脈沖的周期(1/頻率)2、然后將此周期除以2,即為半周期的時(shí)間。3、利用定時(shí)器,計(jì)時(shí)這個(gè)半周期的時(shí)間,每當(dāng)計(jì)時(shí)到后,就將輸出脈沖的I/O反相。4、重復(fù)計(jì)時(shí)此半周期的時(shí)間再對(duì)I/O反相,就可以在I/O腳上得到此頻率的脈沖。 例如,頻率為523Hz, 其周期為1/523 S=1912uS, 因此只要令計(jì)數(shù)器計(jì)
3、時(shí)956,在每計(jì)數(shù)956次時(shí)就將I/O反接,就可得到中音DO(532Hz)。 其計(jì)數(shù)值N可以根據(jù)以下公式得到: 2N=Tr/Ti=Fi/Fr (Fi為內(nèi)部時(shí)鐘頻率,F(xiàn)r為對(duì)應(yīng)音符頻率) (Ti為內(nèi)部時(shí)鐘周期,Tr為對(duì)應(yīng)音符周期)音符與頻率對(duì)應(yīng)表 可以得到:如果以1MHZ為內(nèi)部時(shí)鐘頻率,要發(fā)出低7SI音(494HZ),我們需要計(jì)數(shù)2024個(gè)1MHZ時(shí)鐘周期,其中,當(dāng)計(jì)數(shù)到2024/2=1012個(gè)時(shí)鐘時(shí),將脈沖翻轉(zhuǎn)一次。 結(jié)合前述的節(jié)拍,如果要發(fā)出低7SI音1拍,則只要持續(xù)494HZ方波1秒鐘即可,如果按1/4拍單位存放到ROM里,ROM的讀出時(shí)鐘是4HZ,那低7SI音應(yīng)該裝載幾個(gè)存儲(chǔ)單元?本實(shí)驗(yàn)
4、用FPGA實(shí)現(xiàn)樂(lè)曲的播放原理 分四步1、將待播放的音樂(lè)音符存入ROM2、以4HZ頻率讀取ROM 3、根據(jù)1MHZ的內(nèi)部時(shí)鐘要求,將讀出的音符換算成應(yīng)計(jì)數(shù)的數(shù)值4、以1MHZ為內(nèi)部時(shí)鐘,實(shí)現(xiàn)符合要求的方波信號(hào)。硬件電子琴電路設(shè)計(jì)方案硬件電子琴電路設(shè)計(jì)方案模塊模塊Speaker 模塊模塊Speakera中的主要電路是中的主要電路是一個(gè)數(shù)控分一個(gè)數(shù)控分頻器頻器,它由一個(gè)初值可預(yù)置的加法計(jì)數(shù)器,它由一個(gè)初值可預(yù)置的加法計(jì)數(shù)器構(gòu)成,當(dāng)模塊構(gòu)成,當(dāng)模塊Speakera由端口由端口Tone獲得一獲得一個(gè)個(gè)2進(jìn)制數(shù)后,將以此值為計(jì)數(shù)器的預(yù)置數(shù)進(jìn)制數(shù)后,將以此值為計(jì)數(shù)器的預(yù)置數(shù),對(duì)端口,對(duì)端口Clk12MHZ輸
5、入的頻率進(jìn)行分頻,輸入的頻率進(jìn)行分頻,之后由之后由Spkout向揚(yáng)聲器輸出發(fā)聲。向揚(yáng)聲器輸出發(fā)聲。模塊模塊TONE 模塊模塊Tone是音階發(fā)生器,當(dāng)是音階發(fā)生器,當(dāng)8位發(fā)聲控制輸位發(fā)聲控制輸入入Index中某一位為高電平時(shí),則對(duì)應(yīng)某一中某一位為高電平時(shí),則對(duì)應(yīng)某一音階的數(shù)值將從端口音階的數(shù)值將從端口Tone輸出,作為獲得輸出,作為獲得該音階的分頻預(yù)置值;同時(shí)由該音階的分頻預(yù)置值;同時(shí)由Code輸出對(duì)輸出對(duì)應(yīng)該音階簡(jiǎn)譜的顯示數(shù)碼,如應(yīng)該音階簡(jiǎn)譜的顯示數(shù)碼,如5,并由,并由High輸出指示音階高輸出指示音階高8度顯示。度顯示。增加樂(lè)曲自動(dòng)演奏電路增加樂(lè)曲自動(dòng)演奏電路 在原設(shè)計(jì)的基礎(chǔ)上,增加一個(gè)在原
6、設(shè)計(jì)的基礎(chǔ)上,增加一個(gè)Notetabs模塊用于模塊用于產(chǎn)生節(jié)拍控制(產(chǎn)生節(jié)拍控制(Index數(shù)據(jù)存留時(shí)間)和音階選數(shù)據(jù)存留時(shí)間)和音階選擇信號(hào),即在擇信號(hào),即在Notetabs模塊放置一個(gè)樂(lè)曲曲譜真模塊放置一個(gè)樂(lè)曲曲譜真值表,樂(lè)曲曲譜真值表放置于名為值表,樂(lè)曲曲譜真值表放置于名為Music的的ROM模塊中。模塊中。 由一個(gè)計(jì)數(shù)器來(lái)生成讀取由一個(gè)計(jì)數(shù)器來(lái)生成讀取ROM所需的地址數(shù)據(jù),所需的地址數(shù)據(jù),對(duì)對(duì)ROM以以4HZ的頻率進(jìn)行讀取,實(shí)現(xiàn)控制此真值的頻率進(jìn)行讀取,實(shí)現(xiàn)控制此真值表的輸出,而由此計(jì)數(shù)器的計(jì)數(shù)時(shí)鐘信號(hào)作為樂(lè)表的輸出,而由此計(jì)數(shù)器的計(jì)數(shù)時(shí)鐘信號(hào)作為樂(lè)曲節(jié)拍控制信號(hào),從而可以設(shè)計(jì)出一個(gè)純
7、硬件的曲節(jié)拍控制信號(hào),從而可以設(shè)計(jì)出一個(gè)純硬件的樂(lè)曲自動(dòng)演奏電路。樂(lè)曲自動(dòng)演奏電路。 需要說(shuō)明: 由于實(shí)驗(yàn)板上,只有50MHZ有源晶振,故將用50MHZ進(jìn)行分頻實(shí)現(xiàn)12.5MHZ的時(shí)鐘,在后續(xù)模塊Speakera.v中再分頻得到近似1MHZ時(shí)鐘,要求自行設(shè)計(jì)50MHZ到12.5MHZ的分頻模塊:div_50_12M.v 系統(tǒng)需要4HZ頻率讀ROM,于是用50MHZ,分頻得到4HZ頻率。要求自行設(shè)計(jì)50MHZ到4HZ的分頻模塊:div_50_4HZ.v 由于這兩個(gè)分頻模塊仿真時(shí)間較長(zhǎng),故這部分不要求進(jìn)行仿真不要求進(jìn)行仿真。 1、構(gòu)建一個(gè)工程名為songer的工程由File-New Project
8、 Wizard,彈出對(duì)話框,設(shè)置文件夾目錄,Project名稱。注意,1 )不能將文件夾放置在軟件安裝目錄下,應(yīng)放在E盤或DATA盤上2)要求以自己的學(xué)號(hào)作為文件夾名正確選擇FPGA目標(biāo)器件和EDA工具,這次設(shè)計(jì)的仿真工具采用Modelsim。 分別輸入ToneTaba.v和Speakera.v的Verilog HDL文本,進(jìn)行綜合和功能仿真,理解、驗(yàn)證模塊功能。仿真激勵(lì)文件生成 在New Source Wizard界面選擇Verilog Test Fixture,然后輸入測(cè)試文件名 選擇要測(cè)試的模塊 測(cè)試文件相關(guān)設(shè)置完成后,按Finish,ISE即給出測(cè)試模塊的框架 根據(jù)框架,考慮測(cè)試的完備
9、性,完善測(cè)試模塊 分別編寫Notetabs .v 、ToneTaba.v和div_50_12M.v的Verilog HDL測(cè)試文件,用Modelsim進(jìn)行功能仿真、時(shí)序仿真。觀察波形,理解模塊實(shí)現(xiàn)的功能。 下面討論如何調(diào)用ROM的IPcore實(shí)現(xiàn)對(duì)音樂(lè)的存儲(chǔ)。 IP核生成器的啟動(dòng)方法有兩種,一種是在核生成器的啟動(dòng)方法有兩種,一種是在【Projcet Navigator】中新建中新建Coregen IP類型的資源類型的資源(請(qǐng)參考第請(qǐng)參考第2章中工程的建立與章中工程的建立與管理管理);另一種是直接在;另一種是直接在Windows界面下運(yùn)界面下運(yùn)行行【開始開始】【程序程序】【Xilinx ISE
10、Design Suit 10.1】【ISE】【Accessories】【CORE Generator】命命令。令。 本次設(shè)計(jì)采用第一種方法。本次設(shè)計(jì)采用第一種方法。 首先打開電腦上的記事本,按照COE文件的格式要求輸入梁祝音樂(lè)或者自己編輯的音樂(lè)數(shù)據(jù),并存盤。COE文件內(nèi)容MEMORY_INITIALIZATION_RADIX = 10;MEMORY_INITIALIZATION_VECTOR= 3 , 3 , 3 , 3, 5, 5, 5,6, 8, 8, 8 , 9 , 6 , 8, 5, 5, 12,12,12, 15, 13 , 12 , 10 , 12, 9, 9, 9, 9, 9,
11、9, 9 , 0 , 9 , 9, 9, 10, 7, 7, 6, 6, 5 , 5 , 5 , 6, 8, 8, 9, 9, 3, 3, 8 , 8 , 6 , 5, 6, 8, 5, 5, 5, 5, 5 , 5 , 5 , 5, 10, 10, 10, 12, 7, 7, 9 , 9 , 6 , 8, 5, 5, 5, 5, 5, 5, 3 , 5 , 3 , 3, 5, 6, 7, 9, 6, 6, 6 , 6 , 6 , 6, 5, 6, 8, 8, 8, 9,12 ,12 ,12 ,10, 9, 9,10, 9,8, 8, 6 , 5 , 3 , 3, 3, 3, 8,8, 8,8
12、,6 , 8 ,6 , 5, 3, 5, 6,8, 5,5,5 ,5 , 5 ,5, 5,5,0, 0, 0; 選擇IP(CORE Generate & Architecture Wizard),輸入IPcore 名:Music 彈出的界面,選擇Memory Elementsingle Port Block Memory 選擇Read Only 存儲(chǔ)器位寬:Width 為4,深度:Depth為256 按Next繼續(xù)設(shè)定 鉤選Load Init File 點(diǎn)擊Load File按鍵,裝載初始文件Music.coe 點(diǎn)擊Generate按鍵生成ROM的IP CORE 通過(guò)在NoteTabs
13、.v文件中例化ROM文件,實(shí)現(xiàn)按照4HZ頻率循環(huán)讀取ROM的音樂(lè)節(jié)拍、頻率信號(hào)。編寫頂層文件songer.v ,將NoteTabs.vToneTaba.v、 Speakera.v、 div_50_12M.v和 div_50_4HZ.v組合為一個(gè)系統(tǒng),完成綜合。由于Speakera.v、 div_50_4HZ.v模塊的仿真時(shí)間過(guò)長(zhǎng),所以頂層模塊不需要仿真。引腳鎖定 NET clk_50M LOC = C9 ; NET Code1 LOC = F12 ; NET Code1 LOC = E12 ; NET Code1 LOC = E11 ; NET Code1 LOC = F11 ; NET High1 LOC = E9 ; NET reset LOC = D18|pulldown ; NET Spkout LOC = D7 ; 用發(fā)光管LD3LD0顯示Code3Code0表示琴音簡(jiǎn)譜碼,發(fā)光管LD5顯示高8
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年電機(jī)維修服務(wù)協(xié)議樣本
- 2024-2030年中國(guó)機(jī)制毛邊紙項(xiàng)目可行性研究報(bào)告
- 2024-2030年中國(guó)有機(jī)糖粉行業(yè)需求現(xiàn)狀與營(yíng)銷趨勢(shì)預(yù)測(cè)報(bào)告
- 人教版數(shù)學(xué)一年級(jí)下冊(cè)期中考試試題及答案
- 車體設(shè)計(jì)標(biāo)準(zhǔn)的創(chuàng)新與完善
- 2024-2030年中國(guó)新能源物流車行業(yè)市場(chǎng)深度分析及發(fā)展前景與投資機(jī)會(huì)研究報(bào)告
- 2024至2030年中國(guó)智能型商場(chǎng)防盜系統(tǒng)行業(yè)投資前景及策略咨詢研究報(bào)告
- 溫度控制在化學(xué)纖維制造中的應(yīng)用考核試卷
- 2024-2030年中國(guó)教學(xué)用柜項(xiàng)目可行性研究報(bào)告
- 風(fēng)險(xiǎn)預(yù)警模型構(gòu)建
- 新版加油站安全操作規(guī)程
- 2023年貴州黔東南州州直機(jī)關(guān)遴選公務(wù)員考試真題
- 貨物質(zhì)量保證措施方案
- 黑龍江省龍東地區(qū)2024-2025學(xué)年高二上學(xué)期階段測(cè)試(二)(期中) 英語(yǔ) 含答案
- 4S店展廳改造裝修合同
- 3-4單元測(cè)試-2024-2025學(xué)年統(tǒng)編版語(yǔ)文六年級(jí)上冊(cè)
- 北師版數(shù)學(xué)八年級(jí)上冊(cè) 5.8三元一次方程組課件
- 企業(yè)單位消防安全規(guī)范化管理指導(dǎo)手冊(cè)
- 廢舊物資回收投標(biāo)方案(技術(shù)方案)
- 宣傳視頻拍攝服務(wù)投標(biāo)方案(技術(shù)方案)
- 森林防火課件下載
評(píng)論
0/150
提交評(píng)論