《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 解決方案 > 如何測量MSP430的功耗?

如何測量MSP430的功耗?

2013-07-02

 

 眾所周知,MSP430以其超低功耗而著稱。但是很多用戶反應(yīng),在實(shí)際應(yīng)用中,測量MSP430的功耗時,測量結(jié)果和MSP430數(shù)據(jù)手冊相差甚遠(yuǎn)。其實(shí)這里主要涉及到兩方面的內(nèi)容:
 
1. 如何使用MSP430合理的設(shè)計(jì)硬件和軟件,使整個應(yīng)用最大限度的達(dá)到低功耗?

2. 如何測量MSP430的功耗?

就如何測量MSP430功耗,我來分享一下我個人的經(jīng)驗(yàn)。

一、未使用的GPIO的處理

     為了使MSP430最大限度的達(dá)到低功耗,對于MSP430未使用的GPIO而言,應(yīng)該將其設(shè)置為輸出;或者是設(shè)置為輸入,但是將管腳的電平固定,可以通過外部電路將管腳連接至Vcc或者GND,也可使能內(nèi)部上下拉電阻,將管腳電平固定。

    對于MSP430而言,大部分情況下,測量到的功耗與datasheet不符均是由對MSP430未使用的GPIO處理不當(dāng)引起的。默認(rèn)情況下,MSP430的GPIO是作為輸入的,其等效電路如下圖所示,為推挽模式:

    當(dāng)GPIO管腳配置為輸入管腳且外部電平處于浮動狀態(tài)時(0

    如果要與別家的MCU比較功耗時,切記一定要在相同的前提條件下比較才有意義。而MSP430的BOR功能在7種LPM mode下均是打開的,且?guī)缀跏橇愎牡摹?/p>

三、測量MSP430處于LPM4/LPM3 mode下的功耗

    為了更準(zhǔn)確的測量整個用戶應(yīng)用的功耗并且使得最大限度的降低整個應(yīng)用的功耗,建議先對MSP430處于LPM4/LPM3模式下時,板子的整體功耗進(jìn)行測量。在LPM4,LPM3模式下,將MSP430功耗與數(shù)據(jù)手冊調(diào)至一致后,在此基礎(chǔ)上,再進(jìn)行其他情況下功耗的測量。

1.低功耗測試程序的編寫

a. LPM4 低功耗測試程序編寫

         LPM4低功耗測試程序的編寫,建議參考Wolverine MSP430FR5969 LPM4 code example,如下圖所示,注意事項(xiàng)主要有:當(dāng)作為輸入時,將GPIO狀態(tài)固定, 不讓其受外部浮動電平的影響。示例中,GPIO設(shè)置為輸入,但是使能其內(nèi)部下拉電阻將GPIO的狀態(tài)固定了。當(dāng)然也可以直接將GPIO配置為輸出。另外,注意將不必要的模塊均關(guān)掉,以避免不必要的功耗增加。例如:MSP430FR5739, 在LPM4下,記得將參考源REF關(guān)閉。

  REFCTL0 |= REFTCOFF;

  REFCTL0 &= ~REFON;

b. LPM3 低功耗測試程序編寫

         首先需要明白,對于LPM3 mode下功耗的測試,需要選定ACLK的時鐘源, 是內(nèi)部VLO還是LFXT1。因?yàn)樵贚PM3下,MSP430的系統(tǒng)時鐘只有ACLK可用,MCLK和SMCLK均不可用。而當(dāng)ACLK的時鐘源選擇不同時,LPM3 mode下,MSP430的功耗是不同的。以MSP430G2553為例,其數(shù)據(jù)手冊中寫明,LPM3下,ACLK=LFXT1時,功耗約為0.7uA;而LPM3下,ACLK=VLO時,功耗約為0.5uA。

