- 相關(guān)推薦
基于PLD技術(shù)的MIDI音樂播放控制系統(tǒng)設(shè)計(jì)
引言
系統(tǒng)的設(shè)計(jì)是依據(jù)MIDI音樂基本原理,結(jié)合PLD技術(shù),采用ALTERA公司的可編程邏輯器件CPLDEPM240T100C5作為控制單元來實(shí)現(xiàn)。系統(tǒng)的核心是運(yùn)用VHDL語言進(jìn)行編程,在CPLD內(nèi)部設(shè)計(jì)出音調(diào)發(fā)生器、音樂編碼器、彩燈閃爍控制三個模塊。外圍可配時鐘、彩燈、開關(guān)、揚(yáng)聲器等設(shè)備,從而實(shí)現(xiàn)音樂選擇控制播放、彩燈隨音樂節(jié)奏閃爍變化等功能的PLD應(yīng)用系統(tǒng)。
一、系統(tǒng)組成
如圖1所示,是系統(tǒng)組成的原理框圖。其核心模塊為CPLD芯片,內(nèi)部有音調(diào)發(fā)生器、音樂編碼器和彩燈閃爍控制器三個模塊。音樂編碼器內(nèi)儲存著預(yù)先設(shè)定的歌曲編碼,通過改變音樂選擇開關(guān)的狀態(tài)可以決定當(dāng)前要播放哪首音樂。音樂編碼器控制著音調(diào)發(fā)生器和彩燈閃爍控制器,每當(dāng)音樂節(jié)奏時鐘送給音樂編碼器一個時鐘脈沖時,音樂編碼器就當(dāng)前要播放的音符的編碼送給音調(diào)發(fā)生器和彩燈閃爍控制器。音調(diào)發(fā)生器根據(jù)編碼對應(yīng)的分頻系數(shù)將基準(zhǔn)時鐘分頻,得到當(dāng)前要播放的音符所對應(yīng)頻率的脈沖,再用這個脈沖去激勵揚(yáng)聲器,就可以得到這個音符的聲音。彩燈閃爍控制器根據(jù)編碼將當(dāng)前要播放的音符對應(yīng)的彩燈亮滅狀態(tài)發(fā)送給彩燈。核心部分CPLD利用VHDL語言來完成,其他部分通過外圍電路實(shí)現(xiàn)。
圖1 系統(tǒng)組成原理框圖
二、MIDI 音樂播放器芯片設(shè)計(jì)
MIDI音樂是Windows下的一種合成音樂,由于它通過記錯的方式來記錄一段音樂,因此與wave音樂相比,它可以極大地減少存儲容量。MIDI音樂的基本原理為:組成樂曲的每一個音符的頻率值及持續(xù)的時間是樂曲能連續(xù)演奏的兩個基本數(shù)據(jù),因此只要控制輸出到揚(yáng)聲器的激勵信號頻率的高低和每一個頻率信號的持續(xù)時間,就可以使揚(yáng)聲器發(fā)生連續(xù)的樂曲。如圖2所示,為CPLD內(nèi)部芯片設(shè)計(jì)原理圖。
圖2 CPLD芯片設(shè)計(jì)原理圖
三、系統(tǒng)控制模塊設(shè)計(jì)
3.1 音樂編碼器模塊設(shè)計(jì)
此模塊包括節(jié)拍控制電路和音符產(chǎn)生電路。節(jié)拍控制電路以樂曲中最短音符的節(jié)拍為基準(zhǔn),產(chǎn)生樂曲所需要的全部節(jié)拍。將1/16音符設(shè)置為計(jì)數(shù)器的一個數(shù),對應(yīng)的1/4音符則是四個計(jì)數(shù)。在設(shè)計(jì)中為了讓歌曲循環(huán)播放,計(jì)數(shù)器設(shè)定計(jì)滿自動清零計(jì)數(shù)的功能,只要不斷電,不關(guān)開關(guān),歌曲就可以自動循環(huán)播放。
3.2 音調(diào)發(fā)生模塊設(shè)計(jì)
此模塊包括預(yù)置數(shù)產(chǎn)生電路和頻率發(fā)生器。預(yù)置數(shù)產(chǎn)生電路采用查找表形式,按照音符的頻率要求產(chǎn)生相應(yīng)的預(yù)置數(shù)。根據(jù)可變模值計(jì)數(shù)器的設(shè)計(jì)原理及音符的分頻系數(shù),可算出樂曲中各音符的預(yù)置數(shù)。
頻率發(fā)生器由可變模值計(jì)數(shù)器實(shí)現(xiàn)。由于系數(shù)要求產(chǎn)生出的信號頻率較高,因此選用4MHz高頻率脈沖作為可變模值計(jì)數(shù)器的計(jì)數(shù)脈沖,而為了減少輸出的偶次諧波分量,最后輸出到揚(yáng)聲器的波形應(yīng)為應(yīng)為對稱方波,因此在到達(dá)揚(yáng)聲器之前,有一個2分頻的分頻器。
3.3 彩燈閃爍控制模塊設(shè)計(jì)
彩燈閃爍控制電路主要是控制燈的亮和滅,此電路輸出高低電平信號,就可以直接驅(qū)動發(fā)光二極管。在彩模塊,設(shè)計(jì)為不同音符,對應(yīng)不同的亮滅,這樣,當(dāng)音樂演奏起來的時候,隨著音符的變化,彩燈也因?yàn)椴煌囊舴W爍起來。
3.4 開關(guān)選擇模塊設(shè)計(jì)
采用case語句,對外部電路輸入的一個音符串進(jìn)行判斷,芯片內(nèi)部處理這個字符串,從而判斷選擇的是哪首歌曲的播放。
3.5 頂層模塊設(shè)計(jì)
采用VHDL語言進(jìn)行頂層模塊設(shè)計(jì),如圖3,將上述所提到的所有模塊,利用component語句進(jìn)行集合,然后利用管腳映射的方法,將所有輸入輸出連接在一起,這樣就設(shè)計(jì)出了一個完整的MIDI音樂播放芯片,只需要再接入外圍電路即可進(jìn)行演示。
圖3 頂層模塊原理圖
四、仿真實(shí)現(xiàn)
將各設(shè)計(jì)模塊在 Quartus II 軟件平臺上進(jìn)行仿真調(diào)試校驗(yàn),設(shè)計(jì)系統(tǒng)頂層模塊的仿真波形圖如圖4所示。
圖4 頂層模塊的仿真波形圖
【基于PLD技術(shù)的MIDI音樂播放控制系統(tǒng)設(shè)計(jì)】相關(guān)文章:
基于電話網(wǎng)絡(luò)的熱網(wǎng)遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)05-11
基于軍網(wǎng)的雷達(dá)遠(yuǎn)程診斷技術(shù)研究08-10
基于web的異地并行設(shè)計(jì)與制造系統(tǒng)研究06-02
基于勝任力的企業(yè)個體績效管理流程設(shè)計(jì)06-03
基于CS管理的房地產(chǎn)企業(yè)開發(fā)設(shè)計(jì)06-04
基于PLC的斷路器型式試驗(yàn)系統(tǒng)設(shè)計(jì)03-10
雙容水箱串級液位控制系統(tǒng)設(shè)計(jì) 開題報(bào)告07-30
基于分組技術(shù)的下一代光傳送網(wǎng)05-29
淺析自動控制系統(tǒng)04-19