基於FPGA的數字示波器頻率計算方式

在此,我首先說明,測試的波形是理想波形,我是採用實驗室的信號發生器產生正弦波,方波,三角波,並頻率要達到一定大小才能確保測試的數據準確。所以,該項目只能自己做着玩,若想做產品,只能參考。

常用的頻率測量方法有兩種:週期測量法和頻率測量法。週期測量法是先測量出被測信號的週期T,然後根據頻率f = 1/T求出被測信號的頻率。頻率測量法是在時間t內對被測信號的脈衝數N進行計數,然後求出單位時間內的脈衝數,即爲被測信號的頻率。但是上述兩種方法都會產生± 1個被測脈衝的誤差,在實際應用中有一定的侷限性。根據測量原理,很容易發現週期測量法適合於低頻信號測量,頻率測量法適合於高頻信號測量,但二者都不能兼顧高低頻率同樣精度的測量要求。

等精度測量的一個最大特點是測量的實際門控時間不是一個固定值,而是一個與被測信號有關的值,剛好是被測信號的整數倍。在計數允許時間內,同時對基準時鐘和被測信號進行計數,再通過數學公式推導得到被測信號的頻率。由於門控信號是被測信號的整數倍,就消除了對被測信號產生的± l週期誤差,但是會產生對基準時鐘± 1週期的誤差。 特別是在中低頻測量的時候,相較於傳統的頻率測量和週期測量方法,可以大大提高測量精度。

上面一段文字是我複製粘貼正點原子文檔上關於等精度測量描述。具體什麼是等精度測量,百度一大堆,在此就不進行詳細闡述,下面就是模擬量的測頻方法。
衆所周知,FPGA屬於數字芯片,無法直接對模擬量進行處理,所以我們需要藉助一塊AD芯片,將模擬量轉化爲數字量。下面是對數字量進行處理在這裏插入圖片描述
因爲我使用的AD芯片是8位的,最大隻能爲255,所以我將信號進行量化,大於等於128的爲高電平,低於128的爲低電平,這樣就將8位的數字量,轉化爲一位的方波,方便計算。接下來就是對該方波進行測頻。經測試,大於600khz的信號才能確保測得數據正確,低於600khz,會差10khz左右。

發佈了8 篇原創文章 · 獲贊 14 · 訪問量 7016
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章