新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MSP430的FM音頻頻譜分析儀的設(shè)計方案

基于MSP430的FM音頻頻譜分析儀的設(shè)計方案

作者: 時間:2014-10-23 來源:網(wǎng)絡(luò) 收藏

  1.前言

本文引用地址:http://m.butianyuan.cn/article/264340.htm

  在實際的廣播電視發(fā)射工作中,新的發(fā)射機的進(jìn)場測試,發(fā)射機的日常指標(biāo)測試等都涉及了音頻的測試。本文設(shè)計的音頻就是從信號源的角度出發(fā),測量音頻信號的頻譜,從而確定各頻率成分的大小,為調(diào)頻廣播的各項音頻指標(biāo)的提供參考。

  在本文中主要提出了以MSP43處理器為核心的音頻的設(shè)計方案。以數(shù)字信號處理的相關(guān)理論知識為指導(dǎo),利用處理器的優(yōu)勢來進(jìn)行音頻頻譜的設(shè)計與改進(jìn),并最終實現(xiàn)了在TFT液晶上面顯示。

  2.設(shè)計原理

  由于在數(shù)字系統(tǒng)中處理的數(shù)據(jù)都是經(jīng)由采樣得到,所以得到的數(shù)據(jù)必然是離散的。對于離散的數(shù)據(jù),適用離散傅立葉變換來進(jìn)行處理。

  快速傅里葉變換,是離散傅里葉變換的快速算法,也可用于計算離散傅里葉變換的逆變換,目前已被數(shù)字式頻譜儀廣泛采用。對于長度為N的復(fù)數(shù)序列0 1 1 , , , N ? x x L x ,離散傅里葉變換公式為:

  

 

  于是一個序列的運算被分解成兩個運算的和的形式,( ) 1 X k和( ) 2 X k可以繼續(xù)向下分解,最終分解為兩點的FFT運算。如果想要FFT運算后的輸出為自然順序排列,則輸入序列需要按位倒序來排列。

  圖1為8點FFT的運算圖。

  

 

  圖1 8點FFT蝶形運算圖

  經(jīng)過FFT運算后,可以將一個時域信號變換到頻域。有些信號在時域上是很難看出什么特征的,但是如果變換到頻域之后,就很容易看出特征了,這就是頻譜儀的一般原理。

  3.頻譜分析儀的設(shè)計及實現(xiàn)

  本文介紹了一種基于FFT的的數(shù)字音頻頻譜分析儀的設(shè)計方案,通過ADC采樣輸入的音頻信號,ADC采樣完成以后,將數(shù)據(jù)進(jìn)行倒序排列并進(jìn)行FFT運算,結(jié)果通過TFT液晶顯示出來。系統(tǒng)的框圖如圖2所示。

  

 

  圖2 頻譜分析儀系統(tǒng)框圖

  3.1音頻頻譜分析儀硬件實現(xiàn)

  為了實現(xiàn)系統(tǒng)功能,采用16bit處理器來高效處理輸入的數(shù)據(jù)流。自帶ADC12模塊,ADC12的采樣數(shù)據(jù)經(jīng)過運算,通過65K色的液晶顯示頻譜圖。本系統(tǒng)硬件系統(tǒng)圖如圖3所示。

  

 

  圖3 音頻頻譜分析系統(tǒng)硬件圖

  電源模塊為整個系統(tǒng)提供供電。系統(tǒng)還能響應(yīng)用戶按鍵事件,并進(jìn)行相應(yīng)的處理。串口模塊為系統(tǒng)的擴展預(yù)留。

  3.2音頻頻譜分析儀的系統(tǒng)軟件設(shè)計

  系統(tǒng)上電后首先進(jìn)行系統(tǒng)初始化System_Init(),對看門狗、系統(tǒng)時鐘、定時器、I/O端口、ADC等各模塊進(jìn)行初始化。接下來ADC12對連續(xù)的模擬信號進(jìn)行采樣,得到離散化的數(shù)字信號,由處理器讀取該數(shù)字信號并進(jìn)行相應(yīng)的處理。采樣頻率過高,采樣點數(shù)過多,會占用大量寶貴的處理器內(nèi)存,降低數(shù)據(jù)處理速度;采樣頻率過低,又會使采樣數(shù)據(jù)失真而無法恢復(fù)原始連續(xù)信號。因此,必須根據(jù)信號的頻率范圍來設(shè)置采樣頻率,同時要滿足采樣定理的要求。

  當(dāng)采樣頻率一定時,增加采樣點數(shù)可以提高頻率分辨率,但數(shù)據(jù)存儲空間和計算量也相應(yīng)增大。一般可根據(jù)實際需要進(jìn)行采樣點數(shù)的選取,通常設(shè)置為2的整數(shù)次冪,以便于進(jìn)行后續(xù)的FFT譜分析,本系統(tǒng)采樣點數(shù)為N=16.ADC12采樣流程圖如圖4所示。

  

 

  圖4 ADC12流程圖

  采樣后的FFT數(shù)據(jù)處理是系統(tǒng)的又一個重點和難點,一方面,為了得到正序FFT,需要對原始自然序列進(jìn)行碼位倒序排列;另一方面,為了減少處理器的浮點運算時間,旋轉(zhuǎn)因子kN W計算采用查表實現(xiàn)。圖5為FFT運算的倒序流程圖。

  

 

  如果提前將余弦和正弦計算出來作為全局變量,計算kN W就可以直接調(diào)用進(jìn)行加減計算,減少了大量的浮點運算時間,會以犧牲一點存儲器的代價獲得快速的系統(tǒng)響應(yīng)。表1是編制的N=16時的余弦和正弦表。

  

 

  圖6表示的是FFT運算的流程圖,整個FFT程序包含在一個迭代的過程中,最后一層計算總是2-FFT蝶形運算,下面是蝶形運算和FFT計算的主程序段:

  

 

  當(dāng)數(shù)據(jù)經(jīng)過FFT處理完畢以后,最后一步就是直觀地把數(shù)據(jù)顯示出來了,在這里我們采用了TFT液晶.

  結(jié)合的操作時序圖,利用指令對其進(jìn)行讀寫操作,可以對液晶的讀寫進(jìn)行編程。MSP430F149與液晶HD66772模塊之間的連接分為控制總線和數(shù)據(jù)總線。在液晶屏上正確顯示信息,必須對液晶進(jìn)行兩個基本操作:第一,寫入指令代碼;第二,寫入顯示數(shù)據(jù)。

  4.系統(tǒng)調(diào)試與運行

  因為MSP430F149的主時鐘采用8MHz晶振,雖然系統(tǒng)的單條指令的執(zhí)行時間僅為0.125μs,但是加上處理FFT的運算、ADC12采樣頻率和液晶的寫入時間等影響,液晶的實際刷新頻率低于25Hz,產(chǎn)生嚴(yán)重的閃爍感。為了提高刷新頻率,將實心柱圖改為空心線條,每隔兩個空心細(xì)線條寫入一個實心線條,這樣液晶的寫入時間減少了2/3,既能保證顯示的結(jié)果的準(zhǔn)確性,也不犧牲系統(tǒng)的寫入HD66772液晶的GRAM的時間。解決了信號閃爍的問題。圖7為輸入音頻信號后TFT液晶顯示的頻譜圖。

  

 

  圖7 系統(tǒng)運行效果圖

  圖7中將輸入信號30Hz-15KHz的音頻信號在頻域進(jìn)行了16等分,每一個柱子表示1KHz的頻率帶寬。從圖中可以看到一般音頻信號的能量集中在低頻段,隨著頻率的升高音頻能量也越來越弱,這也是調(diào)頻廣播采用加權(quán)技術(shù)來提高性噪比的原因了。

  5.結(jié)論

  本方案通過ADC采樣輸入的音頻信號,ADC采樣完成以后,將數(shù)據(jù)進(jìn)行倒序排列并進(jìn)行FFT運算,結(jié)果通過TFT液晶顯示出來。由于采用的處理器的處理能力的原因,不能做到很高的采樣頻率和很精細(xì)的頻率分辨率,要提高系統(tǒng)的頻率分辨率,就需要增加采樣點數(shù)??梢越柚鶳C的強大處理能力,將采樣的數(shù)據(jù)通過預(yù)留的串口傳送給PC,在PC上完成FFT運算以及顯示,這就是虛擬儀器的方式,實際工作中應(yīng)用前景也非常大。

晶振相關(guān)文章:晶振原理
汽車防盜機相關(guān)文章:汽車防盜機原理
頻譜分析儀相關(guān)文章:頻譜分析儀原理


關(guān)鍵詞: MSP430 頻譜分析儀 HD66772

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