<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于TMS32OLF24O7的FFT算法的實(shí)現

基于TMS32OLF24O7的FFT算法的實(shí)現

作者: 時(shí)間:2012-02-24 來(lái)源:網(wǎng)絡(luò ) 收藏

是一種將信號從時(shí)域轉變?yōu)轭l域表示的變換形式,它是數字信號處理中對信號進(jìn)行分析時(shí)經(jīng)常采用的一種方法。信號的一些特性在時(shí)域總是表現得不明顯,通過(guò)傅里葉算法,將其變換到頻域,其特性就一目了然。例如,來(lái)自供電系統的干擾在時(shí)域上總是不易識別,但是在頻域上就可以很清晰地看到50~60 Hz的離散諧波。
在計算機系統中,實(shí)際上是以離散(DFT)的方式處理數據。由于DFT的運算量比較大,并不適用于嵌入式控制系統,所以實(shí)際應用中常使用DFT 的快速算法一快速(FFT)。雖然FFT 比DFT的計算量減少了很多,但用普通單片機來(lái)實(shí)現FFT多點(diǎn)、實(shí)時(shí)運算還是比較困難的。DSP(數字信號處理器)具有運算速度快和精度高的特點(diǎn),恰好滿(mǎn)足FFT的要求,能較好地解決這個(gè)問(wèn)題。
1 快速傅里葉變換的原理
非周期性連續時(shí)間信號x(t)的傅里葉變換可以表示為

本文引用地址:http://dyxdggzs.com/article/257679.htm

式中計算出來(lái)的是信號x(t)的連續頻譜。但是,在實(shí)際的控制系統中能夠得到的是連續信號x(t)的離散采樣值x(nT)。因此需要利用離散信號x(nT)來(lái)計算信號x(t)的頻譜。
有限長(cháng)離散信號x(n),n=0,1,…,N-1的DFT定義為:

可以看出,DFT需要計算大約N2次乘法和N2次加法。當N較大時(shí),這個(gè)計算量是很大的。利用WN的對稱(chēng)性和周期性,將N點(diǎn)DFT分解為兩個(gè)N/2點(diǎn)的 DFT,這樣兩個(gè)N/2點(diǎn)DFT總的計算量只是原來(lái)的一半,即(N/2)2+(N/2)2=N2/2,這樣可以繼續分解下去,將N/2再分解為N/4點(diǎn) DFT等。對于N=2m 點(diǎn)的DFT都可以分解為2點(diǎn)的DFT,這樣其計算量可以減少為(N/2)log2N次乘法和Nlog2N次加法。圖1為FFT與DFT-所需運算量與計算點(diǎn)數的關(guān)系曲線(xiàn)。由圖可以明顯看出的優(yōu)越性。

將x(n)分解為偶數與奇數的兩個(gè)序列之和,即

x1(n)和x2(n)的長(cháng)度都是N/2,x1(n)是偶數序列,x2(n)是奇數序列,則

其中X1(k)和X2(k)分別為x1(n)和x2(n)的N/2點(diǎn)DFT。由于X1(k)和X2(k)均以N/2為周期,且WN k+N/2=-WN k,所以X(k)又可表示為:

上式的運算可以用圖2表示,根據其形狀稱(chēng)之為蝶形運算。依此類(lèi)推,經(jīng)過(guò)m-1次分解,最后將N點(diǎn)DFT分解為N/2個(gè)兩點(diǎn)DFT。圖3為8點(diǎn)FFT的分解流程。


的原理是通過(guò)許多小的更加容易進(jìn)行的變換去實(shí)現大規模的變換,降低了運算要求,提高了與運算速度。FFT不是DFT的近似運算,它們完全是等效的。



