林凡強(qiáng),張俊斌
LIN Fan-qiang, ZHANG Jun-bin
(成都理工大學(xué),成都 610059)
自然界運(yùn)行著多種形式的波,如聲波、地震波、波浪等等。通過傳感器進(jìn)行信號變換后,就能將這些信號轉(zhuǎn)變?yōu)槭静ㄆ骺蛇M(jìn)行觀察、研究和分析的電信號。如今數(shù)字示波器迅速普及,已經(jīng)成為各行業(yè)工程師必備的工具之一,示波器的功能越來越多,構(gòu)造也越來越復(fù)雜。
本文從對存儲式數(shù)字示波器基本概念出發(fā),設(shè)計(jì)了具有示波器基本功能的波形顯示和實(shí)時(shí)存儲系統(tǒng)。其硬件電路包括信號調(diào)理電路、ADC采樣與存儲電路、采樣時(shí)鐘產(chǎn)生電路、信號整形電路、測頻電路、鍵盤和T6963C[1~4]液晶接口電路。系統(tǒng)采用TI公司的雙MSP430[5,6]系列雙MCU作為系統(tǒng)的核心。F149主要完成電路的控制、測頻和發(fā)送數(shù)據(jù)。F169主要完成波形的顯示和波形參數(shù)的顯示。
簡易數(shù)字式存儲示波器框圖如圖1所示。系統(tǒng)主要包括了模擬信號的前端處理、信號的采樣、數(shù)據(jù)的實(shí)時(shí)存儲與顯示和鍵盤輸入控制。
圖1 系統(tǒng)框圖
A/D采集是系統(tǒng)非常重要的環(huán)節(jié)[7],但是信號具體是什么樣的,對于系統(tǒng)來說是不可預(yù)知的,因此就需要對來源信號進(jìn)行預(yù)處理,在這主要是對信號的幅度進(jìn)行分析,使得被測信號的幅度能恰好在系統(tǒng)AD轉(zhuǎn)換器的采樣幅值范圍內(nèi),即:微弱的信號進(jìn)行適當(dāng)?shù)姆糯?,過高的信號進(jìn)行適當(dāng)?shù)乃p,同時(shí),起到對系統(tǒng)后級電路的過壓保護(hù)。
通過鍵盤進(jìn)行LCD顯示的控制,使得波形能完整的顯示,示意波形如圖2所示。
圖2 預(yù)處理后波形圖
其中:Vm表示ADC的輸入最大值;
Vn表示ADC的輸入最小值。
由此,得到信號調(diào)理的流程框圖,如圖3所示。
依據(jù)圖3中各個(gè)框圖,設(shè)計(jì)了如圖4所示的無源衰減網(wǎng)絡(luò),提供了1MΩ的輸入阻抗,繼電器RE1的開關(guān)狀態(tài)代表信號的耦合方式,電容CP1~CP4為補(bǔ)償電容,通過調(diào)節(jié)CP1和CP2可使高頻信號獲得最佳的補(bǔ)償。輸入信號衰減倍數(shù)由多路復(fù)用器MAX379和繼電器RE2配合完成。MAX379的控制端A0、A1由單片機(jī)控制,用來以滿足不同的采樣速度[8],流水線型的ADC輸出大都是并行接口,另外,就需要確定ADC的位數(shù),由于系統(tǒng)采用的是240×128的液晶屏,垂直分辨率最大128點(diǎn)。由此,采用8位的ADC分辨率為256點(diǎn)已經(jīng)足夠了,綜合上述條件我們選擇設(shè)置垂直靈敏度檔A0、A1的控制字,選擇輸入信道。
圖3 信號調(diào)理框圖
圖4 無源衰減網(wǎng)絡(luò)
要得到圖2的波形,還需要電位平移電路和峰值檢測電路。電平移位電路由運(yùn)算放大器構(gòu)成的加法電路實(shí)現(xiàn),如圖5給出可同時(shí)進(jìn)行峰值和谷值采樣的電路。
主放大器采用的是專用可編程增益放大器PGA205,增益檔級為1、2、4、8V/V,由可編程引腳A0和A1控制,最大增益誤差為±0.05%。電路芯片經(jīng)激光校正,最大失調(diào)電壓僅50uV,失調(diào)溫漂為0.25uV/℃。
圖5 峰值檢測電路
示波器需要的ADC應(yīng)具有寬范圍的采樣頻率TI公司高速的AD轉(zhuǎn)換器ADS830E,采樣頻率為10kSa/s~ 60MSa/s。
存儲器我們選擇了常見的FIFO存儲器IDT7204,容量為4K,成品示波器都有存儲深度這個(gè)指標(biāo),具體是指示波器所能存儲的采樣點(diǎn)多少的量度。之所以要加FIFO存儲器是因?yàn)锳DC的工作頻率遠(yuǎn)遠(yuǎn)高于單片機(jī)的速度。為了FIFO與ADC同步工作,F(xiàn)IFO的寫輸入端由74HC08間接控制。
ADS830E的RSEL引腳用來控制輸入電壓范圍,當(dāng)RSEL引腳為高電平時(shí),ADS830E的輸入電壓范圍是1.5V~3.5V,即2Vpp。當(dāng)RSEL引腳為低電平時(shí)ADS830E的輸入電壓范圍是2V~3V,即1Vpp。我們選擇了輸入電壓范圍為2Vpp。其操作時(shí)序參考器件的數(shù)據(jù)使用手冊,由時(shí)序圖得知在時(shí)鐘的每個(gè)周期都進(jìn)行一次AD轉(zhuǎn)換,所以采樣速率就是時(shí)鐘頻率,能夠很方便地通過控制采樣時(shí)鐘來控制采樣頻率。
圖6 AD轉(zhuǎn)換及存儲
另外,簡要介紹一下FIFO關(guān)鍵的引腳,22腳(RS)復(fù)位引腳,低電平有效,復(fù)位時(shí)內(nèi)部的讀指針和寫指針都被設(shè)置到初始位置,在上電后在寫操作之前我們有必要復(fù)位一下器件。第8腳(FF)滿標(biāo)志,FIFO存儲器存滿時(shí),寫操作被禁止,F(xiàn)F被拉低;當(dāng)FF為高時(shí)表明FIFO沒有存滿。第21腳(EF)空標(biāo)志,當(dāng)讀指針和寫指針相等時(shí),表明FIFO為空,標(biāo)志位置低。
基于掃描式的矩陣鍵盤,效率比較低,而且占用過多的I/O口資源。本系統(tǒng)中采用了ZLG7290鍵盤專用芯片,實(shí)現(xiàn)硬件抖動、連擊處理等功能,避免了繁瑣的軟件去抖動和連續(xù)掃描。ZLG7290是I2C接口的芯片,其操作簡單,在此不再贅述。
本系統(tǒng)中用到的是由東芝公司的T6963C為控制器的240×128圖形點(diǎn)陣式液晶。液晶顯示器的可編程引腳都由從機(jī)MSP430F169對應(yīng)的引腳連接,具體連接如圖7所示。
圖7 液晶接口電路
為進(jìn)行較為精確的頻率測量,系統(tǒng)采用了多周期測頻法,之所以能夠比較精確測頻,關(guān)鍵是設(shè)置計(jì)數(shù)器,而相關(guān)計(jì)數(shù)器的實(shí)質(zhì),就是測量的fx的脈沖個(gè)數(shù)。如圖8所示為系統(tǒng)的測頻電路。
圖8 測頻電路
與非門CD4011的輸出端接到F149的P1.0口作定時(shí)器A的輸入時(shí)鐘完成對fx脈沖的計(jì)數(shù),P1.3口用定時(shí)器控制輸出脈沖實(shí)現(xiàn)預(yù)置閘門的功能。
主機(jī)系統(tǒng)路的控制和測頻,并通過SPI總線將數(shù)據(jù)傳輸?shù)綇臋C(jī)。以下這部介紹這幾部分程序的設(shè)計(jì)??刂萍皥D形顯示流程如圖9所示。
圖9 主機(jī)流程圖
由信號調(diào)理電路繼電器RE1就是用來控制耦合方式的。先給出硬件層(硬件層的含義是通過參數(shù)控制引腳直接對硬件進(jìn)行操作)的代碼如下:
系統(tǒng)在進(jìn)行對被測信號進(jìn)行的同時(shí),負(fù)責(zé)控制部件的單片機(jī)F149同時(shí)進(jìn)行鍵盤的處理。
測頻需要初始化定時(shí)器A和定時(shí)器B以及需要單片機(jī)產(chǎn)生一個(gè)閘門信號。如下給出測頻程序。
主機(jī)和從機(jī)通過SPI總線進(jìn)行通信,MSP430具有硬件的SPI接口,SPI接口分為3線制和4線制,本系統(tǒng)的兩個(gè)MCU之間采用3線制接口方式通信。下面給出發(fā)送頻率值的函數(shù):
ADS830E的中心電壓是2.5V對應(yīng)的輸出10000000也就是128[9],一屏的數(shù)據(jù)為160個(gè)。用程序進(jìn)行打點(diǎn)時(shí),在液晶上基線值為64。于是從IDT7204讀取值temp與液晶點(diǎn)的位置locate坐標(biāo)關(guān)系為。Locate=64-(temp-128)。于是locate=192-temp。下面給出畫波形的函數(shù)。
網(wǎng)格的繪制就是為了畫出一個(gè)T6963C控制器LCD顯示模塊的波形顯示區(qū)[10],網(wǎng)格的邊框用實(shí)線繪制,里面內(nèi)部用虛線繪制,這樣顯示就比較美觀。系統(tǒng)采用了用液晶取模軟件,手工打點(diǎn)繪制波形圖,如圖10所示為實(shí)際工作時(shí),對信號源進(jìn)行采樣的圖形顯示。
圖10 示波器顯示
測試效果說明整體設(shè)計(jì)方案是正確的,各項(xiàng)功能均在系統(tǒng)中實(shí)現(xiàn)。設(shè)計(jì)中由于采用了雙端口RAM,所以系統(tǒng)的實(shí)時(shí)反應(yīng)較快,這是本設(shè)計(jì)的一個(gè)特色,這樣可使系統(tǒng)的復(fù)雜程度大大降低,提高了系統(tǒng)性能。采用雙MCU控制方式是本系統(tǒng)的另一大特色,兩個(gè)MCU分別獨(dú)立控制各自的功能,F(xiàn)149負(fù)責(zé)電路的控制和測頻,F(xiàn)169主要負(fù)責(zé)顯示。經(jīng)測試,被測波形很很好地顯示在240×128液晶上,通過輸入TTL波形明顯看出交直流耦合的區(qū)別,鍵盤與液晶提供了很好的人機(jī)接口,鍵盤調(diào)節(jié)波形的幅度和頻率,可以在液晶上實(shí)時(shí)看到波形的變化,具有一定的參考價(jià)值。
[1]朱清慧, 陳紹東, 徐志強(qiáng). 基于圖形液晶顯示器的漢字顯示系統(tǒng)設(shè)計(jì)與仿真[J]. 液晶與顯示, 2009, 24(5): 692-697.
[2]胡漢梅. 基于DSP圖形液晶顯示器接口程序設(shè)計(jì)[J]. 液晶與顯示, 2007, 22(3): 115-119.
[3]李恒, 張?jiān)粕? Proteus平臺下內(nèi)置T6963C液晶模塊的驅(qū)動仿真[J]. 云南民族大學(xué)學(xué)報(bào), 2008, 18(2): 180-183.
[4]袁滿. 基于T6963C的液晶顯示編程的實(shí)現(xiàn)[J]. 自動化技術(shù)與應(yīng)用, 2007, 26(9): 110-112.
[5]MSP430F149 datasheet[EB/OL].http://www.ti.com.
[6]沈建華, 楊艷琴, 翟曉曙. MSP430系列16位超低功耗單片機(jī)原理與應(yīng)用[M]. 北京: 清華大學(xué)出版社, 2004: 289-195.
[7]唐曦. 虛擬示波器用于大學(xué)物理實(shí)驗(yàn)教學(xué)的探索[J]. 西南師范大學(xué)學(xué)報(bào): 自然科學(xué)版, 2011(2): 190-193.
[8]韓紅芳, 孫守昌. 隨機(jī)等效采樣算法在數(shù)字存儲示波器上的實(shí)現(xiàn)[J]. 制造業(yè)自動化, 2011(24): 59-61.
[9]ADS830 datasheet[EB/OL]. http://www.ti.com.
[10]T6963C datasheet[EB/OL]. http://www.toshiba.com.cn.
[11]IDT7204 datasheet[EB/OL]. http://www.idt.com.