基于處理器的FM音頻頻譜分析儀的設(shè)計方案
在實際的廣播電視發(fā)射工作中,新的發(fā)射機的進場測試,發(fā)射機的日常指標(biāo)測試等都涉及了音頻的測試。本文設(shè)計的音頻頻譜分析儀就是從信號源的角度出發(fā),測量音頻信號的頻譜,從而確定各頻率成分的大小,為調(diào)頻廣播的各項音頻指標(biāo)的提供參考。
本文引用地址:http://www.ex-cimer.com/article/201702/338265.htm在本文中主要提出了以MSP43處理器為核心的音頻頻譜分析儀的設(shè)計方案。以數(shù)字信號處理的相關(guān)理論知識為指導(dǎo),利用MSP430處理器的優(yōu)勢來進行音頻頻譜的設(shè)計與改進,并最終實現(xiàn)了在TFT液晶HD66772上面顯示。
2.頻譜分析儀設(shè)計原理
由于在數(shù)字系統(tǒng)中處理的數(shù)據(jù)都是經(jīng)由采樣得到,所以得到的數(shù)據(jù)必然是離散的。對于離散的數(shù)據(jù),適用離散傅立葉變換來進行處理。
快速傅里葉變換,是離散傅里葉變換的快速算法,也可用于計算離散傅里葉變換的逆變換,目前已被數(shù)字式頻譜儀廣泛采用。對于長度為N的復(fù)數(shù)序列 0 1 1 , , , N ? x x L x ,離散傅里葉變換公式為:
于是一個序列的運算被分解成兩個運算的和的形式, ( ) 1 X k 和( ) 2 X k 可以繼續(xù)向下分解,最終分解為兩點的FFT運算。如果想要FFT運算后的輸出為自然順序排列,則輸入序列需要按位倒序來排列。
圖1為8點FFT的運算圖。
經(jīng)過FFT運算后,可以將一個時域信號變換到頻域。有些信號在時域上是很難看出什么特征的,但是如果變換到頻域之后,就很容易看出特征了,這就是頻譜儀的一般原理。
3.頻譜分析儀的設(shè)計及實現(xiàn)
本文介紹了一種基于FFT的的數(shù)字音頻頻譜分析儀的設(shè)計方案,通過ADC采樣輸入的音頻信號,ADC采樣完成以后,將數(shù)據(jù)進行倒序排列并進行FFT運算,結(jié)果通過TFT液晶顯示出來。系統(tǒng)的框圖如圖2所示。
3.1 音頻頻譜分析儀硬件實現(xiàn)
為了實現(xiàn)系統(tǒng)功能,采用16bit處理器MSP430來高效處理輸入的數(shù)據(jù)流。MSP430自帶ADC12模塊,ADC12的采樣數(shù)據(jù)經(jīng)過運算,通過65K色的液晶顯示頻譜圖。本系統(tǒng)硬件系統(tǒng)圖如圖3所示。
電源模塊為整個系統(tǒng)提供供電。系統(tǒng)還能響應(yīng)用戶按鍵事件,并進行相應(yīng)的處理。串口模塊為系統(tǒng)的擴展預(yù)留。
3.2 音頻頻譜分析儀的系統(tǒng)軟件設(shè)計
系統(tǒng)上電后首先進行系統(tǒng)初始化System_Init(),對看門狗、系統(tǒng)時鐘、定時器、I/O端口、ADC等各模塊進行初始化。接下來ADC12對連續(xù)的模擬信號進行采樣,得到離散化的數(shù)字信號,由處理器讀取該數(shù)字信號并進行相應(yīng)的處理。采樣頻率過高,采樣點數(shù)過多,會占用大量寶貴的處理器內(nèi)存,降低數(shù)據(jù)處理速度;采樣頻率過低,又會使采樣數(shù)據(jù)失真而無法恢復(fù)原始連續(xù)信號。因此,必須根據(jù)信號的頻率范圍來設(shè)置采樣頻率,同時要滿足采樣定理的要求。
當(dāng)采樣頻率一定時,增加采樣點數(shù)可以提高頻率分辨率,但數(shù)據(jù)存儲空間和計算量也相應(yīng)增大。一般可根據(jù)實際需要進行采樣點數(shù)的選取,通常設(shè)置為2的整數(shù)次冪,以便于進行后續(xù)的FFT譜分析,本系統(tǒng)采樣點數(shù)為N=16.ADC12采樣流程圖如圖4所示。
采樣后的FFT數(shù)據(jù)處理是系統(tǒng)的又一個重點和難點,一方面,為了得到正序FFT,需要對原始自然序列進行碼位倒序排列;另一方面,為了減少處理器的浮點運算時間,旋轉(zhuǎn)因子kN W 計算采用查表實現(xiàn)。圖5為FFT運算的倒序流程圖。
如果提前將余弦和正弦計算出來作為全局變量,計算kN W 就可以直接調(diào)用進行加減計算,減少了大量的浮點運算時間,會以犧牲一點存儲器的代價獲得快速的系統(tǒng)響應(yīng)。表1是編制的N=16時的余弦和正弦表。
評論