張一荻
摘 要:設計了以STM32單片機為核心的脈沖信號參數測試儀,可測量脈沖信號的幅度、頻率、占空比、上升時間等參數。儀器利用STM32增強型單片機的高速、高精度運算能力,可實現脈沖信號參數的高速精密采樣;采用的精度測量等一系列措施,有效提高了測量精度,縮短了測量時間。實驗結果表明,研制的測試儀精度高、可靠性好、誤差率低,可用于電信號參數測量、儀器檢測等領域。
關鍵詞:STM32單片機 脈沖信號 精密測試 等精度測量
中圖分類號:TP216 文獻標識碼:A 文章編號:1672-3791(2017)01(c)-0027-02
隨著現代電子技術的高速發展,對于脈沖信號測量精度和速度的要求也越來越高,尤其雷達信號等微弱脈沖信號的檢測[1-3]。但目前往往采用傳統示波器對脈沖信號進行測試,這樣很難達到對脈沖信號參數的全面、精密測量。針對上述情況,該文設計了一種脈沖信號參數高精度測試儀,儀器以STM32增強型單片機為核心,利用STM32增強型單片機的高性能特性,可實現脈沖信號的幅度、頻率、占空比、上升時間等參數的高速高精度測量。
1 硬件電路設計
設計的脈沖信號參數測試儀如圖1所示,以單片微型計算機為核心,由信號調理電路、采樣控制電路、電源電路、鍵盤電路、通信電路、顯示器等組成。單片機選用32位的STM32增強型單片機[4], 該單片機的最高時鐘頻率為72 MHz,內置8個定時/計數器和一個實時時鐘 RTC,并集成有3個12位的A/D轉換器、1個D/A轉換器和80個I/O口,其運算速度快、計算精度高、功率消耗低,可高速高精度檢測脈沖信號的各個參數。
單片機電源電路如圖2所示,選用SPX1117 電壓轉換芯片,該芯片將5 V的電壓轉換為3.3 V的電壓,提供給單片機,作為單片機的電源電壓。
考慮單片機的電源電壓為3.3 V,必須對被測的脈沖信號進行幅值處理,脈沖信號調理電路如圖3所示,選用LM393比較器,比較器將輸入的不同幅值脈沖信號整形成3.3 V的方波信號,再輸入單片機,進行頻率、占空比測量。
頻率測量采用等精度測量的方法,采樣時間為被測信號周期的整數倍。采樣電路如圖4所示,由兩個D觸發器構成,經兩個D觸發器的觸發后,將被測信號轉換成一個采樣信號,采樣信號高電平的寬度為被測信號周期的2倍,當采樣信號上升沿到來時,單片機開始對片內時鐘信號和被測信號進行計數;當下降沿到來時,停止計數。然后根據兩個計數器的計數值和時鐘信號的頻率,即可計算出被測信號的頻率。
2 軟件設計
2.1 測量頻率
測量頻率采用等精度測量的方法[5],采樣時間是被測信號周期的整數倍,與被測信號同步,由此消除對被測信號計數所產生的±1個字誤差,實現整個測試頻段的等精度測量。在采樣時間段,計數器分別對單片機時鐘脈沖信號和被測脈沖信號進行計數,設時鐘脈沖信號的頻率為,時鐘脈沖信號的計數值為N0,被測脈沖信號的計數值為N,則被測信號的頻率為:
(1)
2.2 占空比測量
測量占空比采取直接測量脈寬的方法。利用脈沖計數法,分別對待測信號的高電平和低電平用單片機時鐘脈沖進行計數,根據脈沖數目計算待測信號寬度。設高電平計數值為NH,低電平計數值為NL,則占空比為:
(2)
2.3 幅值和上升沿時間測量
脈沖信號幅值和上升沿時間直接通過單片機直接檢測,如圖1所示,被測信號經A/D轉換后輸入單片機,單片機對轉換后的數字量進行采樣,若采樣結果低于某個值則認為是低電平直接舍去,將剩余的數據存入單片機的數據存儲器中,再利用冒泡排序法求中位數,即為脈沖信號的幅值。
在測量占空比時,當單片機檢測上升沿數值達到10%幅值時,發出中斷,觸發計數器計數,當單片機檢測上升沿數值達到90%幅值時,則計數器停止計數。設計數器的計數值為N0,時鐘脈沖信號的頻率為,則上升沿時間為:
(3)
3 實驗測試
對設計的儀器進行了頻率、占空比、幅值和上升時間測量功能的性能測試,測試數據如表1所示。
由表1可見,儀器能夠測量脈沖信號的頻率為10 Hz~5 MHz,誤差值小于0.01%;占空比為10%~90%,誤差值小于0.02%;幅度為0.1~10 V,誤差值小于0.1%;脈沖上升時間為100~900 ns,誤差值小于1%。
4 結語
設計的以STM32單片機為核心的脈沖信號參數測試儀,可測量脈沖信號的幅度、頻率、占空比、上升時間等參數。儀器利用STM32增強型單片機的高速高精度性能,可實現脈沖信號參數的快速精密測試;采用等精度測量等一系列措施,有效提高了測量精度,縮短了測量時間。實驗結果表明,研制的測試儀精度高、可靠性好、誤差率低,可用于電信號參數測量、儀器檢測等領域。
參考文獻
[1] 徐文強,任勇峰,文豐.基于FPGA的高速脈沖信號源的設計與實現[J].微計算機信息,2007,23(2):229,251-252.
[2] 高曉陽,劉成忠.基于單片機的數字信號測試分析儀[J].甘肅農業大學學報,2006,41(2):95-97.
[3] 任勇峰,安榮,李圣昆.基于FPGA的雷達信號處理器測試臺McBSP接口設計[J].計算機與現代化,2009(2):24-26.
[4] 李文濤,余福兵.基于STM32單片機的電阻爐智能溫度控制器的設計[J].化工自動化及儀表,2012,39(1):89-91.
[5] 謝浪清.高速等精度頻率測量的研究[J].中國科技信息,2006(15):304-306.