用單片機PIC18F2550設(shè)計示波器
一、性能指標(biāo)
(1)采降速率:334kHz,100kHz,50kHz,20kHz,10kHz.5kHz,2kHz,1kHz,500Hz等9檔可調(diào)。
(2)工作電壓:3.5—5V,采用內(nèi)置可充電鋰電池供電,使用計算機USB口充電。
(3)輸入阻抗:1MΩ。
(4)輸入電壓:±2.5V,±12.5V兩檔可調(diào),如果接入10:1示波器探棒,最大輸入電壓可達±125V。
(5)觸發(fā)方式:邊沿觸發(fā),無、上升沿、下降沿三檔可調(diào),觸發(fā)電壓通過按鍵循環(huán)調(diào)整。
(6)具有波形凍結(jié)功能。
二、電路原理
電路原理圖如下圖所示,從圖中可以看出微型示波器由電源電路、測量信號輸入、信號整理、信號采集、顯示及鍵盤處理等6部分構(gòu)成。
1.電源電路
為滿足便攜的需要采用了可充電鋰電池作為本機的電源,由于可充電鋰電池內(nèi)置了保護芯片,所以充電電路僅使用了R302一只15Ω的限流電阻構(gòu)成簡易充電電路,經(jīng)過一個月的試用,情況良好,充滿電后本機可以連續(xù)工作2個小時,一般情況下本機都是間斷使用,可以工作很長的時間。電量降低到一定的時候,由于電池內(nèi)置保護電路的作用,本機自動斷電。由于鋰電基本上沒有記憶效應(yīng),所以可隨時將USB電纜的一端插入本機,另一端插入普通PC機的任意一個USB口,為本機充電,充滿自停。運放所需的負(fù)電源由一片34063及周邊電路構(gòu)成,提供-4.2V電源給運放使用。
2.信號輸入電路
信號輸入電路由R10、R11、R12、R13、R14、C11、C12和D5、D6構(gòu)成,完成輸入信號的1:1和1:5切換、阻抗匹配以及對后級電路的保護,由于信號輸入電壓分±2.5V,±12.5V兩檔可調(diào),所以本機未設(shè)交直流切換電路。
3.信號整理電路
T1072中的兩級運放及周邊電路完成信號整理工作,其中一級運放完成輸入阻抗轉(zhuǎn)換工作,另一級完成±2.5V到0~2.5V的信號轉(zhuǎn)換工作以滿足信號采集電路的工作需要。
4、信息采集電路
本機的核心是一片PIC18F2550單片機,PIC18F2550是一款采用納瓦技術(shù)的28引腳RAM,256強型閃存USB單片機,擁有32KB閃存,2KBRAM,256字節(jié)EEPROM,3個外部中斷,4個定時器模塊(Timer0到Timer3),2Mb/s)數(shù)據(jù)傳輸,支持控制、中斷、等時和批量數(shù)據(jù)傳輸模式,特別是內(nèi)置有10路10位模數(shù)轉(zhuǎn)換器非常適合制作簡易示波器,PIC18F2550的數(shù)據(jù)手冊可到www.
microChip.com.cn下載。信號采集電路由PIC18F2550的內(nèi)置模數(shù)轉(zhuǎn)換電路和R27與TIA31構(gòu)成的電壓基準(zhǔn)構(gòu)成,將0~2.5V模擬信號轉(zhuǎn)換為0~255的數(shù)字信號。
5.顯示電路
顯示電路使用了一片128×64的圖形點陣液晶模塊,這是一片帶有SPI串型接口的黑白點陣液晶。
模塊通過7針接口與單片機通信,由于本機只使用了一片顯示模塊,所以其中的CS1腳可以真接接地,去除電源和地,本機只使用了單片機PB口的PBO~PB3共4個引腳就完成了顯示模塊的控制。
6.鍵盤電路
示波器的控制主要有采樣率調(diào)整、測量量程切換、觸發(fā)電平調(diào)整、觸發(fā)方式調(diào)整、波形快照等,這里測量量程切換使用了一個l×2的撥動開關(guān),其他功能通過4個接在單片機PB4-PB7引腳上的微動開關(guān)完成,所有按鍵均為循環(huán)功能鍵,第一個按鍵為觸發(fā)方式循環(huán)功能鍵,按動此鍵,觸發(fā)方式在無、上升沿和下降沿間切換;第二個按鍵為觸發(fā)電平功能鍵,觸發(fā)電平可以從+2.5—2.5V間變化,當(dāng)然,當(dāng)量程開關(guān)在±12.5V檔時觸發(fā)電平可以從+12.5~12.5V間變化;第三個按鍵為采樣率切換鍵,采樣率可以從67.5μs/div-50ms/div間切換;第4個按鍵為波形快照鍵,按下此鍵畫面顯示凍結(jié),方便仔細(xì)觀察波形,再次按動此鍵,重新開始采樣。
三、軟件設(shè)計
軟件采用PICC開發(fā),軟件包括按鍵處理、數(shù)據(jù)采樣和數(shù)據(jù)顯示三個主要功能。按鍵處理采用中斷方式,同時去抖動;數(shù)據(jù)采樣采用了內(nèi)部時鐘作為采樣率控制;數(shù)據(jù)顯示使用了軟件模擬SPI接口的方法控制液晶模塊的顯示,下面分別是數(shù)據(jù)寫入和控制寫入的基本函數(shù):
具體編程過程中可以采用雙緩存技術(shù)提高顯示速度,即一個緩存寫入數(shù)據(jù)的同時,使用另一緩存顯示數(shù)據(jù)。由于是數(shù)字示波器,可以充分利用單片機的計算能力,自動計算出信號頻率、平均值、最大值、最小值等參數(shù),其中頻率的計算可以通過信號通過平均值的次數(shù),同時考慮當(dāng)時的采樣率即可計算得出;其他值的計算均為簡單的算數(shù)運算,不過其中要用到浮點數(shù),幸好編譯器為我們提供了浮點函數(shù)庫,如果用匯編完成則會比較麻煩。
四、制作調(diào)試
制作過程中要盡量縮小體積以便攜帶,同時注意布線盡量短捷以減少自激的可能,上圖(略)為一種設(shè)計供參考:
圖中的BNC插座用于接入標(biāo)準(zhǔn)示波器探頭,也可以自制簡易探頭,中圖中的探頭就是筆者使用標(biāo)準(zhǔn)BNC插頭加上一個從舊萬用表筆中拆出的探針組裝了一個探頭,這樣手持示波器即可對電路進行測量,下圖為插頭內(nèi)部構(gòu)造照片。左上邊的撥動開關(guān)用于1:5衰減切換,左下邊的撥動開關(guān)為電源開關(guān),右上側(cè)為USB接口,用于對內(nèi)置鋰電池進行充電,右邊的微動開關(guān)從上至下分別為觸發(fā)方式、觸發(fā)電平、采樣率和屏幕快照按鈕。讀者在制作過程中要注意盡量減少地線的長度,同時要注意輸入信號的地線要與其他地線分開并一點接地。制作過程可以分三步:第一步安裝好USB插座和DC-DC轉(zhuǎn)換部分,在使用萬用表確認(rèn)USB接口的1~4腳間無短路的情況下(各類常見USB接口見圖8(略),其中1—4腳不可接反,將電路板接入計算機的USB口,這時在T1072的4腳和8腳應(yīng)該可以分別測到士4~5V的電壓,并且基本相等,如不等,可以通過調(diào)整R202的值使之相等。同時測一下PIC18F2550的20腳也應(yīng)有4—5v的電壓,以上電壓隨著計算機的不同而略有差別。接入鋰電池,即可開始對電池充電。第二步安裝T1072、電壓基準(zhǔn)T1431及其周邊元件和輸入網(wǎng)絡(luò),安裝完成后接入計算機,在輸入端接上1.5V的干電池,同時將1:5的輸入信號切換開關(guān)撥向上側(cè),在T1072的1腳應(yīng)該可以測到與電池相等的電壓,7腳可以測到約2V的電壓。第三步將LCDOscilloscope.hex燒寫進PIC18F2550,單片機程序可以采用icd2寫入單片機。安裝PIC18F2550及其周邊相關(guān)元件,安裝完成后,接入液晶屏,應(yīng)可看到www.sunxd.com的LOGO顯示,過3s給出波形顯示,如果沒有,可以檢查一下單片機周邊的晶振,C301、R301等,可以檢查相關(guān)的部分即可。
五、安裝使用
依據(jù)電路板設(shè)計選用外殼,右圖為裝入外殼后的情形,使用中主要的可調(diào)部分只有兩只撥動開關(guān)和四只微動開關(guān),可以在使用中略加摸索即可上手。
使用過程中如果屏幕不亮應(yīng)首先考慮可能是需要充電了。