一種音樂(lè )播放控制電路的設計
隨著(zhù)電子技術(shù)發(fā)展,電子電路的形式趨向復雜化,面對這一狀況,人們已經(jīng)清醒地認識到,要分析和設計復雜的電子系統人工的方法已不適用。依靠傳統的實(shí)驗教學(xué)已遠不能滿(mǎn)足社會(huì )對高新技術(shù)人才的培養需要。本文就一個(gè)綜合性的實(shí)例“音樂(lè )播放控制電路”的設計過(guò)程具體說(shuō)明了FPGA在電子電路設計中所起的作用。
1 總體方案的設計
設計一個(gè)具有3個(gè)八度音程的電子音樂(lè )自動(dòng)循環(huán)播放電路,具體曲目可以由設計者自由編輯,以簡(jiǎn)譜的二進(jìn)制編碼形式存放在ROM的數據文件中。
設計要求如下:
(1)采用5位二進(jìn)制碼表示音高信息,曲譜碼存儲器的地址由時(shí)值計數器控制,計數頻率按樂(lè )曲的演奏速度選擇,每個(gè)脈沖周期是所選曲譜中最短音符的時(shí)值。存儲器在時(shí)值計數脈沖作用下順序輸出音高碼控制分頻器。
(2)采用20 Hz~20 kHz的音頻脈沖信號控制蜂鳴器,可以使其根據控制信號頻率發(fā)出不同的音調。
音樂(lè )播放控制電路設計方案原理框圖如圖1所示。
2 設計任務(wù)分析
2.1 音高編碼和分頻控制
計數器模值控制的方法很多,改變預置數控制模值是比較簡(jiǎn)單的一種。分頻計數器的預置數與分頻率和計數方式、預置方式有關(guān)。當采用減計數器、并以計數器的溢出信號(Carry Out)實(shí)現異步預置控制時(shí),計數器的模(分頻率)等于預置數。比如,當計數脈沖頻率為10 MHz時(shí),若希望產(chǎn)生音高“5”,并考慮占空比整形的二分頻作用,分頻系數(計數器的模)應該是3 188.9,四舍五入后的計數器預置數應該是3 189。其溢出信號的頻率為3 135.8 Hz,控制蜂鳴器的信號頻率為1 567.9 Hz,滿(mǎn)足音高頻率要求。若采用同步預置方式,則計數器的預置數應該是模減1,為3 188。由于計數器的溢出信號可能出現冒險干擾,采用同步預置的方法比較安全。
分析表1可見(jiàn),表中3個(gè)不同音程相同音名(同一行)的信號頻率都相差一倍。
即音程升、降8度時(shí),頻率增加或減小一倍。所以,若分頻計數器的計數脈沖頻率降低一倍時(shí),蜂鳴器發(fā)出的音調降低8度。比如,當分頻率仍為3 189,但計數脈沖頻率為5 MHz時(shí),控制蜂鳴器的信號頻率為784 Hz,為中音“5”。
因此若采用模值和輸入脈沖頻率都可控的計數器實(shí)現信號分頻,可根據音程碼選擇分頻計數器的輸入脈沖頻率fs、根據音名碼控制分頻計數器的模值N,如圖2所示。
評論