李樂吟 沈瑩瑩 南京郵電大學(xué)通信與信息工程學(xué)院 馬意彭 南京郵電大學(xué)電子與光學(xué)工程學(xué)院
隨著電子科技的快速發(fā)展,人們對于電子產(chǎn)品的需求和功能越來越高。在生活中人們已經(jīng)不僅僅滿足于單一的音樂播放器,多功能的播放器更受到大眾的青睞。因此需要設(shè)計一款簡單實用、多功能、跟隨時代潮流的音樂播放器。基于人們對生活娛樂的需求,本文介紹一種基于FPGA的頻譜音樂播放顯示系統(tǒng)。該音樂播放顯示系統(tǒng)不僅可以實現(xiàn)簡單的音樂播放、循環(huán)、停止、切換等基本操作,還具有將炫彩燈光和音樂結(jié)合的功能,根據(jù)音樂分貝的高低顯示不同的燈陣列頻譜。且該音樂播放顯示系統(tǒng)設(shè)計成本較低,具有多樣化的功能,操作簡單。
基于FPGA的頻譜音樂播放顯示系統(tǒng)主要由兩大部分構(gòu)成,STM32讀取內(nèi)存卡中存儲的音樂,將音樂信號分為兩路,其中一路通過功率放大電路送至揚(yáng)聲器使得能夠外放音樂。另一路通過ALINX高速12位雙通道AD模塊送至ALTERA FPGA CYCLONE IV核心板。FPGA對音樂信號進(jìn)行32KHZ的采樣,并進(jìn)行快速離散傅里葉變換。不同的音符和音調(diào)組成的不同的頻率頻譜不同,對聲音信號進(jìn)行快速傅里葉變換后通過WS2812程控彩燈陣列的強(qiáng)度顯示音樂的頻譜。我們一共設(shè)置了八個燈來表示頻譜的強(qiáng)度,八個燈均亮的時候表示頻譜強(qiáng)度最大。16排燈來表示一個陣列。放音樂時16排燈上的WS2812程控彩燈均會亮起,從而達(dá)到顯示音樂頻譜的效果。STM32通過按鍵來控制歌曲的播放、暫停、切換、快進(jìn)快退等操作,并將顯示的歌詞通過屏幕顯示出來,其系統(tǒng)結(jié)構(gòu)圖如圖1所示:
圖1 系統(tǒng)結(jié)構(gòu)圖
在信號處理和信息分析中,DFT的計算具有非常重要的地位。根據(jù)DFT的定義可以分析,求解一個N點的DFT需要次復(fù)數(shù)乘法和次復(fù)數(shù)加法,即計算量很大。對于有限長離散信號的離散傅里葉變換定義為:
快速傅里葉變換是利用的周期性和對稱性,構(gòu)造了DFT的快速算法。在本文中我們利用FPGA對音樂信號采樣并進(jìn)行快速離散傅里葉變換。首先調(diào)用QuartusII的FFT MegaCore Function v13.1 IP核,對AD采進(jìn)來的12位數(shù)據(jù)進(jìn)行FFT變換,為節(jié)省資源,IP核設(shè)置成16點的10位精度的流模式,并使用乘法器來實現(xiàn)其中的4路乘法2路累加器的并行模式。IP核以每16個數(shù)據(jù)為一組,數(shù)據(jù)處理與輸出交錯進(jìn)行,然后將每一組輸出存儲到RAM中,對其進(jìn)行歸一化運算之后驅(qū)動WS2812LED燈的驅(qū)動程序中,最終得到燈的實際控制信號,并通過FPGA的多路IO口分別對每一路燈進(jìn)行控制。從而實現(xiàn)炫彩的音樂播放效果。
科技的快速發(fā)展,帶來了更高的消費需求,因此設(shè)計一款多功能的音樂播放器是至關(guān)重要的。通過以上分析可以看到,利用快速離散傅立葉變換可以將音樂的樂譜信息通過WS2812程控彩燈陣列展示出來,當(dāng)分貝高時,WS2812程控彩燈陣列更亮,給人們更好的視覺效果。
本裝置的STM32使用的是STM32F103ZET6開發(fā)板,采用8002音頻功放芯片作為音頻放大電路。選擇ALINX高速12位雙通道AD模塊作為AD轉(zhuǎn)換器,ALTERA FPGA CYCLONE IV 核心板用作信號處理。裝置中所有元器件均以低功耗、微型化的理念為核心且該音樂播放器設(shè)計可以支持多種格式下的音樂文件,可以有效的改善音質(zhì)。且操作簡單,成本較低,具有較強(qiáng)的應(yīng)用價值。
[1]楊雪梅,張慧.《基于STM32的音樂播放器》. [J].信息通信.2016.3
[2]楊麗娟,張白樺,葉旭楨.《快速傅里葉變換FFT及其應(yīng)用》. [J].光電工程.2004.12