另外,在測量時,為確保程序成功跑到LPM3模式下。最好能夠在進(jìn)入LPM3之前有個指示,譬如讓某個LED燈亮0.5s再滅掉。一定要記得進(jìn)入LPM3時,滅掉LED, 因?yàn)橐粋€LED燈亮,本身就很耗電的,有時會高達(dá)2mA。而為什么要有指示呢?是因?yàn)楫?dāng)采用LFXT1作為ACLK時鐘源時,在程序中需要check LFXT1是否成功起振,萬一用戶忘記焊LFXT1,或者是低頻晶體沒有起振,那么就會導(dǎo)致程序一直處于check flag,而不會進(jìn)入LPM3。在這些情況下,如果沒有指示,當(dāng)對功耗測量時,就會發(fā)現(xiàn)測量結(jié)果與數(shù)據(jù)手冊上LPM3下的功耗不符。

另外,切記判斷LFXT1是否起振,千萬不要直接用示波器測量低頻晶體的管腳,因?yàn)長FXT1本身是非常脆弱的,一旦外部有波動,就會停振。建議將LFXT1作為ACLK時鐘源,然后將ACLK從對應(yīng)管交輸出后,用示波器進(jìn)行觀察。

 

2. MSP430低功耗的測量硬件注意事項(xiàng)

         為保證功耗測試的準(zhǔn)確性,請盡量少接外圍電路,除非是想測量特定外設(shè)的功耗。如果使用MSP430 value line的launchpad進(jìn)行測量時,記得將其EMULATION部分的5個跳線去掉,直接從板下端的Vcc, GND進(jìn)行供電和功耗測量。因?yàn)槿绻蝗サ舻脑?,EMULATION部分的電路也會耗電的。

         如果硬件電路時用戶自己設(shè)計(jì)的,測量LPM3,LPM4下面的功耗時,最好不要焊接MSP430相關(guān)的其他電路。如果已經(jīng)焊接了的話,那么MSP430 GPIO的狀態(tài)配置一定要根據(jù)外部硬件電路的設(shè)計(jì)來配置。如果功耗大于MSP430數(shù)據(jù)手冊上處于LPMx的功耗的話,可以嘗試更改GPIO的配置,來時系統(tǒng)功耗達(dá)到最低。

 

四.MSP430功耗的測量

         無論何種情況下,MSP430的功耗測量,一定要注意前提條件。對想要測試的MSP430的工作狀態(tài)進(jìn)行規(guī)劃,確定此時MSP430工作的供電電壓,溫度,主頻,可用資源等,然后再測量。使用Power Supply 輸出固定電壓給測試板,例如3V。

1. 固定工作模式(固定功耗的測量)

如果用戶程序的編寫,MSP430一直處于某種固定的模式下的話,即其功耗是固定的話,可以將萬用表調(diào)至測試電流檔直接串聯(lián)進(jìn)入供電線路,即可直接觀察到此時電流值。

我曾經(jīng)用過測量精度為6位半的儀器:Agilent 34401A Digit Multimeter 和 RIGOL DM3061 Digital Multimeter,均可以精確的測量到MSP430FR5969處于LPM3下0.7uA的電流。

2. MSP430在active和LPMx mode下切換時功耗以及上電初始化功耗的測量

         雖然高級萬用表,有對電流進(jìn)行累計(jì)測量求平均的功能,但是其測量結(jié)果還是不夠精確,并且一般而言,用戶的程序在開始一般都有初始化過程,有時初始化過程還分很多段,當(dāng)用戶想要測量初始化過程不同時間段對應(yīng)的功耗時,將萬用表串聯(lián)入供電線路就無法完成這個功能了。此時,建議用戶使用示波器測量串聯(lián)入供電線路精密電阻兩端的電壓的方法,來對系統(tǒng)的功耗有個更直觀,精確且有說服力的測量。具體的方法是,用一個約為10~20歐的精密電阻(誤差為1%甚至更低)串聯(lián)入供電線路中,然后用示波器直接觀察此電阻兩端電壓的變化,測出各個階段,各個工作模式下電阻兩端的電壓值,而后處于電阻值即可得到對應(yīng)的工作電流。

 

上面僅是個人經(jīng)驗(yàn)分享,若大家有補(bǔ)充和更正,歡迎發(fā)表您的意見。O(∩_∩)O~

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。