1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      低頻數字相位(頻率)測量的CPLD實現

      更新時間: 2008-05-31 09:21:19來源: 粵嵌教育瀏覽量:888

        在電子測量技術中,測頻測相是基本的測量之一。相位測量儀是電子領域的常用儀器,當前測頻測相主要是運用等精度測頻、PLL鎖相環測相的方法。研究發現,等精度測頻法具有在整個測頻范圍內保持恒定的高精度的特點,但是該原理不能用于測量相位。PLL鎖相環測相可以實現等精度測相,但電路調試較復雜。因此,選擇直接測相法作為低頻測相儀的測試方法[1、2、3、4]。

        設計的低頻測相儀,滿足以下的技術指標:a .頻率20-20KHz;b .輸入阻抗≥100KΩ;c.相位測量誤差≤1度; d.具有頻率測量和數字顯示功能;e.顯示相位讀數為0度--359度。

      1系統工作原理

                                   圖1 測頻測相系統原理框圖

        系統工作原理如圖1所示,系統運行時,首先由單片機通過clr控制線送清零信號,啟動CPLD的計數模塊,在設計的CPLD內部控制模塊作用下,記錄AB兩相的相差間隔時間內的標頻個數(測相計數器),同時也記錄下A相一個周期內的標頻個數(測頻計數器),此后測頻和測相計數器處于保持狀態,同時送出right信號表明完成測頻測相的計數,單片機可以讀數據。

        單片機和CPLD的數據采用獨立接口方式,這樣設計比較靈活,可以不受單片機總線時序的影響。由ADD[0..2]進行控制,分別讀取測頻測相計數器中的19位數據,并存于單片機中,進行后續的計算。單片機完成數據的運算后,將所得數據轉化為10進制,送到顯示板進行顯示。顯示板共有8個數碼管,其中,前5位用于顯示頻率(為20000Hz),后三位顯示相位(為359度)。

        在CPLD設計中,根據計算,選取測頻、測相計數器長度均為19位,在標頻信號為10MHz時,相位測量精度小于1度。若只用89C51,其自帶的計數器只有16位,且不易同時實現測頻測相的功能。故選用CPLD實現其測頻測相的計數功能,并設計了獨立的數據接口,以便與單片機交換數據[5、6]。

      2 CPLD測頻測相模塊工作原理

                              圖2 CPLD測頻測相內部原理框圖

        如圖2所示,利用VHDL語言設計了完成測頻測相計數功能的數字芯片。整個芯片由測頻計數器、測相計數器、控制部分、數據選擇器和測試用分頻器5個部分組成。

        控制部分主要是利用狀態機原理,設計了檢測一個測頻周期的控制電路。在clr信號為高時,啟動測頻測相計數器,此時,狀態機處于計數工作狀態;當A相個上升沿到來時,測頻測相計數器同時啟動,開始計數;當B相個上升沿到來時,控制部分控制測相計數器停止計數;當A相第二個上升沿到來時,控制部分控制測頻計數器停止計數,同時送出計數完成信號right;此后測頻測相計數器處于保持狀態。

        單片機讀數時,通過設置add[0..2]數據選擇器的地址選通端,依次送出測頻計數器中的19位數據,8位一組,從xcout[0..7]端口送出,單片機需分3次讀完測頻計數器中的19位數據,數據選通端設置為001,010,011;同理,單片機也需分3次讀完測相計數器中的19位數據,數據選通端設置為100,101,110。

        為了測試方便,設計了測試用分頻器,該分頻器系數可以在VHDL源程序中改動,如為1000,則將測試時用的標頻信號10M進行1000分頻,分頻后頻率為10KHz,正好處于20-20KHz范圍內。

      3 單片機程序

        如圖3所示,系統上電后,首先由單片機送出清零信號,啟動CPLD中的測頻測相計數器,CPLD進行測頻測相的計數,單片機查詢到right=1,則表明計數器完成計數工作,開始讀取CPLD中的數據。否則,就等待。單片機通過控制CPLD中數據選擇器的地址選通端add[0..7],分別讀取測頻、測相計數器的19位數據,并進行相應的計算。計算中首先調用頻率計算子程序,計算出相應的頻率,然后再調用相位計算子程序,計算出相應的相位,再調用進制轉換程序,將16進制的數轉換成10進制,調用顯示子程需,在8位數碼管中顯示出測量的頻率、相位值。由于篇幅關系,此處不再詳述具體程序和顯示部分的設計。


      4 結束語

        由單片機晶振產生的6M信號,經過一個與非門整形為矩形脈沖,再經過CPLD7128的內部設計的分頻器分頻(分頻系數為1000、2000、3000、4000),由該系統進行測頻測相。AB二相的信號加上一個反相器,則從理論上講,相位相差180度。實際測量結果為,頻率分別是6000、3000、2000、1500Hz,相位為180度,與理論完全符合。利用DDS數字移相信號發生器產生不同頻率和相位差的信號實測證實,該系統指標符合設計要求。

        隨著EDA(電子設計自動化)技術和微電子技術的進步,CPLD的時鐘延遲可達到 級,結合其并行工作方式,在超高速、實時測控方面有非常廣闊的應用前景;并且CPLD&FPGA具有高集成度、高可靠性,幾乎可將整個設計系統下載于同一芯片中,實現所謂片上系統(SOPC),從而大大縮小其體積,具有可編程型和實現方案容易改動的特點,有利于產品的研制和后期升級[7]。


        CPLD7128大約有128個觸發器,程序中AB兩相計數器共用了19+19=38個,控制部分用了4個,還剩下了大約128-42=86個(其他模塊還有少量的占用)。 CPLD7128的計數頻率可175.4MHz,若提高標頻信號的頻率為175 MHz,同時增加計數器的長度,則測相精度從理論上講可以達到0.04度。

        采用CPLD配合單片機的設計方案,具有造價較低、速度高、精度高的優點,并且可以通過軟件下載而達到儀器硬件升級的目的。




      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 午夜性刺激在线视频免费 | 日韩AV在线免费观看 | 尤物精品国产第一福利网站 | 日本思思热精品一区二区 | 一区二区三区久久国产 | 在线中文字幕亚洲日韩理论 |