【導讀】覺FPGA與單片機有許多類似的地方。于是,啟發(fā)我用FPGA做一個可隨意演。奏的音樂播放器。設(shè)計低、中、高21個音,幾乎能夠?qū)崿F(xiàn)一般歌曲的演奏。只要控制輸出到揚聲器的激勵信號頻率。的高低和持續(xù)的時間,就可以使揚聲器發(fā)聲產(chǎn)生優(yōu)美的歌曲。頻率的高低決定了音調(diào)的高低。通過查閱資料,得到下面的音符名與頻率。對于樂曲中的休止符,只需將其分頻系數(shù)設(shè)為0,將分頻預(yù)置數(shù)設(shè)為16383. 例如:低音3的頻率為330hz,分頻比為3M/330hz=3000000/330=9091,音符的持續(xù)時間必須根據(jù)樂曲的速度及每個音符的節(jié)拍數(shù)來確定。,一個完整的節(jié)拍為1s。以上即為音樂播放器的原理框圖。音長則是通過控制計數(shù)器預(yù)置數(shù)的停留時間來實現(xiàn)的,預(yù)置數(shù)停留的時間越長,每個音符的演奏時間都是的整數(shù)倍,對于節(jié)。此分頻電路也很簡單,就不在這里給出仿真波形了。阻塞賦值),產(chǎn)生對應(yīng)音符的頻率,這里和單片機的定時計數(shù)器溢出中斷差不多。節(jié)拍,則在clk_4hz的上升沿,連續(xù)調(diào)用4次它的音符就可以了。