基于MSP430單片機(jī)的虛擬示波器
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:虛擬示波器在應(yīng)用中體現(xiàn)出簡(jiǎn)易、靈活、便攜、易于與PC機(jī)通信的特點(diǎn)。該設(shè)計(jì)中采用超低功耗的MSP430F169單片杌作為控制核心,實(shí)現(xiàn)模/數(shù)轉(zhuǎn)換,它能保證高運(yùn)算速度和系統(tǒng)的工作穩(wěn)定。同時(shí)使用高速USB接口與PC機(jī)進(jìn)行數(shù)據(jù)傳輸,在PC機(jī)端對(duì)信號(hào)進(jìn)行分析和再現(xiàn),實(shí)現(xiàn)信號(hào)的實(shí)時(shí)顯示和信號(hào)的特征分析;系統(tǒng)采用USB供電,不僅可降低功耗,而且易于使用和攜帶。實(shí)驗(yàn)結(jié)果表明,該設(shè)計(jì)達(dá)到了預(yù)期目標(biāo)。
關(guān)鍵詞:MSP430;USB;虛擬示波器;低功耗系統(tǒng)
0 引言
信息技術(shù)的高速發(fā)展,對(duì)新的技術(shù)設(shè)備提出了數(shù)字化,小型化和低功耗的要求,而虛擬示波器就是為適應(yīng)這一發(fā)展而設(shè)計(jì)的。MSP430單片機(jī)具有集成度高、嵌入模塊豐富(12位AD、16位定時(shí)器、FLASH、3通道DMA等)、超低功耗、系統(tǒng)穩(wěn)定等特點(diǎn),在許多領(lǐng)域得到了廣泛的應(yīng)用。對(duì)于一個(gè)虛擬示波器,一般通過(guò)采集模擬波形,然后由MCU經(jīng)過(guò)A/D轉(zhuǎn)換,產(chǎn)生相應(yīng)的波形數(shù)據(jù),經(jīng)多級(jí)緩沖和傳輸,再經(jīng)過(guò)相應(yīng)的數(shù)字信號(hào)處理(如FFT等),最后通過(guò)采樣將模擬波形還原出來(lái)。MSP430F169單片機(jī)內(nèi)嵌12位A/D轉(zhuǎn)換器,通過(guò)前置放大器、信號(hào)調(diào)理、比例轉(zhuǎn)換后,由單片機(jī)完成模數(shù)轉(zhuǎn)換,數(shù)據(jù)將從單片機(jī)經(jīng)由USB接口高速傳輸至PC機(jī),PC機(jī)經(jīng)過(guò)一系列的數(shù)字信號(hào)處理后將波形顯示在PC機(jī)控制臺(tái)上。這一設(shè)計(jì),達(dá)到了小型化、多樣性、高精度、低功耗、便攜式、嵌入式的要求,是一個(gè)功能齊全的智能化配置的功能設(shè)備,較好地體現(xiàn)了MSP430單片機(jī)的控制和外圍模塊豐富的優(yōu)越性。同時(shí)采用USB供電,通過(guò)內(nèi)部電路對(duì)電源的分配,達(dá)到了低功耗的要求。
1 設(shè)計(jì)方案
為了開(kāi)發(fā)一種小型化、便攜式、低功耗、功能齊全的波形收集、顯示的智能化虛擬示波器,提供大學(xué)生自主開(kāi)發(fā)和電子設(shè)計(jì)需要,具備基本硬件測(cè)試和分析功能,達(dá)到低成本測(cè)試平臺(tái),設(shè)計(jì)方案如圖1所示。
它主要包含兩部分:
(1)對(duì)輸入信號(hào)進(jìn)行收集、調(diào)理、采樣和A/D轉(zhuǎn)換,并通過(guò)USB傳輸?shù)接?jì)算機(jī)端,通過(guò)信號(hào)處理后顯示在計(jì)算機(jī)屏幕。
(2)采用低功耗器件,保障USB供電,為儀器提供充足的電能。
1.1 電源設(shè)計(jì)
該設(shè)計(jì)中單片機(jī)是工作在低功耗模式的,因此對(duì)系統(tǒng)的電源管理十分重要。為了降低系統(tǒng)的功耗,使用USB為全電路供電,設(shè)計(jì)了由單片機(jī)程控的電源開(kāi)關(guān)。它包括了過(guò)電流、過(guò)電壓保護(hù)、低功耗運(yùn)行模式和休眠,并采用分布供電的方式,從而達(dá)到了省電及減低功耗的目的。
由于電路中使用了電壓±12 V的程控放大器,因此必將USB的5 V電源通過(guò)程控開(kāi)關(guān)轉(zhuǎn)換成±12 V的電源,其電路轉(zhuǎn)換中使用的轉(zhuǎn)換芯片為MAX743。MAX743是雙輸出的,PWM開(kāi)關(guān)時(shí)穩(wěn)壓器。它可以從5 V轉(zhuǎn)換成±12 V或者±15 V電壓。它的主要應(yīng)用特點(diǎn)為:電流變化為100~125 mA、低噪聲電流模式反饋、短路保護(hù)、可邏輯選擇±12 V或±15 V電壓輸出、內(nèi)置電源MOS管、擁有±4%的精度、可軟件啟動(dòng)等?;谝陨咸攸c(diǎn),它能夠有效地進(jìn)行自我保護(hù),對(duì)電壓的影響相當(dāng)小,并且能夠容易地將噪聲和尖峰濾除,保證了電源信號(hào)的質(zhì)量。
1.2 USB設(shè)計(jì)
USB塊在整個(gè)電路中實(shí)現(xiàn)的功能為:提供整個(gè)電路的電源、實(shí)現(xiàn)PC與單片機(jī)之間的數(shù)據(jù)的快速傳輸。
使用USB控制芯片PDIUSBD12實(shí)現(xiàn)USB數(shù)據(jù)傳輸?shù)目刂?,利用miniUSB接口實(shí)現(xiàn)PC機(jī)與采集板的連接。PDIUSBD12提供了高達(dá)12 Mb/s的傳輸速率,可以進(jìn)行存儲(chǔ)器直接尋址,即DMA傳輸,既加大了數(shù)據(jù)吞吐量,同時(shí)也提高了數(shù)據(jù)傳輸速度。PDIUSBD12所具有的低掛起功耗功能,連同LazyClock輸出可以滿足使用ACPIOnNOW和USB電源管理的要求,低的操作功耗,也可以應(yīng)用于使用總線供電的外設(shè)。PDIUSBD12芯片接收來(lái)自于單片機(jī)的8位數(shù)據(jù),通過(guò)來(lái)自單片機(jī)的控制信號(hào),實(shí)現(xiàn)數(shù)據(jù)通過(guò)miniUSB接口到PC機(jī)的串行數(shù)據(jù)傳輸。
1.3 MSP430內(nèi)嵌模數(shù)轉(zhuǎn)換器
要將收集到的波形轉(zhuǎn)換成一系列的數(shù)據(jù)量,以便于進(jìn)一步的處理和研究,A/D轉(zhuǎn)換是必不可少的。在這里,為了提高轉(zhuǎn)換效率和轉(zhuǎn)化速率,同時(shí)為了控制方便以、數(shù)據(jù)的存儲(chǔ)的可靠性與快速存儲(chǔ),使用了單片機(jī)內(nèi)部的A/D轉(zhuǎn)換模塊來(lái)進(jìn)行A/D轉(zhuǎn)換。而使用單片機(jī)內(nèi)部的模塊也能夠減小系統(tǒng)的功耗與使用的元器件的數(shù)量。
ADC12模塊內(nèi)置了6種可編程選擇的參考電源,使用時(shí)可以根據(jù)不同要求進(jìn)行選擇。ADC12共有12個(gè)轉(zhuǎn)換通道,設(shè)置了16個(gè)轉(zhuǎn)換存儲(chǔ)器用于暫存結(jié)果,通過(guò)合理的軟件設(shè)置后,ADC12硬件會(huì)自動(dòng)將結(jié)果存放到相應(yīng)的ADC12MEM寄存器中。通過(guò)ADC12的轉(zhuǎn)換得到波形的數(shù)據(jù),經(jīng)過(guò)單片機(jī)內(nèi)部的DMA數(shù)據(jù)傳輸后可將其送到USB端,從而發(fā)送給PC機(jī)處理。圖2為單片機(jī)到PC機(jī)的數(shù)據(jù)傳輸。
計(jì)算機(jī)端應(yīng)用程序使用C sharp語(yǔ)言開(kāi)發(fā)。其目的是將接收的數(shù)據(jù)轉(zhuǎn)換成模擬波形從而顯示在計(jì)算機(jī)上其控制臺(tái)如圖3所示。
2 PC控制臺(tái)及編程
計(jì)算機(jī)端程序需要不斷地將波形顯示在主界面上,主按鈕觸發(fā)后將調(diào)用backgroundworker控件生成一個(gè)新的線程來(lái)不斷發(fā)送采樣命令、接收設(shè)備傳來(lái)的數(shù)據(jù)以及將數(shù)據(jù)進(jìn)行恢復(fù)顯示。新建線程使后臺(tái)處理過(guò)程中主界面仍然可以響應(yīng)用戶的請(qǐng)求。在顯示過(guò)程中需要對(duì)波形顯示的幅度大小和時(shí)間間隔調(diào)整,這是通過(guò)主界面提供的控件設(shè)置控制變量,新線程使用這些變量恢復(fù)和顯示波形實(shí)現(xiàn)的。
3 實(shí)驗(yàn)
虛擬示波器通過(guò)接收一個(gè)信號(hào),然后顯示在PC機(jī)控制臺(tái)上。同時(shí)對(duì)兩個(gè)端點(diǎn)進(jìn)行了測(cè)試;信號(hào)采集輸入端和單片機(jī)接收端。在圖4中,(a)為輸入波形,(b)為在單片機(jī)接收端的波形??梢钥闯觯ㄐ谓?jīng)轉(zhuǎn)換后送到單片機(jī)接口的信號(hào)很好。同時(shí)已經(jīng)加入直流偏置,符合單片機(jī)轉(zhuǎn)換的要求。單片機(jī)轉(zhuǎn)換后的數(shù)據(jù)經(jīng)USB傳輸?shù)絇C機(jī)上進(jìn)行顯示。圖5為在PC機(jī)上顯示的波形,它的實(shí)現(xiàn)依賴于軟件的編程。
使用信號(hào)發(fā)生器作為信號(hào)輸入,使用MOS-620示波器對(duì)信號(hào)進(jìn)行校準(zhǔn)。表1中通過(guò)對(duì)測(cè)試數(shù)據(jù)的分析,參數(shù)在精度上的誤差基本控制在5%以內(nèi)。但對(duì)于頻率較大的信號(hào),由于和采樣頻率相近,其頻率會(huì)有較大的誤差。在波形顯示上滿足了設(shè)計(jì)要求,能夠滿足采集最大頻率為100 kHz的波形。
4 結(jié)語(yǔ)
本文采用性能優(yōu)越的MSP430F169作為控制核心。通過(guò)USB與PC機(jī)進(jìn)行數(shù)據(jù)交換,利用PC機(jī)進(jìn)行人性化的操作。通過(guò)USB的設(shè)計(jì)實(shí)現(xiàn)了數(shù)據(jù)的快速傳輸,利用USB供電,使用電源管理的方法對(duì)電源進(jìn)行分配,單片機(jī)對(duì)電源開(kāi)關(guān)進(jìn)行控制,既實(shí)現(xiàn)了電源的可控性,又降低了功耗。使用MSP430在低功耗模式下,內(nèi)部的A/D模塊能夠?qū)崿F(xiàn)快速而精準(zhǔn)的A/D轉(zhuǎn)換。通過(guò)各個(gè)部分的硬件設(shè)計(jì)在相關(guān)軟件的輔助下實(shí)現(xiàn)了要求波形的顯示,完好達(dá)到了虛擬示波器的設(shè)計(jì)。