呂念芝 張天柱
(1.福州海峽職業技術學院,福建 福州350001;2.福州師范大學軟件學院,福建 福州350001)
隨著DDS技術的逐漸成熟,應用DDS技術產生的掃頻信號具有失真度低、掃頻精度高等優點,同時掃頻控制簡單、準確,因此使用DDS芯片作為掃頻源的設計逐漸被廣泛應用[1~2].
本文使用最新的DDS技術實現掃頻源設計,大大降低產生寬頻、等幅、正交正弦信號的技術難度,為實現掃頻儀的設計奠定了良好的基礎.應用模擬乘法器實現直通信號和被測網絡信號的高速乘法運算,并經過LPF(Low Pass Filter,低通濾波器)獲得被測網絡頻率特性(包括幅頻特性和相頻特性)的電壓信號.然后經過ADC(Analog-to-Digital Converter,模數變換器)將該電壓信號轉換為二進制數據;最后在單片機系統中,經過頻率特性的坐標變換算法處理,獲得被測網絡幅頻特性和相頻特性曲線的平面坐標數據,并在LCD(Liquid Crystal Display,液晶顯示屏)上顯示出來.為了便于操作和實現良好的用戶體驗,本文采用紅外遙控技術實現儀器的遙控操作功能,采用μC/GUI(Embedded Graphical User Interface,嵌入式圖形用戶接口)技術設計儀器的顯示界面.
本系統由掃頻信號源、模擬乘法器、MCU模塊、IR遙控模塊和液晶顯示模塊共5部分組成,系統原理如圖1所示.

圖1 系統原理框圖
圖1中STM32單片機負責控制DDS輸出測量所需的1~40MHz兩路正交正弦信號,其中余弦信號通過被測網絡RLC后,在乘法器與余弦直通信號相乘,相乘的結果經LPF濾除倍頻信號后送入單片機內部的AD變換為數字信號.正弦信號與RLC輸出的信號被送至另一個乘法器的輸入端,相乘的結果經LPF濾波后,也送入單片機AD變換為數字信號.單片機按照事先設計的程序對兩路數據進行處理,并求出對應頻率下的電壓增益和相位差,同時將結果顯示在液晶屏上.用戶可通過IR遙控器向單片機發送指令,控制單片機實現各種測量操作.
該系統采用分層設計思想,將不同邏輯層的程序劃分在不同的文件夾,每一層所包含的源文件都放在該層對應的文件夾下的src文件夾目錄下,每一層提供的頭文件都放在該層對應的文件夾目錄下.
程序通過調用ST公司提供的STM32固件庫接口操縱底層硬件,將系統硬件初始化代碼以及片上ADC數據采集代碼封裝成API層,供應用程序調用.主控器通過I/O口連接外設,整合外設操作代碼為DEV設備驅動層.基于TFTLCD顯示屏驅動,移植Micriμm公司的開源μC/GUI程序庫,應用程序通過調用μC/GUI程序庫的接口在液晶顯示屏上繪制程序界面.以上描述的系統軟件工程結構如圖2所示.

圖2 系統軟件層級結構
紅外發射器使用市場上常見的小型紅外遙控器,當用戶按下操作鍵時,該發射器與接收模塊之間通過紅外傳輸協議進行通信,該協議描述如下:
1)以當前時刻為0點,發送9 ms的脈沖信號,然后等待4.5 ms;
2)連續發送32個635 us的紅外脈沖信號,當發送邏輯0時等待550 us,發送邏輯1時等待1 650 us.
3)發送635 us脈沖信號結束此次傳輸;
4)若用戶沒有釋放按鍵,則以0點為起始時刻,每隔108 ms重發該命令,重發時序如下所述;
5)發送9 ms的脈沖信號并等待2.2 ms;
6)發送635 us脈沖信號結束此次傳輸;
利用STM32芯片中定時器的捕獲功能,對OUT引腳的輸出信號進行時間測量,可以很精確地獲取紅外接收到的32位數據.
APP層采用模塊化設計,每個模塊獨立為一個C源文件,并通過H頭文件向外部提供接口.主程序負責程序起始時硬件設備初始化,獲取紅外命令和更新命令,并將命令下發給相應的模塊處理.
凍土是熱傳導,而多孔介質卻是導熱和對流的復合作用。飽和含水土壤孔隙中充滿了水分,增大了土壤顆粒間接觸熱阻,使土壤蓄熱能力增強,對外界的傳熱則大大降低。同時,孔隙中水分凝結成冰時,將釋放大量的潛熱,使土壤平均溫度相對較高,土壤升溫又使管內外溫度梯度降低,從而管壁熱流密度降低。
子程序包含系統初始化模塊、控件焦點調度模塊、點頻測量模塊、掃頻輸出模塊、頻率特性繪圖模塊、定時更新模塊、中文顯示模塊、讀取電壓模塊、計算頻率特性模塊.
應用層流程圖如圖3所示.

圖3 主程序流程圖
2.2.1 點頻測量模塊
該模塊主要功能為在固定頻率下測量被測網絡的頻率特性.模塊包含1個編輯框控件,當該編輯框獲取用戶輸入焦點時,在數據兩側顯示“-”和“+”符號,提示用戶輸入加減命令設置輸出頻率.當定時器產生該模塊的定時更新命令時,電壓增益與信號相移會被重新計算并刷新顯示到屏幕上,該模塊數據的更新周期為500 ms,程序流程圖如圖4所示.

圖4 點頻測量程序流程圖
2.2.2 掃頻輸出模塊
該模塊主要實現頻率的掃頻輸出,頻率的起始值、終止值以及步進值均可設置,起始頻率的下限為1 MHz,終止頻率的上限為40 MHz,步進頻率為100 KHz的整數倍且不可超過終止頻率與起始頻率的差值,當掃描頻率超出終止頻率時,超出頻率加上起始頻率作為新的掃頻值.當用戶修改掃頻參數時,該模塊修改定時器中相應的更新周期參數,實現任意情況下掃頻時間均小于2 s.該模塊主要實現邏輯如圖5所示.

圖5 (a)更新命令處理流程圖

圖5 (b)“+”命令處理流程圖

圖5 (c)“-”命令處理流程圖
針對以上問題,可以采用以下方法進一步完善掃頻儀性能:
1)購買高質量高精度電子器件,保證電路的對稱性和元器件的可靠連接;
2)采用工業制板和焊接,保證器件的連接完好;
3)為測量儀配備專業的直流電源,降低電源引起的干擾,提高掃頻信號的信噪比;
4)增加無線wifi模塊,使用無線技術接入Internet;
5)研究和設計誤差補償方法,通過軟件修正的方式彌補硬件系統的不足,通過對測量數據進行理論補償,提高掃頻儀的測量精度和準度;
使用μC/OS-III嵌入式實時操作系統實現多線程操作,并利用μC/TCP-IP協議實現網絡控制,提高儀器的智能化程度.
[1]關曉佳.基于DDS技術的信號發生器設計[J].電腦知識與技術,2012,8(13):3196-3198.
[2]李超,謝雪松,張小玲.一種DDS任意波形發生器的ROM優化方法[J].電子技術應用,2013,39(2):12-15.
[3]張濤,左謹平,馬華玲.FatFs在32位微控制器STM32上的移植[J].電子技術,2010(3):25-27.
[4]晏英俊,張自強.基于STM32的步進電機轉速控制實驗設計[J].實驗室科學,2010,13(6):59-61.
[5]Analog Devices.CMOS 300 MHz Quadrature Complete-DDSAD9854[M].Analog Devices,1999.