張霞
摘 要: 為了實現對電路網絡的幅頻特性進行自動實時測量,設計了一種基于MSP430單片機的自動幅頻特性測試系統。單片機根據按鍵設置產生掃頻信號并完成被測電路輸出信號的幅度測量,將幅度和頻率經串口通信送入Matlab軟件中,設計完成GUI平臺實現了電路幅頻特性響應曲線的實時繪制。測試結果表明該系統性能良好,交互性好且實時性強。
關鍵詞: 自動測試系統; 幅頻特性; MSP430; Matlab
中圖分類號: TN911.7?34 文獻標識碼: A 文章編號: 1004?373X(2015)11?0129?03
MSP430?based auto?test system for amplitude?frequency characteristics
ZHANG Xia
(School of Electronic Engineering, Xian University of Posts & Telecommunications, Xian 710100, China)
Abstract: To realize automatic real?time measurement of amplitude?frequency characteristics for circuit networks, an auto?test system based on MSP430 for amplitude?frequency characteristics is designed. MCU generates swept?frequency signals according to the keypad settings, and completes the amplitude measurement of the tested circuit output signals. The amplitude and frequency are transmitted to Matlab software through serial communication. The real?time drawing of amplitude?frequency characteristic response curve is realized by GUI platform. Test results show that the system has the characteristics of high performance, good interactivity and well real?time.
Keywords: auto?test system; amplitude?frequency characteristic; MSP430; Matlab
0 引 言
幅頻特性是反映電路網絡對不同頻率信號作用效果的重要評價指標,是電路網絡傳輸特性最直觀的體現[1]。隨著電子技術的飛速發展,自動測試技術已在工業、農業、軍事、交通運輸、商業、醫療等領域得到了廣泛的應用。因此,建立低成本、便攜、快速、實時、動態的幅頻特性自動測試系統將會大大縮短對電路網絡幅頻特性進行測量的時間,降低人力,節約成本。而MSP430作為TI公司推出的16位單片機系列產品,具有超低功耗、精簡指令集等優點,正常工作時功耗可控制在200 μA左右,可實現2 μA甚至0.1 μA的低功耗,因此在電池供電的低功耗應用中具有獨特的優勢[2]。目前,MSP430系列單片機在國內已得到了廣泛的應用。
本文建立基于MSP430單片機的自動幅頻特性測試系統,能夠完成對電路網絡幅頻特性的實時測量與顯示。
1 系統設計方案
基于MSP430單片機的自動幅頻特性測試系統由正弦信號產生模塊、被測電路、幅度測量模塊、單片機同PC機的串口通信模塊四個主要模塊組成,并配有矩陣鍵盤、LCD液晶顯示、幅頻特性響應曲線的實時繪制等功能模塊,其系統框圖如圖1所示。
1.1 正弦信號產生模塊
正弦信號產生模塊由TI公司的MSP430F149單片機、Maxim公司的MAX038單片集成高頻精密函數發生器、TI公司的TLV5616 12位串行DAC、CD4051模擬開關、4×4矩陣鍵盤以及LCD1602液晶顯示等組成,其框圖如圖2所示。
基于單片機的信號發生器具有電路相對簡單、結構緊湊、價格低廉、頻率穩定度高、抗干擾能力強、用途廣泛等優點,并且能夠對波形進行精細地調整,使其滿足系統的要求,并且只需對電路和程序稍加修改就可完成功能的升級[3]。
用戶通過4×4矩陣鍵盤設置所要產生的正弦信號的頻率和幅度,主控芯片 MSP430F149 根據用戶的按鍵輸入來產生相關控制信號,按鍵狀態由LCD1602顯示。波形的選擇是通過控制 MAX038的地址輸入端 A1和A0 來實現的,當引腳A0和A1接高電平時,輸出信號為正弦波[4]。MAX038 輸出信號的頻率主要由引腳 IIN的電流IIN,COSC 引腳端所連接的電容[CF]以及 FADJ上的電壓VFADJ所決定[5]。當VFADJ=0 V 時,輸出頻率[f0](單位:MHz)由式(1)給出:
[f0=IINCF] (1)
式中:[IIN]為流入IIN引腳的電流(單位:μA);[CF]為COSC引腳的對地電容(單位:pF)。
MAX038單片集成高頻精密函數發生器的引腳連接電路圖如圖3所示。
圖3中COSC引腳由外部電路模塊提供不同的電容,電容的容值會影響輸出信號的頻率范圍,但電容過多會導致占用的單片機I/O過多,所以本設計采用CD4051模擬開關來實現不同電容值的選擇。當CD4051地址端輸入不同值時,其對應的通道就會被導通,從而完成不同電容值的選取,[CF]有8種容值可供選擇。DADJ引腳接地時,輸出波形占空比為50%。外部電流產生模塊為IIN管腳提供不同的電流值,以此來調節輸出信號的頻率。本設計采用12位DAC TLV5616輸出端串接電阻的方式產生電流[IIN,]當從矩陣鍵盤輸入某一頻率值后,單片機產生TLV5616的控制信號,進而將電流送入MAX038的IIN引腳,該電流IIN的范圍為2~750 μA。結合[IIN,][CF]和公式(1)可確定該正弦信號產生模塊能夠產生頻率范圍為0.1 Hz~20 MHz的正弦波。MAX038可輸出幅度范圍為0~1 V的正弦波。
利用示波器對正弦信號產生模塊輸出信號的頻率及幅度進行測量,其測量結果如表1所示,信號幅度設定為1 V。
從表1可見,正弦信號產生模塊的頻率誤差和幅度誤差在低頻和高頻處較大,但總體來看誤差均在5%以內,滿足系統要求。為了能夠實現被測電路幅頻特性響應曲線的實時測量與顯示,在本系統中使用鍵盤設定掃頻初始頻率及掃頻時的頻率增量,從而實現系統的自動掃頻功能。
1.2 幅度測量模塊
將所產生的正弦信號送入被測電路的輸入端,對經過被測電路后的輸出信號進行幅度測量,結合不同頻率下的輸入輸出信號的幅度,即可完成被測電路幅頻特性響應的測量。
幅度測量模塊由整流濾波電路和MSP430G2553單片機組成。將被測電路的輸出信號進行全波整流并濾波,得到反映其信號幅度的直流信號,并將該直流信號送給單片機MSP430G2553,利用其內部的10位ADC進行模/數轉換后,得到反映正弦交流信號幅度信息的數字量,并取其100個幅度測量結果進行平均,將平均值送入PC機用以完成幅頻特性響應曲線的實時繪制,其結構框圖如圖4所示。
為了考察不同頻率信號經幅度測量模塊后的幅度測量精度,設定幅度測量模塊輸入正弦信號的幅度值恒為1 V,不同頻率下的測量結果如表2所示。從表2中可見,幅度測量模塊對不同頻率輸入正弦信號的幅度測量誤差均在5%以下。
1.3 串口通信模塊
本系統采用Matlab軟件的圖形用戶界面GUI作為上位機,MSP430G2553單片機通過串口RS 232與上位機進行實時通信,將正弦信號的頻率值和幅度測量模塊采集到的正弦信號幅度值送入Matlab軟件。在Matlab軟件中設計具有串口配置和幅頻特性響應曲線實時繪制等功能的GUI圖形用戶界面,并通過編寫控件的回調函數,完成串口配置、曲線繪制等功能。單片機與Matlab/GUI上位機之間采用以事件驅動的方式對串口進行控制實現串行通信[6],程序流程如圖5所示。GUI圖形用戶界面如圖6所示。
2 系統功能驗證
在上述模塊功能的基礎上,完成了基于MSP430單片機的自動幅頻特性測試系統。為了驗證該系統的正確性,采用幅頻特性已知的二階低通濾波器、帶通濾波器和高通濾波器做系統驗證性工作。圖7為三種類型濾波電路的自動幅頻特性測試結果。
3 結 語
本文設計并完成了基于MSP430單片機的自動幅頻特性測試系統。該系統由正弦信號產生模塊、被測電路、幅度測量模塊、單片機與PC機的串口通信模塊組成。正弦信號的頻率范圍為0.1 Hz~20 MHz并可通過按鍵設置其掃頻范圍及掃頻間隔;幅度測量模塊對不同頻率信號的測量誤差在5%以內;單片機與Matlab之間采用中斷方式進行串行通信,并建立GUI圖形用戶界面完成對電路幅頻特性曲線的實時繪制。
參考文獻
[1] 張維杰.基于單片機的濾波器幅頻特性自動測試技術[D].南京:南京理工大學,2013.
[2] 鄭惠琴,林慶超,李盛龍.基于MSP430單片機的汽車防盜鑰匙芯片的研究與實現[J].現代電子技術,2014,37(15):157?158.
[3] 吳小慧.基于MSP430單片機和MAX038芯片的信號發生器設計[D].蘇州:蘇州大學,2013.
[4] 陶炳坤,石龍宇,黃天辰,等.基于AT89S51和MAX038的函數信號發生器的設計[J].現代電子技術,2013,36(9):165?167.
[5] 陳小冬,張亞君.一種簡易函數信號發生器的設計[J].北京電力高等專科學校學報,2011(8):144?145.
[6] 向先波,徐國華,張琴.Matlab環境下PC機與單片機的串行通信及數據處理[J].單片機與嵌入式系統應用,2004(12):27?31.
[7] 沈建華,楊艷琴,翟驍曙.MSP430系列16位超低功耗單片機原理與應用[M].北京:清華大學出版社,2004.
[8] 胡大可.MSP430系列超低功耗單片機原理與應用[M].北京:北京航空航天大學出版社,2001.
[9] 王峰,夏巍,王鳴.基于單片機和AD9833的信號發生器的設計[J].南京師范大學學報:工程技術版,2012,12(1):76?79.
[10] 黃立新.基于單片機控制的數字函數信號發生器的設計與實現[J].科學技術與工程,2009(12):3278?3282.