<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è) > 嵌入式系統 > 設計應用 > 基于TMS320F2812DSP的測頻方法的數字頻率計的方案設計

基于TMS320F2812DSP的測頻方法的數字頻率計的方案設計

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

上一頁(yè) 1 2 下一頁(yè)

評論


相關(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>