<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于TMS320F2812DSP的測頻方法及數(shù)字頻率計的方案設(shè)計

          基于TMS320F2812DSP的測頻方法及數(shù)字頻率計的方案設(shè)計

          作者: 時間:2010-07-05 來源:網(wǎng)絡(luò) 收藏
          本文給出一種TMS320F2812(簡稱F2812)DSP的一種簡易測頻。該有效利用F2812的片內(nèi)外設(shè)事件管理器的捕獲功能,在被測信號的有效電平跳變沿捕獲計數(shù),電路實現(xiàn)多靠軟件設(shè)置,運算簡單,實時性好,測量精度高。
            1 測量
            常用的測頻方法主要有直接測頻法、直接測周法以及多周期測量法。直接測頻法雖在高頻段的精度較高,但在低頻段的精度較低,直接測周法則恰恰相反。多周期測量法是將被測信號和標(biāo)準(zhǔn)信號分別輸入到兩個計數(shù)器,其實際閘門時間不是固定值,而是被測信號周期的整數(shù)倍,因此消除了對被測信號計數(shù)時產(chǎn)生的±1 Hz的計數(shù)誤差,其精度僅與閘門時間和標(biāo)準(zhǔn)有關(guān)。因此本設(shè)計采用多周期測量法作為具體的實施方案。
            2 系統(tǒng)的設(shè)計
            2.1 系統(tǒng)的硬件設(shè)計
            硬件系統(tǒng)總體框圖如圖1所示。被測信號首先經(jīng)過限幅放大、直流偏置、整形電路,變換為0~3.3 V的方波信號,然后再進入DSP,利用其定時器和捕獲單元實現(xiàn)的測量。測量完成后,一方面可由鍵盤設(shè)置相關(guān)參數(shù)通過LCD顯示測量結(jié)果,另一方面可通過RS一232傳送給PC機顯示測量結(jié)果。另外,為了提高系統(tǒng)的可靠性,增加了一個自我校準(zhǔn)電路,即在測量之前,可通過軟件設(shè)置產(chǎn)生1 MHz的標(biāo)準(zhǔn)脈沖信號,送到信號調(diào)理模塊的輸入端,檢測測量結(jié)果是否正確,從而達到自我校準(zhǔn)的目的。
            本設(shè)計選用美國德州儀器公司(TI)的作為核心處理單元。F2812是TI公司近幾年推出的高速、高精度的工業(yè)控制DSP芯片。它運算速度快,工作時鐘達150 MHz,指令周期可以達到6.67 ns以內(nèi),低功耗(核心電壓1.8 V,I/O口電壓3.3 V)。它采用哈佛總線結(jié)構(gòu),具有強大的操作能力;外圍設(shè)備包括3個32位的CPU定時器,16通道的12位A/D轉(zhuǎn)換器,串行外圍接口(SPI),2個串行通信接口(SCI)等。其片內(nèi)外設(shè)時間管理器含有2個模塊(EVA和EVB),每個模塊都包括2個通用定時器,3個全比較/PWM單元,3個捕獲單元和 1個正交編碼脈沖電路。本設(shè)計主要利用EVA中的2個通用定時器(T1和T2),2個捕獲單元(CAPl和CAP3),EVB中的1個通用定時器 (T3)。具體測量原理如圖2所示。
            首先設(shè)定T3比較值(預(yù)置閘門時間為0.012 8 s),設(shè)定T1的比較值為1,使能CAPl。然后使能T1,當(dāng)其接收到一個整周期的被測信號時即可產(chǎn)生比較輸出,同時產(chǎn)生比較中斷,讀取CAPl的棧值 (即T2的初值t2_1),清T1、T2上溢次數(shù),使能CAP3和T3。最后當(dāng)T3定時結(jié)束,借助于D觸發(fā)器在被測信號的下一個上升沿到來時,切斷T1的比較輸出,同時PDPINTA將被置位,然后記錄T1和T2的上溢次數(shù)tlofcount、t2ofcount,讀取CAPl的棧值(即T2的末值 t2_2)和CAP3的棧值(即T1的末值tl_2)。由所得數(shù)據(jù)計算頻率,禁止T1、T2、CAPl和CAP3。頻率計算公式為:
            注意:CAPl的捕獲時基為T2,CAP3的捕獲時基為T1,標(biāo)準(zhǔn)頻率信號為150 MHz時鐘頻率的8分頻。
            2.2 系統(tǒng)的軟件設(shè)計
            主監(jiān)控程序是整個軟件系統(tǒng)的總調(diào)度程序,它控制著程序的有序運行。系統(tǒng)在上電或復(fù)位后,主程序先調(diào)用各模塊的初始化子程序,主要包括GPIO初始化、PIE初始化、EV初始化和SCI初始化。系統(tǒng)初始化完成之后,主程序啟動CPU_Timer0,使能 T1、T2的上溢中斷,啟動CAPl,設(shè)置T1的比較值為1,等待T1CINT置位,開始測量頻率。為減小測量過程中產(chǎn)生的隨機誤差,所測結(jié)果均取平均值。利用CPU_Timer0產(chǎn)生一定的時間段(O.6s)。該時段結(jié)束后(CPU_TimerO中斷標(biāo)志位置位),即對該段時間段內(nèi)記錄的測量結(jié)果求均值。此時,如果查詢到上位機發(fā)出接收請求,則傳送相應(yīng)數(shù)據(jù)至PC顯示。然,后,重新初始化定時器和捕獲單元,進入下一輪測量。主監(jiān)控程序流程如圖3所示。
            測頻的部分源代碼如下:

          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();