基于51單片機(jī)和FPGA的簡(jiǎn)易數(shù)字存儲(chǔ)示波器設(shè)計(jì)
l 引言
與傳統(tǒng)模擬示波器相比.數(shù)字存儲(chǔ)示波器不僅具有可存儲(chǔ)波形、體積小、功耗低,使用方便等優(yōu)點(diǎn),而且還具有強(qiáng)大的信號(hào)實(shí)時(shí)處理分析功能。在電子測(cè)量領(lǐng)域,數(shù)字存儲(chǔ)示波器正在逐漸取代模擬示波器。但目前我國(guó)使用高性能數(shù)字存儲(chǔ)示波器主要依靠國(guó)外產(chǎn)品,而且價(jià)格昂貴。因此研究數(shù)字存儲(chǔ)示波器具有重要價(jià)值。借于此,提出了一種簡(jiǎn)易數(shù)字存儲(chǔ)示波器的設(shè)計(jì)方案,經(jīng)測(cè)試,性能優(yōu)良。
2 數(shù)字存儲(chǔ)示波器基本工作原理
數(shù)字存儲(chǔ)示波器與模擬示波器不同在于信號(hào)進(jìn)入示波器后立刻通過(guò)高速A/D轉(zhuǎn)換器將模擬信號(hào)前端快速采樣,存儲(chǔ)其數(shù)字化信號(hào)。并利用數(shù)字信號(hào)處理技術(shù)對(duì)所存儲(chǔ)的數(shù)據(jù)進(jìn)行實(shí)時(shí)快速處理,得到信號(hào)的波形及其參數(shù),并由示波器顯示,從而實(shí)現(xiàn)模擬示波器功能,而且測(cè)量精度高。還可存儲(chǔ)信號(hào),因而,數(shù)字存儲(chǔ)示波器可以存儲(chǔ)和調(diào)用顯示特定時(shí)刻信號(hào)。
3 系統(tǒng)分析論證
3.1 A/D實(shí)時(shí)采樣
根據(jù)奈奎斯特采樣定理,采樣速率必須高于2倍的信號(hào)最高頻率分量。對(duì)于正弦信號(hào),一周期內(nèi)應(yīng)有2個(gè)采樣點(diǎn)。為了不失真恢復(fù)被測(cè)信號(hào),通常一周期內(nèi)需要采樣8個(gè)點(diǎn)以上。為了配合高速模數(shù)轉(zhuǎn)換器,采用FPGA控制M/D轉(zhuǎn)換器的采樣速率,以實(shí)現(xiàn)高速實(shí)時(shí)采樣。實(shí)時(shí)采樣可以實(shí)現(xiàn)整個(gè)頻段的全速采樣,本系統(tǒng)設(shè)計(jì)選用ADI公司的12位高速A/D轉(zhuǎn)換器AD9220,其最高采樣速率可達(dá)10 MHz。
3.2 雙蹤顯示
本系統(tǒng)設(shè)計(jì)的雙蹤顯示模塊是以高速切換模擬開(kāi)關(guān)選通兩路信號(hào)進(jìn)入采樣電路,兩路波形存儲(chǔ)在同一個(gè)存儲(chǔ)器的奇、偶地址位。雙蹤顯示時(shí),先掃描奇地址數(shù)據(jù)位,再掃描偶地址數(shù)據(jù)位。采用模擬開(kāi)關(guān)代替一個(gè)模數(shù)轉(zhuǎn)換器,避免兩片高速A/D轉(zhuǎn)換器相互干擾,降低系統(tǒng)調(diào)試難度,并且實(shí)現(xiàn)系統(tǒng)功能。
3.3 觸發(fā)方式
采用FPGA內(nèi)部軟件觸發(fā)方式,通過(guò)軟件設(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é)
通過(guò)控制FPGA內(nèi)部雙口RAM(1 KB)的起始地址的偏移量確定來(lái)控制波形的移動(dòng)。其具體方法是將滑動(dòng)變阻器R上的電平通過(guò)模數(shù)轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號(hào)傳輸給FPGA,再與初始電平數(shù)字信號(hào)(顯示位置復(fù)位時(shí),滑動(dòng)變阻器R的電平采樣值)相比較決定起始地址ADR0的偏移量。該方法可易于實(shí)現(xiàn)波形滿屏和自動(dòng)顯示功能。
3.4.2 列掃描調(diào)節(jié)
MAXl97采樣A、B通道的Position電位器值,所得采樣值經(jīng)FPGA送至16位串行D/A轉(zhuǎn)換器,MAX542產(chǎn)生直流電平,該直流電平與列掃描波形相加送至模擬示波器顯示,實(shí)現(xiàn)波形上下移動(dòng)。為分離A、B通道,在讀A通道波形數(shù)據(jù)時(shí),F(xiàn)PGA必須將Position A電位器的值送至D/A轉(zhuǎn)換器;而在讀B通道波形數(shù)據(jù)時(shí),也必須將Position B電位器的值送至D/A轉(zhuǎn)換器,這樣可在調(diào)節(jié)某一電位器時(shí),實(shí)現(xiàn)相應(yīng)通道波形上下移動(dòng)。
3.5 波形數(shù)據(jù)存儲(chǔ)
數(shù)字示波器存儲(chǔ)波形數(shù)據(jù)可采用外接的雙口RAM或通用靜態(tài)RAM,同時(shí)FPGA可控制RAM的地址線,從而實(shí)現(xiàn)波形數(shù)據(jù)的存儲(chǔ)。雙口RAM可同時(shí)進(jìn)行讀寫(xiě)操作,由于本系統(tǒng)設(shè)計(jì)采用FPGA,因此可充分利用FPGA的邏輯陣列和嵌入式陣列,可將雙口RAM寫(xiě)入FPGA內(nèi)部,從而無(wú)需外接RAM,減少硬件電路,提高簡(jiǎn)易數(shù)字示波器的可靠性。
4 系統(tǒng)設(shè)計(jì)方案
本系統(tǒng)設(shè)計(jì)框圖如圖1所示。整個(gè)系統(tǒng)是以FPGA為核心,包括前端模擬信號(hào)處理模塊、單片機(jī)模塊、顯示模塊和鍵盤(pán)輸入模塊。而信號(hào)的前級(jí)處理模塊又包括射級(jí)跟隨器、程控放大電路、整形電路。A、B通道的信號(hào)經(jīng)前級(jí)處理變?yōu)镺~4 V,AD9220對(duì)其采樣。波形存儲(chǔ)控制模塊將其采樣數(shù)據(jù)寫(xiě)入FPGA內(nèi)部RAM,再由波形顯示控制模塊進(jìn)行顯示。FPGA通過(guò)編程設(shè)置實(shí)現(xiàn)測(cè)頻、鍵盤(pán)掃描、顯示驅(qū)動(dòng)、波形存儲(chǔ)控制等功能。單片機(jī)AT89S52控制整個(gè)系統(tǒng)鍵盤(pán)和點(diǎn)陣液晶模塊實(shí)現(xiàn)人機(jī)交互。通過(guò)面板按鍵可方便調(diào)整波形顯示方式。
評(píng)論