劉東+曾仕鵬+劉雪敬
摘 要:本設(shè)計(jì)是一種簡(jiǎn)易數(shù)字示波器,以STM32單片機(jī)作為控制核心,經(jīng)過(guò)按鍵設(shè)置相應(yīng)檔位后,被測(cè)信號(hào)經(jīng)過(guò)與處理電路、A/D轉(zhuǎn)換電路、采樣電路后再經(jīng)過(guò)數(shù)據(jù)處理最后顯示實(shí)時(shí)波形。測(cè)試結(jié)果表明本課題設(shè)計(jì)的便攜式示波器系統(tǒng)穩(wěn)定、波形清晰、可靠性高,而且本課題設(shè)計(jì)的便攜式示波器成本低,具有很高的實(shí)用價(jià)值。
關(guān)鍵詞:便攜式示波器;STM32;預(yù)處理電路;A/D轉(zhuǎn)換;實(shí)時(shí)采樣
引言
示波器的應(yīng)用與日俱增。對(duì)硬件開(kāi)發(fā)來(lái)說(shuō),測(cè)量信號(hào)的幅度、頻率等信息都離不開(kāi)示波器,但是對(duì)于非盈利的教學(xué)組織和廣大電子愛(ài)好者來(lái)說(shuō)高精度的示波器非常昂貴[1]。為滿足眾多電子設(shè)計(jì)愛(ài)好者由于高精度示波器昂貴的價(jià)格所帶來(lái)的困擾,設(shè)計(jì)了一種基于STM32的便攜式示波器。
1 便攜式數(shù)字示波器的工作原理
本設(shè)計(jì)硬件電路部分由信號(hào)調(diào)理電路、主控芯片、按鍵選擇電路組成,顯示部分為L(zhǎng)CD液晶顯示電路。本設(shè)計(jì)以STM32為控制核心,首先將被測(cè)信號(hào)離散化,之后將離散數(shù)據(jù)暫存于FIFO中,單片機(jī)從FIFO中讀取數(shù)據(jù),然后經(jīng)過(guò)一系列數(shù)據(jù)處理將數(shù)據(jù)輸出在LCD顯示器上,實(shí)現(xiàn)被測(cè)信號(hào)的波形顯示。
2 硬件設(shè)計(jì)
2.1 前端信號(hào)的處理
本模塊具有兩大功能,一是通過(guò)撥碼開(kāi)關(guān)切換測(cè)試檔位;二是信號(hào)波形的處理。
被測(cè)信號(hào)分為兩種:一種是直流信號(hào),另一種是交流信號(hào)。對(duì)于選擇直流信號(hào)還是交流信號(hào)是通過(guò)撥碼開(kāi)關(guān)進(jìn)行選擇的。首先,判定信號(hào)是直流還是交流;然后通過(guò)調(diào)整撥碼開(kāi)關(guān)將示波器測(cè)試模式調(diào)整至合適測(cè)試檔位。測(cè)量交流信號(hào)時(shí),信號(hào)經(jīng)過(guò)電容進(jìn)入模擬通道;測(cè)量直流信號(hào)時(shí),信號(hào)直接進(jìn)入模擬通道。
信號(hào)波形處理電路主要由信號(hào)抬升電路和阻抗變換電路兩部分組成。信號(hào)抬升電路作用是使信號(hào)在垂直方向上處于A/D轉(zhuǎn)換器的輸入范圍[3]。但STM32屬于數(shù)字器件,不能直接對(duì)模擬信號(hào)進(jìn)行處理,所以需要對(duì)信號(hào)進(jìn)行離散化處理[4]。
2.2 信號(hào)的采集
信號(hào)的采集部分采用BB公司的8位AD,是本設(shè)計(jì)的核心部分,經(jīng)過(guò)AD采集的數(shù)據(jù)不是直接發(fā)送至MCU,而是首先發(fā)送到AD與MCU之間的FIFO,以便起到數(shù)據(jù)緩沖的作用。而在FIFO尋址時(shí),由于FIFO沒(méi)有地址線,所以使用地址指針增減的方式來(lái)進(jìn)行尋址操作。AD和FIFO的同步時(shí)鐘均來(lái)源于單片機(jī)的ALE引腳,這樣保障了FIFO和AD的時(shí)鐘同步。
2.3 液晶顯示
本設(shè)計(jì)的波形顯示模塊采用8位并行數(shù)據(jù)處理的2.4寸LCD顯示屏,時(shí)域分量體現(xiàn)在橫軸上,幅值體現(xiàn)在縱軸上[7]。液晶屏有4個(gè)編程端口:RS、RW、EN和PSB。
2.4 按鍵電路
設(shè)置了1個(gè)按鍵控制波形的run和stop,2個(gè)獨(dú)立按鍵設(shè)置幅值和時(shí)間軸的大小,當(dāng)MCU檢測(cè)到按鍵被按下時(shí),軟件中相應(yīng)的參數(shù)值會(huì)發(fā)生相應(yīng)地變化,從而改變了波形的大小。
本設(shè)計(jì)橫軸方向能夠設(shè)置三檔掃描速度:10us/div,20us/div,40us/div,縱軸方向能夠設(shè)置三檔垂直靈敏度:10mV/div、0.1mV、1V/div,此外還可以設(shè)置1倍、2倍、5倍的不同檔位。
3 軟件部分
3.1 流程圖的設(shè)計(jì)
總體設(shè)計(jì)流程圖如圖1所示。
3.2 測(cè)量頻率流程圖
本設(shè)計(jì)采用計(jì)數(shù)法測(cè)量頻率?;舅枷刖褪抢糜?jì)數(shù)器累加的方法,測(cè)量單位時(shí)間內(nèi)被測(cè)信號(hào)的上升沿?cái)?shù)量,將1s等分成20個(gè)50ms,防止計(jì)數(shù)器產(chǎn)生溢出,測(cè)出信號(hào)頻率[8]。
3.3 測(cè)試結(jié)果
測(cè)試方式如下:
(1)測(cè)試頻率為3KHZ,幅值為3.3V的方波信號(hào)。示波器輸出波形與實(shí)際波形基本相符。顯示幅值為3.4V,頻率大致為3KHZ。(2)測(cè)試頻率為10KHZ,幅值為5V的正弦信號(hào)。輸出波形也與實(shí)際波形相符。顯示幅值為5.1V,頻率大致為10KHZ。兩次測(cè)試結(jié)果均與被測(cè)信號(hào)基本相符,誤差較小。
4 結(jié)束語(yǔ)
本文設(shè)計(jì)的基于STM32的便攜式數(shù)字示波器,通過(guò)對(duì)軟件和硬件的優(yōu)化,經(jīng)測(cè)試可以達(dá)到所要求的性能指標(biāo),所設(shè)計(jì)的便攜式數(shù)字示波器運(yùn)行穩(wěn)定、可靠。此外,該數(shù)字示波器還具有體積小、易攜帶、成本低、易操作等優(yōu)點(diǎn)。是廣大電子愛(ài)好者的福音。
參考文獻(xiàn)
[1]王棟,張俊濤.基于SOPC的數(shù)字示波器的設(shè)計(jì)與買(mǎi)現(xiàn)[J].電子器件,2009,32(3):632-636.
[2]陳鑫,秦宏偉,陳春雨,等.基于Cortex-M3內(nèi)核的STM32微控制器研究與電路設(shè)計(jì)[J].2013,33(14606):44-47.
[3]劉楊斌,劉其峰,華慧.基于AT89S52單片機(jī)的簡(jiǎn)易數(shù)字示波器設(shè)計(jì)[J].,2011,34(34914):138-140.
[4]余海斌,陳志英.基于AVR單片機(jī)的簡(jiǎn)易示波器設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009(5):1-2.
[5]李建波.Proteus中基于AT24C512的漢字庫(kù)加載技術(shù)及顯示仿真
[J].液晶與顯示,2010,25(3):391-395.
[6]晃陽(yáng).單片機(jī)原理及應(yīng)用開(kāi)發(fā)教程[M].北京:清華大學(xué)出版社,2007.
[7]李萍.AT89S51單片機(jī)原理開(kāi)發(fā)與應(yīng)用實(shí)例[M].北京:中國(guó)電力出版社,2008.
[8]王文理,武晉,劉志強(qiáng).基于AT89S52單片機(jī)與AD0804的數(shù)字示波器設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009,25(2):114-115.