基于單片機(jī)的通用示波器存儲(chǔ)功能擴(kuò)展設(shè)計(jì)
摘要:由于通用示波器沒有存儲(chǔ)功能,因而在單脈沖信號(hào)的捕捉和測(cè)量中受到極大的限制。介紹一種利用SPCE061A型16位單片機(jī)給通用示波器嵌入存儲(chǔ)功能的原理。實(shí)驗(yàn)證明此設(shè)計(jì)在一定頻率范圍內(nèi)是可行的,而且成本較低,具有一定的實(shí)用價(jià)值。
關(guān)鍵詞:示波器;SPCE061A;單片機(jī);存儲(chǔ)器;設(shè)計(jì)
中圖分類號(hào):TM935.3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-6977(2006)01-0051-03
1 引言
目前,通用二蹤示波器如HH4310A/HH4311A、RS8等均無(wú)存儲(chǔ)功能,在學(xué)生實(shí)驗(yàn)中能滿足信號(hào)測(cè)量的要求,但若用于測(cè)量一些非周期單脈沖信號(hào),由于信號(hào)的突發(fā)性,這些通用的示波器往往不能對(duì)信號(hào)的波形、幅值、脈寬進(jìn)行仔細(xì)的觀測(cè)。其在通用示波器中嵌入存儲(chǔ)功能,能極大地?cái)U(kuò)展應(yīng)用范圍,具有較高的實(shí)用價(jià)值。筆者介紹一種利用SPCE061A型16位單片機(jī)在HH4310A/HH4311A型通用示波器中嵌入存儲(chǔ)功能的原理及實(shí)驗(yàn)結(jié)果。
2 通用示波器的基本工作原理
通用示波器的頻率繁多,電路各不相同,但總的來(lái)說(shuō),可以歸納為3個(gè)主要組成部分:垂直系統(tǒng)(主要實(shí)現(xiàn)Y輸入信號(hào)的放大);水平系統(tǒng)(主要實(shí)現(xiàn)水平掃描和水平放大)和主機(jī)(主要包括低/高壓電源和顯示電路)。基本結(jié)構(gòu)如圖1所示,各組成部分的詳細(xì)工作原理參閱參考文獻(xiàn)[1]。
3 嵌入存儲(chǔ)功能的原理
在通用示波器中嵌入存儲(chǔ)功能的基本原理是用A/D轉(zhuǎn)換器把仿真信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),然后存儲(chǔ)到RAM中,需要顯示時(shí),將RAM中的存儲(chǔ)的數(shù)字信號(hào)按順序讀出,通過(guò)D/A轉(zhuǎn)換器恢復(fù)仿真信號(hào),在示波器熒光屏上顯示出來(lái)。在設(shè)計(jì)中,利用SPCE061A型16位單片機(jī)中的A/D轉(zhuǎn)換器實(shí)現(xiàn)對(duì)示波器的Y輸入被測(cè)信號(hào)的模/數(shù)轉(zhuǎn)換,轉(zhuǎn)換的結(jié)果存儲(chǔ)在SPCE061A內(nèi)部的SRAM中,顯示時(shí),經(jīng)SPCE061A的D/A轉(zhuǎn)換器恢復(fù)輸入的仿真信號(hào),SPCE061A及相關(guān)電路構(gòu)成的擴(kuò)展電路接在通用示波器垂直系統(tǒng)的Y輸入電路及前置放大器之間,如圖2所示。
3.1 A/D轉(zhuǎn)換的原理及性能要求
要實(shí)現(xiàn)對(duì)輸入被測(cè)信號(hào)的存儲(chǔ),A/ D轉(zhuǎn)換(取樣、量化、編碼)是關(guān)鍵,根據(jù)奈奎斯特(Nyquist)取樣定理,曲江后能夠不失真地還原出原信號(hào),必須滿足fs>2fm,即取樣頻率必須大于信號(hào)最高頻率的2倍。在SPCE061A中有7路10位逐次逼近型A/D轉(zhuǎn)換器,通用對(duì)A/D轉(zhuǎn)換器有關(guān)控制寄存器P_ADC_Ctrl($7015H)、P_ADC_MUX_Ctrl($702BH)的合理設(shè)置啟動(dòng)A/D轉(zhuǎn)換,從P_ADC_MUX_Data($702CH)單元中讀出A/D轉(zhuǎn)換的值。SPCE061A中A/D轉(zhuǎn)換的最高速率為(Fosc/32/16Hz),如果速率超過(guò)此值,從P_ADC_MUX_Data中讀出數(shù)據(jù)時(shí)會(huì)發(fā)生錯(cuò)誤。A/D轉(zhuǎn)換的最大頻率相應(yīng)率(Fosc/32/16Hz)如表1所示。
在SPCE061A中,32768Hz的實(shí)時(shí)時(shí)鐘經(jīng)過(guò)PLL倍頻電路產(chǎn)生系統(tǒng)時(shí)鐘Fosc,Fosc再經(jīng)過(guò)分頻得到CPU時(shí)鐘(CPUCLK),通過(guò)對(duì)寄存器P_System Clok($7013H)的編程來(lái)完成對(duì)系統(tǒng)時(shí)鐘Fosc和CPU時(shí)鐘頻率的定義。默認(rèn)時(shí),Fosc、CPUCLK分別為24.576MHz和Fosc/8。
根據(jù)A/D轉(zhuǎn)換的基本原理及SPCE061A的A/D轉(zhuǎn)換的特性,在通用示波器中嵌入的存儲(chǔ)功能模塊的最大不失真頻率為20kHz。
3.2 數(shù)字信號(hào)的存儲(chǔ)和D/A轉(zhuǎn)換
經(jīng)A/D轉(zhuǎn)換的結(jié)果需要存儲(chǔ)到存儲(chǔ)器中,其存儲(chǔ)容量為獲取波形的取樣點(diǎn)數(shù)目,用直接存放A/D變換后數(shù)據(jù)的獲取存儲(chǔ)單元來(lái)表示。在SPCE061A中有2K10bit的SRAM存儲(chǔ)單元,實(shí)際使用的SRAM的容量主要由A/D轉(zhuǎn)換的速率和掃描因子(t/div)共同決定,其關(guān)系如下式所示:
式中,fS為A/D轉(zhuǎn)換的取樣頻率,N為每格的取樣點(diǎn)數(shù)。由此可知,在A/D變換速率相同的條件下,存儲(chǔ)容量的大小決定掃描時(shí)間因子的大小。在設(shè)計(jì)中,A/D變換的速率fS最大為96kHz,若用1K的SRAM作為A/D轉(zhuǎn)換的存儲(chǔ)器,則最大掃描時(shí)間為10ms/div。在存儲(chǔ)擴(kuò)展模塊中,單片機(jī)啟動(dòng)A/D轉(zhuǎn)換器后,通過(guò)對(duì)P_ADC_MUX_Data($702CH)單元中A/D轉(zhuǎn)換結(jié)果的比較,當(dāng)有效的轉(zhuǎn)換結(jié)果出現(xiàn)時(shí),才將結(jié)果保存到SRAM中,利用這種方法能夠有效地?cái)U(kuò)大掃描時(shí)間因子,對(duì)于單脈沖信號(hào)的捕捉非常有效。ADC的部分程序如下:
_AD
在A/D轉(zhuǎn)換中,不僅A/D轉(zhuǎn)換的位數(shù)和存儲(chǔ)容量決定示波器的垂直和水平分辨率,而且,通過(guò)單片機(jī)對(duì)A/D轉(zhuǎn)換結(jié)果的數(shù)字信號(hào)多次取平均處理,消除隨機(jī)噪聲,可以使垂直分辨率得到提高。
SPCE061A提供了2路D/A轉(zhuǎn)換通道,通過(guò)對(duì)寄存器P_DAC_MUX_Ctrl(702AH)單元的編程控制D/A轉(zhuǎn)換,將存儲(chǔ)器中的數(shù)字信號(hào)按順序轉(zhuǎn)換為仿真信號(hào),加到示波器的Y通道放大器中,在熒光屏上重現(xiàn)信號(hào)的波形。
4 示波器存儲(chǔ)模塊的實(shí)驗(yàn)研究
對(duì)于示波器存儲(chǔ)模塊的研究主要采用對(duì)同一信號(hào)進(jìn)行實(shí)驗(yàn)比較的方式。在實(shí)際中,利用HH4310A/HH4311A型通用示波器對(duì)信號(hào)進(jìn)行1次直接測(cè)量和1次存儲(chǔ)測(cè)量,然后對(duì)2次測(cè)量結(jié)果(包括波形的失真度、幅值及頻率)進(jìn)行比較。圖3(a)和(b)分別顯示對(duì)單脈沖信號(hào)的直接顯示波形和存儲(chǔ)顯示波形。
通過(guò)實(shí)驗(yàn)結(jié)果的比較可以看出,在一定頻率(20kHz)以下,嵌入SPCE061A的示波器存儲(chǔ)模塊能夠?qū)崿F(xiàn)對(duì)信號(hào)的不失真存儲(chǔ)。
5 結(jié)束語(yǔ)
評(píng)論