基于單片機(jī)和FPGA的簡易數(shù)字存儲示波器設(shè)計
與傳統(tǒng)模擬示波器相比.數(shù)字存儲示波器不僅具有可存儲波形、體積小、功耗低,使用方便等優(yōu)點,而且還具有強大的信號實時處理分析功能。在電子測量領(lǐng)域,數(shù)字存儲示波器正在逐漸取代模擬示波器。但目前我國使用高性能數(shù)字存儲示波器主要依靠國外產(chǎn)品,而且價格昂貴。因此研究數(shù)字存儲示波器具有重要價值。借于此,提出了一種簡易數(shù)字存儲示波器的設(shè)計方案,經(jīng)測試,性能優(yōu)良。
本文引用地址:http://www.ex-cimer.com/article/201705/358887.htm2 數(shù)字存儲示波器基本工作原理
數(shù)字存儲示波器與模擬示波器不同在于信號進(jìn)入示波器后立刻通過高速A/D轉(zhuǎn)換器將模擬信號前端快速采樣,存儲其數(shù)字化信號。并利用數(shù)字信號處理技術(shù)對所存儲的數(shù)據(jù)進(jìn)行實時快速處理,得到信號的波形及其參數(shù),并由示波器顯示,從而實現(xiàn)模擬示波器功能,而且測量精度高。還可存儲信號,因而,數(shù)字存儲示波器可以存儲和調(diào)用顯示特定時刻信號。
3 系統(tǒng)分析論證
3.1 A/D實時采樣
根據(jù)奈奎斯特采樣定理,采樣速率必須高于2倍的信號最高頻率分量。對于正弦信號,一周期內(nèi)應(yīng)有2個采樣點。為了不失真恢復(fù)被測信號,通常一周期內(nèi)需要采樣8個點以上。為了配合高速模數(shù)轉(zhuǎn)換器,采用FPGA控制M/D轉(zhuǎn)換器的采樣速率,以實現(xiàn)高速實時采樣。實時采樣可以實現(xiàn)整個頻段的全速采樣,本系統(tǒng)設(shè)計選用ADI公司的12位高速A/D轉(zhuǎn)換器AD9220,其最高采樣速率可達(dá)10 MHz。
3.2 雙蹤顯示
本系統(tǒng)設(shè)計的雙蹤顯示模塊是以高速切換模擬開關(guān)選通兩路信號進(jìn)入采樣電路,兩路波形存儲在同一個存儲器的奇、偶地址位。雙蹤顯示時,先掃描奇地址數(shù)據(jù)位,再掃描偶地址數(shù)據(jù)位。采用模擬開關(guān)代替一個模數(shù)轉(zhuǎn)換器,避免兩片高速A/D轉(zhuǎn)換器相互干擾,降低系統(tǒng)調(diào)試難度,并且實現(xiàn)系統(tǒng)功能。
3.3 觸發(fā)方式
采用FPGA內(nèi)部軟件觸發(fā)方式,通過軟件設(shè)置觸發(fā)電平,所設(shè)置的施密特觸發(fā)器參數(shù)易于修改,從而抑制比較器產(chǎn)生的毛刺。當(dāng)采樣值大于觸發(fā)電平,則產(chǎn)生一次觸發(fā)。該方式充分利用了FPGA的資源,減少外圍電路,消除硬件毛刺產(chǎn)生的干擾,易于調(diào)整觸發(fā)電壓。
3.4 波形顯示位置的調(diào)節(jié)
3.4.1 行掃描調(diào)節(jié)
通過控制FPGA內(nèi)部雙口RAM(1 KB)的起始地址的偏移量確定來控制波形的移動。其具體方法是將滑動變阻器R上的電平通過模數(shù)轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號傳輸給FPGA,再與初始電平數(shù)字信號(顯示位置復(fù)位時,滑動變阻器R的電平采樣值)相比較決定起始地址ADR0的偏移量。該方法可易于實現(xiàn)波形滿屏和自動顯示功能。
3.4.2 列掃描調(diào)節(jié)
MAXl97采樣A、B通道的Position電位器值,所得采樣值經(jīng)FPGA送至16位串行D/A轉(zhuǎn)換器,MAX542產(chǎn)生直流電平,該直流電平與列掃描波形相加送至模擬示波器顯示,實現(xiàn)波形上下移動。為分離A、B通道,在讀A通道波形數(shù)據(jù)時,F(xiàn)PGA必須將Position A電位器的值送至D/A轉(zhuǎn)換器;而在讀B通道波形數(shù)據(jù)時,也必須將Position B電位器的值送至D/A轉(zhuǎn)換器,這樣可在調(diào)節(jié)某一電位器時,實現(xiàn)相應(yīng)通道波形上下移動。
3.5 波形數(shù)據(jù)存儲
數(shù)字示波器存儲波形數(shù)據(jù)可采用外接的雙口RAM或通用靜態(tài)RAM,同時FPGA可控制RAM的地址線,從而實現(xiàn)波形數(shù)據(jù)的存儲。雙口RAM可同時進(jìn)行讀寫操作,由于本系統(tǒng)設(shè)計采用FPGA,因此可充分利用FPGA的邏輯陣列和嵌入式陣列,可將雙口RAM寫入FPGA內(nèi)部,從而無需外接RAM,減少硬件電路,提高簡易數(shù)字示波器的可靠性。
4 系統(tǒng)設(shè)計方案
本系統(tǒng)設(shè)計框圖如圖1所示。整個系統(tǒng)是以FPGA為核心,包括前端模擬信號處理模塊、單片機(jī)模塊、顯示模塊和鍵盤輸入模塊。而信號的前級處理模塊又包括射級跟隨器、程控放大電路、整形電路。A、B通道的信號經(jīng)前級處理變?yōu)镺~4 V,AD9220對其采樣。波形存儲控制模塊將其采樣數(shù)據(jù)寫入FPGA內(nèi)部RAM,再由波形顯示控制模塊進(jìn)行顯示。FPGA通過編程設(shè)置實現(xiàn)測頻、鍵盤掃描、顯示驅(qū)動、波形存儲控制等功能。單片機(jī)AT89S52控制整個系統(tǒng)鍵盤和點陣液晶模塊實現(xiàn)人機(jī)交互。通過面板按鍵可方便調(diào)整波形顯示方式。
5 硬件電路設(shè)計
5.1 程控放大電路
采用模擬開關(guān)CD4051、寬帶運算放大器AD844及精密電位器實現(xiàn)10 mV/div~2 V/div的多檔垂直分辨率。FPGA含有通道選擇寄存器模塊,通過單片機(jī)寫入通道號控制模擬開關(guān)以選通不同的反饋電阻,實現(xiàn)不同放大倍數(shù),將信號調(diào)理在滿足AD9220的0~4 V的范圍內(nèi),具體電路如圖2所示。
5.2 數(shù)據(jù)采集模塊
本系統(tǒng)設(shè)計采用ADI公司的高速模數(shù)轉(zhuǎn)換器AD9220實現(xiàn)波形信號的采集,AD9220最高采樣速率可達(dá)10 MHz,采用外部晶體振蕩器8 MHz,F(xiàn)PGA內(nèi)部通過采樣實現(xiàn)波形存儲。AD9220有直流耦合和交流耦合兩種輸入方式。本系統(tǒng)設(shè)計采用直流耦合,0~5 V的輸入方式。采用內(nèi)部2.5 V參考電壓。由于系統(tǒng)垂直分辨率只需255級,故采用AD9220的高8位。數(shù)據(jù)采集電路如圖3所示。
5.3 FPGA設(shè)計
系統(tǒng)采用Verilog HDL語言,在QuartusII軟件下對FPGA進(jìn)行邏輯電路的描述編程,可靈活實現(xiàn)系統(tǒng)所需電路和控制模塊。
5.3.1 觸發(fā)模塊
單片機(jī)先向FPGA模塊寫入設(shè)置的觸發(fā)電壓,F(xiàn)PGA內(nèi)部相比較后,當(dāng)采樣值大于該觸發(fā)電壓時,則產(chǎn)生一次觸發(fā)。圖4為觸發(fā)模塊。
5.3.2 程控放大控制模塊
單片機(jī)首先以100 mv/div的檔位對信號采樣,通過比較與該信號最近的模擬開關(guān)的通道號,然后寫入控制字,產(chǎn)生相應(yīng)通道號,實現(xiàn)垂直分辨率的調(diào)整。
5.3.3 波形存儲控制模塊
該模塊為RAM模塊的寫地址累加器,可控制波形的存儲。H_sering為單次和多次觸發(fā)控制引腳,當(dāng)為高電平時,單次觸發(fā),停止向RAM寫入數(shù)據(jù),所顯示波形為存儲波形;為低電平時,多次觸發(fā),當(dāng)檢測到一次觸發(fā)時,即向RAM寫一次數(shù)據(jù),共l K個點,并在寫操作時屏蔽觸發(fā)。寫地址先寫奇地址,存入通道一采樣后的波形數(shù)據(jù),后寫偶地址,存入通道二采樣后的波形數(shù)據(jù)。如果連續(xù)多次檢測不到觸發(fā)時,向RAM中寫入全0,顯示一條直線,即實現(xiàn)自動捕捉功能。波形存儲控制模塊如圖5所示。
5.3.4 波形顯示控制模塊
該模塊為讀地址累加器,從RAM中讀取數(shù)據(jù),并產(chǎn)生行掃描和列掃描數(shù)據(jù)。通過單片機(jī)寫入累加器基地址,改變讀取數(shù)據(jù)的起始位,實現(xiàn)波形的平移。該模塊還可計算波形的峰峰值、平均值,單片機(jī)可直接讀回數(shù)值。波形顯示控制模塊如圖6所示。
6 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計實現(xiàn)人機(jī)交互、信息提示、系統(tǒng)啟動與復(fù)位等功能。首先系統(tǒng)初始化,顯示默認(rèn)通道波形,再等待按鍵按下。當(dāng)按鍵按下后,完成相應(yīng)功能,顯示相應(yīng)波形,然后循環(huán)等待。系統(tǒng)軟件設(shè)計流程如圖7所示?!?nbsp;
7 測試結(jié)果
使用自制的數(shù)字存儲示波器和tektronix TDSl002型數(shù)字示波器測量輸入信號,其中部分測量數(shù)據(jù)如表1所列。
通過對比測試和結(jié)果分析,各種輸入信號在自制數(shù)字存儲示波器上可精確顯示波形,并且實現(xiàn)波形的雙蹤顯示及波形水平、垂直平移,頻率、平均值、峰峰值的測量,誤差小,達(dá)到一定的精度要求。
8 結(jié)語
本系統(tǒng)設(shè)計采用單片機(jī)作為核心控制器,充分利用FPGA的可編程邏輯功能,完成相關(guān)電路設(shè)計。軟硬件有機(jī)結(jié)合實現(xiàn)簡易數(shù)字存儲示波器的設(shè)計,系統(tǒng)總體功能完善,穩(wěn)定性高,使用方便。
評論