基於MSP430F1611單片機的音頻信號分析

2021-01-10 電子發燒友
基於MSP430F1611單片機的音頻信號分析

李 俠,周立文,李 發表於 2011-05-05 09:40:49

 

 

  本系統將採用集成有μC/OS-Ⅱ作業系統的單片機,利用快速傅立葉變換並加窗函數的方法來實現對音頻信號各項參數的分析。

  1 系統總體方案

  信號首先通過8階有源巴特沃茲濾波器進行抗混疊處理,然後通過放大衰減,電平搬移緩衝網絡後,送單片機處理。

  系統的2片MSP430F1611單片機,一片負責對模擬信號進行採樣,並對採集得到的信號進行4096點的FFT計算,另一片負責控制顯示設備以及完成對信號功率譜,周期性,失真度的分析。

  系統的總體方框圖如圖1所示。

  

 

  2 系統各硬體設計

  2.1 抗混疊濾波器的設計

  根據Nyquist定理,AD模數轉換器以fs的頻率採樣輸入信號時,頻率f>fs/2的信號將被關於fs/2的頻率鏡像到2fs-f處,帶外雜散信號所引起的混疊現象如果沒有經過適當的濾波處理,這些頻率成分將會影響到帶內數據採集的性能指標。本系統選擇了約40 kHz的換檔採樣頻率,而輸入信號最高為10 kHz,過採樣率較低,故對濾波器提出了比較高的要求。考慮到巴特沃茲濾波器平坦的帶內幅頻特性,使用了連續時間有源濾波器MAX274設計了8階的巴特沃茲濾波器(如圖2所示),使20 kHz外的信號得到有效地衰減,經過試驗,效果比較好。

  

 

  2.2 前端放大器的設計

  由於輸入音頻信號的幅度可能會較大,我們假設外界給予的信號能達到10 V峰峰值,而MSP430F1611單片機片內AD採集信號範圍為0~2.51 V,故需將信號進行壓縮。經綜合考慮,本系統分為4檔,並保證每檔都有重疊的部分。100 mV以下通過低失調運放op07放大27.6 dB(24倍),90 mV~2.5V範圍內直通,而在2~5 V範圍內通過電阻分壓衰減6.02 dB(2倍)。同樣在4~10 V範圍內衰減12.04 dB(4倍),然後通過輸入設備進行手動選檔,控制每路繼電器的通斷,選擇到最適合的檔位,再將此信號經過電平搬移電路後緩衝輸入單片機採樣進行FFT計算。本模塊在級聯時注重了對前後級的隔離,加入了緩衝級,使測量信號幅度的誤差減小,如圖3所示。

  

 

  2.3 音頻信號周期性的判斷及周期測量

  本系統通過設定功率門限值,能有效地判斷所送入的信號是否具有周期性,並計算出周期信號的周期值。對於一般的周期信號f(t),將f(t)展開成傅立葉級數得:

  

 

  將式(1)兩邊取傅立葉變換得:

  

 

  可看出一般的周期信號是由一系列的衝激函數組成的離散頻譜,且衝激發生在信號的諧波頻率處(0,±w1,±2w2...),而非周期信號的頻譜是連續的,所以信號頻譜分布較分散,在頻譜上不可能有大的階躍,這樣可通過設定一功率門限值,如果有大於此門限值的頻譜存在就是周期信號,反之則不是,當判斷信號為周期信號時,將信號送入比較器,產生的脈衝信號送入單片機計數從而判斷其周期。經過多次試驗,選擇一個較好的門限值,這樣就能判斷很大部分的信號(如三角波、鋸齒波、正弦波)是否具有周期性,從而準確計算出信號的周期。

  2.4 音頻信號失真度的測量

  對於正弦信號來說,基波頻譜的功率值總是最大的,可通過此方法來判斷基波的頻譜,從而得到基波的功率。正弦信號的失真度定義為信號中全部諧波分量的能量與基波能量之比的平方根值,設正弦信號的基波功率為P1,信號的總功率為P,則正弦信號的失真度為

  

 

  通過所分析出來的各頻譜功率即可計算出正弦信號的失真度。

  3 系統軟體設計

  3.1 嵌入式系統設計

  本設計在MSP430F1611單片機中嵌入了μC/OS-Ⅱ作業系統,可以很方便地實現多任務的調度與協調,極大地節約了軟體開發時間和減少了出錯機率。系統的軟體流程圖如下:圖4為FFT的軟體流程圖,圖5為負責信號採集並進行FFT計算的從機MSP430F1611的流程圖,圖6為負責外設信號分析的主機MSP430F1611的流程圖。

  

 

  3.2 FFT算法的具體設計

  3.2.1 FFT點數與採樣頻率的分析

  本系統應用基2的傅立葉變換進行計算,考慮到使用的16位MSP430F1611單片機的RAM存儲空間為10 k,由於經過FFT計算後譜線的幅值關於中心對稱,為了節省硬體資源,將FFT計算後的2048個點捨去,故可節省一半的資源,由於2 048x16 bitx2=8.192 k,故最大取N=4 096個點作FFT。本系統將頻率分辨力設定為20 Hz,如果取採樣頻率fs=40kHz,那麼此FFT的頻率分辨力△f=fs/N=10 Hz。但在實際情況下,由於FFT只能分析有限個點,必須對連續時間的信號進行截斷,相當於在時域信號加了一個窗,使信號頻譜向兩邊擴散產生頻譜洩漏效應;再加上FFT的頻率分辨力有限,使信號頻譜不能完全與FFT的譜線重合,從而產生柵欄效應,這兩種效應使分析出來的譜線擴散分布;對兩個相距只有20 Hz的信號,所以可採取提高FFT的頻率分辨力△f即減小採樣頻率或提高FFT點數,或通過加窗的方法來更精確地分析頻譜。本系統將所採集信號的頻率分成兩段,當信號頻率較高時,可利用fs=40 kHz的採樣頻率採樣,當所採集信號的頻率較低時,通過輸入裝置改變採樣頻率至fs=20kHz,這樣FFT的採樣頻率甚至可提高到△f=fs/N=5 Hz,通過此方法可提高整體系統的頻率分辨力,而分析FFT的點數受到硬體資源的限制,最後也可通過加窗的方法來提高分析精度。

  3.2.2 窗函數的選擇

  不同的窗函數對信號會產生不同的作用,旁瓣幅度比較小的窗函數有利於減小頻譜洩漏,對信號頻譜幅值的測量較為準確,但這種窗函數的主瓣寬度較大,會使分析出來的譜線向兩邊擴散得比較多,導致測量單頻,多頻信號頻率的準確度下降,如blackman窗,Flattop窗等。而旁瓣幅度衰減較弱的窗函數主瓣寬度較窄,這樣有利於對頻率準確度的測量,如矩形窗,也有兼顧兩者的如banning窗,bumming窗等。所以頻率與幅度的測量準確性是矛盾的。本系統利用matlab仿真初步估計應選用的窗函數,所分析的信號為單頻率函數

  

 

  將此信號加上各窗函數後的matlab仿真結果如下:圖7為加blackman窗後的頻率譜線,圖8為加hanning窗後的頻率譜線。

  

 

  根據上圖可以看出1 000 Hz和1 005 Hz的頻譜被分成了幾根幅值比較高的譜線,這是由於洩漏效應與柵欄效應所造成的,當加banning窗時,信號頻率剛好是FFT頻率解析度fs/N=10 Hz的整數倍時,信號譜線分成了7根幅值比較高的譜線。當加blackman窗時,譜線分成了將近20根幅值較高的譜線。但在實際情況下,當加hanning窗時,中心譜線處分成了3或4根幅值比較大的譜線,比仿真結果要好些,但加blaekman窗譜線分布得比仿真結果更廣,但計算出來的幅度值會比banning窗的精度稍微高些,為了提高音頻分析儀的頻率分辨力,應儘量使相鄰的譜線不相互重疊,這樣才能計算各個頻率信號的功率和提高頻率分辨力,經過綜合考慮,本系統選擇加hanning窗。

  4 測試方法與測試結果

  4.1 測試環境及測試儀器

  對該音頻信號分析儀在30℃室溫下進行測試,測試儀器如下:南京盛普40 M函數發生器2臺,泰克60 M數字示波器1臺,電晶體毫伏表DA-16,失真度測試儀ZC4128。

  4.2 信號功率譜的測量

  使用兩臺函數發生器產生兩路信號進行疊加後測試,A,B兩路輸入電壓為VppA=2.000 V(0.04 W),頻率為1 kHz,VppB=3.000V(0.09 W),頻率為1 kHz。表1為測試的結果,可知單信號功率譜測量誤差在0.2%之內,而總功率測量誤差也在0.2%左右。

  

 

  4.3 信號頻率解析度及周期性的測量

  通過函數發生器輸入一般的周期信號,輸入50 Hz的正弦波,以及1 000 Hz的方波,三角波,鋸齒的周期波和非周期噪聲信號,表2為測試結果,可見對一般的信號的周期性判斷很準確,頻率測試誤差在1%以內。

  

 

  4.4 信號失真度的測量

  用函數發生器分別產生1 000 Hz、100 Hz、20 Hz的三角波以及1 000 Hz、100 Hz、20 Hz的方波,並將各信號分成兩路,一路送失真度測試儀,一路送音頻信號分析儀,通過對比所得結果來判斷測試的精度。表3為測試結果,可見由於1 k左右的的諧波分量較高,抗混疊濾波器將高次諧波的能量濾除,故會使失真度偏差較大,當信號的頻率降低時,失真度會測量得比較準確。

  

 

  5 結束語

  本系統利用快速傅立葉變換(FFT)的算法,綜合外圍採樣電路,利用兩塊MSP430F1611單片機對信號進行處理,並藉助了matlab工具進行預估計和判斷,有效地減小了軟體設計的盲目性。並通過加緩衝電路減小了前後級電路的相互影響,使音頻信號分析儀的精度得到了有效地提高。

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 一種基於MSP430單片機的交流頻率檢測系統
    摘要:本文提出了一種交流信號過零檢測的電路,即捕獲交流信號的零點,並藉助MSP430單片機內部的16位定時器A(TimerA)的脈衝捕獲功能便能得到該交流信號的周期進而能得到它的頻率。系統的硬體部分主要由MSP430單片機以及整流橋、光電耦合器、三級管等器件構成;而軟體部分主要是基於MSP430單片機的C語言程序,包括系統的初始化、定時器的設置等。該系統的實驗結果和電路仿真吻合較好,具有一定的應用價值。
  • 音頻信號及音頻分析
    聲音經過模擬設備記錄或再生,成為模擬音頻,再經數位化成為數字音頻。這裡所說的音頻分析就是以數字音頻信號為分析對象,以數位訊號處理為分析手段,提取信號在時域、頻域內一系列特性的過程。各種特定頻率範圍的音頻分析有各自不同的應用領域。
  • 基於MSP430的信號發生系統設計
    通過研究DDS器件在技術實現中的具體應用,解決了傳統單片機(MCU)信號發生器輸出頻率精度差、頻率改變不夠靈活等缺點。該系統具有輸出頻率精確穩定、波形質量好和輸出頻率範圍寬等優點,同時還具有頻率計和數位訊號調製的功能。經過仿真和實驗,驗證了該系統的可行性。
  • 基於單片機的調幅信號處理
    在本設計中採用IAP15W4K61S4單片機控制,用低噪聲放大器將AM信號放大,與本振源混頻 [1] ,經過中頻濾波器濾出帶有AM調製波的10.7MHz信號,在用AGC增益控制在一個穩定的幅度,通過峰值檢波將帶有AM的調製信號解調,通過基帶放大器後再經過有源低通濾波優化輸出波形。使解調信號在1V±0.1V範圍內可調且無明顯失真。
  • 基於單片機的可攜式脈衝信號參數測試儀
    摘要:本文介紹了基於C8051F340單片機的脈衝信號參數測試儀的設計與實現。該測試儀已應用於某型軍用飛機閃光盒信號檢測中,其穩定性、精確性均能滿足要求。關鍵詞:單片機;脈衝信號;測試儀;定數計時本文引用地址:http://www.eepw.com.cn/article/173418.htm0 引言 目前在測量領域裡,脈衝信號既可作為已知的激勵信號,又可作為未知的被測信號。
  • 基於單片機的正弦信號發生器的設計
    基於單片機的正弦信號發生器的設計 秩名 發表於 2012-07-31 11:42:14   摘 要:本系統採用AT89S51單片機為核心,輔以必要的模擬,數字電路,構成了一個基於
  • 一種基於實用AGC算法的音頻信號處理方法與FPGA實現的分析研究
    一種基於實用AGC算法的音頻信號處理方法與FPGA實現的分析研究 工程師青青 發表於 2018-09-30 16:29:14 隨著現代通信技術的廣泛使用,通信企業問的競爭不斷加劇
  • 基於Freescale單片機的雙極模擬信號電路設計
    但單片機的模擬輸入端只能接受單極正向模擬信號,不能直接進行雙極模擬信號的模數轉換,為此必須把雙極模擬信號轉換成單極正向模擬信號。在一般的設計中,常常要把形如-ui-+ui的雙極型模擬信號通過電位平移電路轉換成0~5 V單極信號,而這種平移電路會使得A/D轉換的精度降低一倍,而且穩定性也降低。
  • 基於MSP430單片機的CCD相機調光電控系統設計
    模擬信號經過伺服放大驅動直流電機帶動密度盤轉動,實現自動調光。這樣的系統,調光精度差,不穩定環節多,調整方法複雜,很難滿足現代高速寬範圍攝影系絨調光要求。  八十年代中期,針對1~200幀/秒,高速寬範圍攝影系統的要求,研製一種新型調光系統。
  • 一種基於CPLD的單片機脈衝信號源設計
    單片機產生的脈衝信號源由於是靠軟體實現的,所以輸出頻率及步進受單片機時鐘頻率、指令數和指令執行周期的限制。這些基於EEPROM的器件能夠組合傳輸延遲快至5.0ns,16位頻率為178MHz。此外,它們的輸入寄存器的建立時間非常短,能夠提供多個系統時鐘且有可編程的速度/功率控制。  MAX7000S是MAX7000系列的增強型,具有高密度,是通過工業標準4引腳JTAG接口實現在線可編程的,在線編程電壓為5V。
  • MSP430 定時器輸出PWM波形
    定時器的PWM輸出有有8種模式:輸出模式0  輸出模式:輸出信號OUTx由每個捕獲/比較模塊的控制寄存器CCTLx中的OUTx位定義,並在寫入該寄存器後立即更新。最終位OUTx直通。 輸出模式1 置位模式:輸出信號在TAR等於CCRx時置位,並保持置位到定時器復位或選擇另一種輸出模式為止。
  • 基於MSP430的智能自適應間斷光控系統
    摘要:為了克服現有補光系統補光時間、補光程度不能調節,全光譜不能被光合作用充分利用的缺點,系統基於MSP430單片機,利用光合作用
  • 《電子發燒友網51單片機設計方案TOP10》
    數據採集器單元將流量計、PH計、COD計等各個現場測量儀器輸出的標準4~20mA的電流信號轉變成數位訊號,並對採集數據進行內部保存,然後通過GPRS模塊採用無線傳輸方式發送給監控中心,由運行在監控中心計算機中的「監測信息實時處理系統」軟體進行監測數據的集中處理和分析,監控中心人員就可以根據處理和分析後的數據了解採集點出的環境質量狀況。
  • 基於單片機設計的酒精氣體濃度探測儀
    基於STC12C5A16AD單片機設計的酒精氣體濃度探測儀,可用來檢測酒精氣體濃度,當酒精氣體濃度高於允許限定值時,發出報警。2 電路設計思路2.1 酒精濃度檢測儀電路由酒精氣體濃度傳感器MQ-3負責檢測空氣中的酒精氣體濃度;由單片機內部自帶的模/數轉換器把檢測到的模擬量(表示酒精濃度)的電壓信號轉換成數字量;然後和預先設定的表示酒精濃度的閥值進行比較,如果比較結果超過閥值就由單片機P2.3口輸出方波信號控制PNP型三極體VT4驅動蜂鳴器發出報警聲;同時由單片機P2.6口輸出低電平控制發光二極體
  • 基於AT89S52單片機的超聲波信號發射與接收電路設計
    打開APP 基於AT89S52單片機的超聲波信號發射與接收電路設計 發表於 2019-07-19 15:41:20 脈衝調製信號產生電路中通過單片機對555定的復位(RESET)端的控制,使555定時器分時工作從而生產生脈衝頻率為40KHz,周期為30ms 的脈衝調製信號,信號波形如圖2所示,本設計中一個周期內發送10個脈衝信號。隔離電路主要是由兩個與非門組成,對輸出級與脈衝產生電路之間進行隔離。
  • 一種基於MSP430的直流電子負載設計方案
    1 理論分析與計算1.1 電子負載恆流電路的分析電子負載恆流電路是檢測到穩壓電源電壓通過AD轉換後送入單片機通過PID算法送入顯示屏來顯示所測的電壓,通過AD後將送入單片機經過TIV5616送入比較器LM358和三極體達到恆流的作用。
  • 基於單片機的角度測量儀的設計
    本文分析了基於AT89S51 單片機的角度測量的硬體組成、電路設計原理。給出了主函數的工作流程和原始碼。設計樣機已通過多種環境實驗的測試。  角度測量儀是某控制系統中瞄準裝置的關鍵部件。  1  硬體基本原理  首先,角度測量儀利用單片機讀取光電編碼器測出的角度值,再將角度值轉換成密位值並顯示在數碼屏上(注意: 密位(mil) 是一種角度單位,密位100 = 角度6°)。單片機判斷當前角度值的偏差範圍,給出控制信號點亮相應的發光二極體指示燈。
  • 基於單片機及傳感器的機器人設計與實現
    摘要: 本設計基於單片機及多種傳感器,完成了一個自主式移動機器人的製作。單片機作為系統檢測和控制的核心,實現對機器人小車的智能控制。本文針對具有引導線環境下的路徑跟蹤這一熱點問題,基於單片機控制及傳感器原理,通過硬體電路製作和軟體編程,製作了一個機器人,實現了機器人的路徑跟蹤和自動糾偏的功能,並能探測金屬,實時顯示距離。
  • 基於MCS-51單片機的直流電機轉速測控系統設計
    摘要:給出了一種基於89C51單片機以及PWM控制思想的高精度、高穩定、多任務直流電機轉速測控系統本文介紹的電機控制系統利用PWM控制原理,同時結合霍爾傳感器來採集電機轉速,並經單片機檢測後在顯示器上顯示出轉速值,而單片機則根據傳感器輸出的脈衝信號來分析轉速的過程量,並超限自動報警。本系統同時設置有按鍵操作儀表,可用於調節電機的轉速。
  • 基於單片機的恆流源技術研究
    恆流源設計中主要針對以上第3 和第4 個因素設計了基於數字控制的直流恆流源,可以提高恆流源輸出電流的穩定性。1 數字控制直流電流源系統工作原理 本論文設計了基於單片機的數控恆流源,該系統由恆流源主電路和單片機最小系統組成,其中單片機最小系統主要由單片機控制單元、A/ D 和D/ A 轉換模塊以及負載及鍵盤顯示模塊組成,系統結構框圖如圖1所示。