日韩毛片在线视频-日韩毛片在线影视-日韩美aaa特级毛片-日韩美a一级毛片-久久夜夜操妹子-久久夜夜肉肉热热日日

江蘇奇正自動化儀表有限公司
免費會員
壓力校驗儀
熱工信號校驗儀表
熱電偶校驗儀
熱電阻校驗儀
精密數字壓力計
差壓.壓力變送器
流量儀表
溫度變送器及傳感器
壓力泵
液位變送器
雙金屬溫度計
電阻電偶校驗儀表
自動校驗系統
氣體減壓器
氧化鋯
物位計
超聲波流量計
閥門
壓力表
熱電阻
熱電偶
數字顯示儀表
物位儀表
電線電纜補償導線
防腐液位變送器
傳感器在壓縮機中的應用
臺式氣壓壓力泵
電渦流傳感器
特穩信號校驗儀
伴熱電纜

基于MSP430的嵌入式DTMF撥號解碼器方案設計

時間:2012/4/23閱讀:2559
分享:
  摘要:本文介紹了一種基于MSP430的嵌入式DTMF撥號解碼器實現方案。DTMF撥號部分使用4根I/O線的電阻網絡,配合軟件產生DTMF信號。利用MSP430F133內置的ADC,并采用改進的Goertzel算法,實現DTMF信號的實時解碼。該方案成本低、性能可靠,已經得到了實際應用。
  
  引言
  
  DTMF(雙音多頻)信號是網中常用的信令,無論是家用、還是程控交換機上,多采用DTMF信號發送接收號碼。DTMF技術還可以用于電力線載波通信等場合。可見,DTMF撥號和解碼在通信系統及其它方面有著廣泛的應用。通常DTMF信號的檢測采用芯片或DSP來實現,但其成本較高。本文介紹了一種低成本的基于MSP430F133的DTMF撥號解碼器實現方案。MSP430F133是TI的一款16位RISC結構MCU,zui短指令周期為150ns,含有8KBFlashROM,256BRAM并內置12位ADC。
  
  DTMF信號
  
  DTMF信號是將撥號盤上的0~9、A~D及*/E、#/F共16個字符,用音頻范圍的8個頻率來表示的一種編碼方式。8個頻率分為高頻群和低頻群兩組,分別作為列頻和行頻。每個字符的信號由來自列頻和行頻的兩個頻率的正弦信號疊加而成。頻率組合方式如圖1所示。
  
  根據CCITTQ.23建議,DTMF信號的技術指標是:傳送/接收率為每秒10個號碼,或每個號碼100ms。每個號碼傳送過程中,信號存在時間至少45ms,且不多于55ms,100ms的其余時間是*。在每個頻率點上允許有不超過±1.5%的頻率誤差。任何超過給定頻率±3.5%的信號,均被認為是無效的,拒絕承認接收。另外,在zui壞的檢測條件下,信噪比不得低于15dB。
  
  DTMF撥號
  
  DTMF撥號部分的電路原理圖如圖2所示。電路主要由4根I/O線構成的電阻網絡和濾波器組成。電阻網絡構成4位的DAC,高通濾波器和低通濾波器組成一個帶通濾波器用來濾除雙音頻的諧波信號。在輸出端采用600Ω的1:1變壓器與線接口,線的輸出電平可通過改變Rx來進行調節。

  
  軟件上使用查表方式模擬產生兩個不同頻率的正弦波。首先確定一個合適的采樣間隔,對每個頻率的正弦波進行采樣并規格化成0~7(3位數據),制成相應的正弦表。正弦表的制定要保證合成信號的頻率誤差在±1.5%以內,同時使采樣點數盡量少。為使波形失真度小,正弦表記錄的總信號時間對應原始信號的整數個周期,并且采樣起點選在正波形的峰值上。本設計采樣間隔選定為122us,保證頻率誤差均在±1%以內,各個頻率信號的采樣點數及頻率誤差見圖3所示。
  
  DTMF撥號程序流程圖如圖4所示。
  
  DTMF解碼
  
  采用軟件方式進行DTMF解碼,首先要將模擬信號轉換成數字信號,然后再送入CPU處理。利用MSP430F133內置的12位ADC加上簡單的接口就可以實現模數轉換,ADC接口電路如圖5所示。其中應選1%精度的金屬膜電阻。ADC參考電壓選內部2.5V:
  
  DTMF解碼可以通過計算所接收到的信號在8個既定頻率點的頻譜值來確定是否為有效的DTMF信號及接收到的是哪個號碼。另外,需要通過一系列的有效性檢驗以防止誤判。
  
  FFT可用來計算N點頻率處的頻譜值,但不適合于此處應用。因為它計算了許多不需要的值,計算量太大;而且為保證頻率分辨率,FFT的點數較大。另外,它不能按逐個樣點的方式處理,不利于實時實現。
  
  由于只需要知道8個特定點的頻譜值,采用一種稱為Goertzel算法的DFT算法可以有效地提高計算效率。它相當于一個含兩個極點的IIR濾波器,8個頻點對應各自相匹配的濾波器,其傳遞函數為
  
  然而Goertzel算法還是有一個缺點,那就是它計算的是頻率處的頻譜值,而的頻率值通常只能對應某個近似的整數k,為了達到要求的分辨率,就需要較大的樣點數N。改進的方法是:修改傳遞函數,不計算角頻率處的頻譜值,而計算角頻率處的頻譜值。這樣分辨率能達到數據自然加窗(矩形窗)的分辨率。它的傳遞函數為
  
  改進的Goertzel算法運算步驟如下:
  
  1.對每個采樣點遞歸計算(n=0,1,…,N)
  
  其初始條件是
  
  2.當N個樣點采集并計算完成后,計算8個頻譜值:
  
  在選定采樣頻率為6Khz基礎上,選取N=86個樣點即可達到所需的頻率分辨率。這對應約15ms信號,可以保證一位號碼能接收到兩個完整的DTMF信號周期。
  
  當8個頻譜值計算出來后,還要進行DTMF有效性檢驗,以判定是否為有效的DTMF信號。有效性檢驗包括以下幾項內容:(1)高、低頻段的zui大幅值都必須大于某個門限值,而且二者之和也要大于某個門限值。(2)高、低頻段的zui大幅值與各自頻段其它三個幅值相比,其差值必須大于某個門限值。(3)逆向絞度檢驗即低頻段zui大幅值不得超過高頻段zui大幅值8dB,標準絞度檢驗即高頻段zui大幅值不得超過低頻段zui大幅值4dB。(4)高、低頻段zui大幅值之和與其它6個幅值之和之比,必須大于某個門限值。
  
  若上述檢驗通過,判定當前周期DTMF信號有效,根據頻率組合可確定是對應哪個號碼。但要確認接收到一個有效的號碼,還要滿足兩個條件,一是要有兩個以上連續周期的有效且相同的DTMF信號,以保證信號持續時間,二是前面有足夠的*時間,以避免重復識別。
  
  DTMF解碼程序流程圖如圖6所示。
  
  解碼時每次迭代需要八次乘法,由于F133沒有硬件乘法器,要用"移位加"做乘法,因此優化乘法運算將大大提高計算效率。優化從幾個方面考慮:盡量使用寄存器尋址方式,充分利用150ns指令;另外每個頻點的乘數是固定已知的,因此"移位加"可以不用逐位循環并判斷的方式,而用按位*展開的方式以省去判斷動作;此外,在前端增加簡單的增益控制可以保證后續運算不發生溢出,省去溢出處理。經過上述優化,實現了DTMF的實時解碼。
  
  結語
      
        該DTMF撥號解碼器方案成本低、性能可靠,已經得到了實際應用。