2 快速傅里葉算法在TMS320LF2407上的實(shí)現
根據的特點(diǎn),處理器要在一個(gè)指令周期內完成乘和累加的工作,因為復數運算要多次查表相乘才能實(shí)現。其二就是間接尋址,可以實(shí)現增/減1個(gè)變址量,方便各種查表方法。再次,FFT變換的輸入序列x(n)是按所謂的碼位倒序排列的,處理器要有反序間接尋址的能力。DSP控制器專(zhuān)門(mén)設計了特有的反序間接尋址,并能在一個(gè)指令周期內完成乘和累加的運算。因此,對數字信號的分析處理,DSP比其它的處理器有絕對的優(yōu)勢。本文采用TI公司C2000系列TMS320LF2407芯片來(lái)實(shí)現FFT算法。
TMS320LF2407定點(diǎn)DSP是一款專(zhuān)為工業(yè)控制、電機控制和數字信號處理等用途而設計的DSP,具備單周期乘加指令,具有FFT反序間接尋址功能,最高運行速度為40MIPS。為了充分利用DSP芯片特有的反序間接尋址等功能,FFT算法程序采用匯編語(yǔ)言編寫(xiě),主程序采用C語(yǔ)言,因此程序具有良好的兼容性和可擴展性。
主程序流程圖如圖4所示。系統初始化主要完成DSP的系統控制和狀態(tài)寄存器、等待狀態(tài)發(fā)生器控制寄存器、中斷寄存器等的必要設置。

本程序采樣函數為:x=sin(20πt),采樣頻率為640Hz。
輸入數據波形如圖5所示。一般情況下,我們只關(guān)心信號頻域的幅度譜。幅度譜|X(k)|2的計算:X(k)=XR(k)+jX(k),|X(k)2|=|Xr(k)|2+|Xi(k)|2。FFT計算結果的信號幅度譜|X(k)|2如圖6所示。



輸入信號頻率是10Hz,根據公式f=kfs/N,f是原始信號的頻率,k表示峰值出現的位置,fS是采樣頻率,N是計算的點(diǎn)數,從幅度譜中看出,峰值出現在k=1處,那么,f=1×640/64=10,與原始信號的實(shí)際頻率一致,說(shuō)明計算結果正確。

3 快速傅里葉變換(FFT)的應用
FFT在生產(chǎn)實(shí)踐和科學(xué)研究中有著(zhù)廣泛的應用。圖7為FFT的典型應用方案。下面簡(jiǎn)單介紹一下FFT的應用領(lǐng)域。

(1)頻譜分析。對各類(lèi)旋轉機械、電機、機床等機器的主體或部件進(jìn)行實(shí)際運行狀態(tài)下的頻譜分析,可以提供設計數據和檢驗設計結果,或者找尋震源和診斷故障,保證設備的安全運行等。在聲納系統中,為了尋找海洋水面船只或潛艇,需要對噪聲信號進(jìn)行頻譜分析,以提供有用信息,判斷艦艇運行速度、方向、位置、大小等。

(2)濾波。濾波是FFT最廣泛的應用,它使對波形的頻率分量濾波變得十分簡(jiǎn)單。比如對采樣信號進(jìn)行FFT后,去掉不需要的頻率分量,再進(jìn)行FFT反變換,就得到濾波后的期望信號。
(3)電力監控系統的諧波分析。電力監控系統的諧波分析,需要對采樣數據進(jìn)行FFT運算,然后通過(guò)液晶屏或其它人機界面重新繪畫(huà)出來(lái),以方便技術(shù)人員掌握電力的質(zhì)量。
4 總結
實(shí)驗證明,此程序在TMS320LF2407定點(diǎn)DSP中運行良好,速度快且運算結果十分可靠,其用于一般的信號處理和工業(yè)控制都能滿(mǎn)足精度和實(shí)時(shí)的要求,具有較高的學(xué)術(shù)價(jià)值和良好的應用前景。其次,掌握FFT,學(xué)會(huì )在空域和頻域中同時(shí)思考問(wèn)題,很多時(shí)候可以讓我們使用簡(jiǎn)單的方法來(lái)解決復雜的問(wèn)題。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>