新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 低頻數(shù)字相位(頻率)測(cè)量的CPLD實(shí)現(xiàn)

低頻數(shù)字相位(頻率)測(cè)量的CPLD實(shí)現(xiàn)

作者:陳明杰 時(shí)間:2008-05-30 來(lái)源:微計(jì)算機(jī)信息 收藏

  在技術(shù)中,測(cè)頻測(cè)相是最基本的測(cè)量之一。儀是電子領(lǐng)域的常用儀器,當(dāng)前測(cè)頻測(cè)相主要是運(yùn)用等精度測(cè)頻、PLL鎖相環(huán)測(cè)相的方法。研究發(fā)現(xiàn),等精度測(cè)頻法具有在整個(gè)測(cè)頻范圍內(nèi)保持恒定的高精度的特點(diǎn),但是該原理不能用于測(cè)量相位。PLL鎖相環(huán)測(cè)相可以實(shí)現(xiàn)等精度測(cè)相,但電路調(diào)試較復(fù)雜。因此,選擇直接測(cè)相法作為低頻測(cè)相儀的測(cè)試方法[1、2、3、4]。

本文引用地址:http://m.butianyuan.cn/article/83378.htm

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

  1系統(tǒng)工作原理

        

                                圖1 測(cè)頻測(cè)相系統(tǒng)原理框圖

  系統(tǒng)工作原理如圖1所示,系統(tǒng)運(yùn)行時(shí),首先由通過(guò)clr控制線送清零信號(hào),啟動(dòng)的計(jì)數(shù)模塊,在設(shè)計(jì)的內(nèi)部控制模塊作用下,記錄AB兩相的相差間隔時(shí)間內(nèi)的標(biāo)頻個(gè)數(shù)(測(cè)相計(jì)數(shù)器),同時(shí)也記錄下A相一個(gè)周期內(nèi)的標(biāo)頻個(gè)數(shù)(測(cè)頻計(jì)數(shù)器),此后測(cè)頻和測(cè)相計(jì)數(shù)器處于保持狀態(tài),同時(shí)送出right信號(hào)表明完成測(cè)頻測(cè)相的計(jì)數(shù),可以讀數(shù)據(jù)。

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

  在CPLD設(shè)計(jì)中,根據(jù)計(jì)算,選取測(cè)頻、測(cè)相計(jì)數(shù)器長(zhǎng)度均為19位,在標(biāo)頻信號(hào)為10MHz時(shí),精度小于1度。若只用89C51,其自帶的計(jì)數(shù)器只有16位,且不易同時(shí)實(shí)現(xiàn)測(cè)頻測(cè)相的功能。故選用CPLD實(shí)現(xiàn)其測(cè)頻測(cè)相的計(jì)數(shù)功能,并設(shè)計(jì)了獨(dú)立的數(shù)據(jù)接口,以便與單片機(jī)交換數(shù)據(jù)[5、6]。

  2 CPLD測(cè)頻測(cè)相模塊工作原理

       

                         圖2  CPLD測(cè)頻測(cè)相內(nèi)部原理框圖

  如圖2所示,利用VHDL語(yǔ)言設(shè)計(jì)了完成測(cè)頻測(cè)相計(jì)數(shù)功能的數(shù)字芯片。整個(gè)芯片由測(cè)頻計(jì)數(shù)器、測(cè)相計(jì)數(shù)器、控制部分、數(shù)據(jù)選擇器和測(cè)試用分頻器5個(gè)部分組成。

  控制部分主要是利用狀態(tài)機(jī)原理,設(shè)計(jì)了檢測(cè)一個(gè)測(cè)頻周期的控制電路。在clr信號(hào)為高時(shí),啟動(dòng)測(cè)頻測(cè)相計(jì)數(shù)器,此時(shí),狀態(tài)機(jī)處于計(jì)數(shù)工作狀態(tài);當(dāng)A相第一個(gè)上升沿到來(lái)時(shí),測(cè)頻測(cè)相計(jì)數(shù)器同時(shí)啟動(dòng),開(kāi)始計(jì)數(shù);當(dāng)B相第一個(gè)上升沿到來(lái)時(shí),控制部分控制測(cè)相計(jì)數(shù)器停止計(jì)數(shù);當(dāng)A相第二個(gè)上升沿到來(lái)時(shí),控制部分控制測(cè)頻計(jì)數(shù)器停止計(jì)數(shù),同時(shí)送出計(jì)數(shù)完成信號(hào)right;此后測(cè)頻測(cè)相計(jì)數(shù)器處于保持狀態(tài)。

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

  為了測(cè)試方便,設(shè)計(jì)了測(cè)試用分頻器,該分頻器系數(shù)可以在VHDL源程序中改動(dòng),如為1000,則將測(cè)試時(shí)用的標(biāo)頻信號(hào)10M進(jìn)行1000分頻,分頻后頻率為10KHz,正好處于20-20KHz范圍內(nèi)。

  3 單片機(jī)程序

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

        

分頻器相關(guān)文章:分頻器原理

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

評(píng)論


相關(guān)推薦

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

關(guān)閉