會員登錄

×

請輸入賬號

請輸入密碼

=

請輸驗證碼

收藏該商鋪

X
該信息已收藏!
標簽:
保存成功

(空格分隔,最多3個,單個標簽最多10個字符)

常用:

提示

X
您的留言已提交成功!我們將在第一時間回復您~
在線留言
主站蜘蛛池模板: 国产一区二区三区免费播放 | 国产精品免费小视频 | 日韩国产欧美在线观看 | 国产成人一区二区三区影院免费 | 日日干日日 | 欧美性极品hd高清视频 | 成人小视频在线观看免费 | 国产精品视频一 | 久久99免费视频 | 欧美中文字幕一区 | 欧美精品亚洲精品日韩经典 | 国产午夜毛片v一区二区三区 | 国产乱码精品一区二区三区网页版 | 99久久精品国产一区二区 | a毛片全部免费播放 | 欧美日韩亚洲天堂 | 亚洲黄色a | 性刺激欧美三级在线现看中文 | 国产精品自在欧美一区 | 午夜在线视频免费 | 久久久久久午夜精品 | 色婷五月综激情亚洲综合 | 91亚洲成人| 手机看日韩 | 午夜剧场直接免费观看 | 日韩版码免费福利视频 | 天天爽夜夜爽 | www.色五月 | 欧美视频在线观看免费 | 亚洲美女又黄又爽在线观看 | 国产一级毛片午夜福 | 天天摸天天干 | 国产91色拍| 五月婷婷综合在线视频 | 男女无遮挡毛片视频播放 | 亚洲黄色片一级 | 日韩在线三级视频 | 中国日韩欧美中文日韩欧美色 | 黄免费观看 | 天天摸夜班摸天天碰 | 日韩精品一区二区三区免费观看 |