STM8L和MSP430的低功耗對(duì)比
我的測(cè)試環(huán)境如下:
1、外部晶振分頻得1M
2、一個(gè)16位定時(shí)器
3、一個(gè)按鍵中斷
4、一個(gè)串口 波特率:115200
5、一個(gè)LED燈
6、電源3.3V
7、主程序運(yùn)行:按鍵中斷從串口打印“STM8L PK MSP430”,定時(shí)器500MS中斷將LED取反。
以上硬件條件分別在STM8L和MSP430上全速進(jìn)行。實(shí)測(cè)電流進(jìn)行比較而得結(jié)果,有興趣的朋友可以試試看看。
討論說明:
低功耗一直是各大MCU廠商爭(zhēng)奪的焦點(diǎn)。最近,網(wǎng)上非常流行一個(gè)視頻(意法半導(dǎo)體STM8L低能耗系列MCU技術(shù)演示),視頻中ST的工程師分別用兩個(gè)土豆,RFID線圈,一杯熱水對(duì)STM8LMCU進(jìn)行供電并使得系統(tǒng)正常運(yùn)行。這不禁讓我對(duì)STM8的運(yùn)行功耗產(chǎn)生了興趣,到底多低的電量STM8L就能工作呢?MCU內(nèi)部哪個(gè)模塊功耗最高?如何才能盡可能的降低STM8L的功耗?
首先讓我們來看看廠商DS中提供的數(shù)據(jù):
1. 工作電壓1.8V到3.6V
2. 5個(gè)低功耗模式:
wait模式
Low power run模式 (約消耗5.1uA)
Low power wait模式(約消耗3uA)
Active-halt with full RTC模式(約消耗1.3uA)
Halt模式(約消耗350nA)
當(dāng)然,這只是廠商提供的理想功耗,在實(shí)際使用過程中,不同的應(yīng)用場(chǎng)合不同的外設(shè)甚至于不同的PCB 設(shè)計(jì)和不同的軟件編寫都會(huì)對(duì)系統(tǒng)的功耗產(chǎn)生重大的影響。在下面的評(píng)測(cè)中,我們就以最基本的STM8 discovery開發(fā)板為平臺(tái)進(jìn)行STM8 RUN模式下功耗實(shí)測(cè)。當(dāng)然由于測(cè)試儀器的精度以及測(cè)試方法的影響,
首先讓我們來看看 STM8-DISCOVERY 工作電壓到底多低?
測(cè)試電路很簡(jiǎn)單,一個(gè)外置穩(wěn)壓電源,一個(gè)萬用表串聯(lián)用來測(cè)當(dāng)前電流,一個(gè)萬用表并聯(lián)用來測(cè)試當(dāng)前電壓。
在電源電壓為1.8056V時(shí)系統(tǒng)不工作,STM8板上液晶不亮。
在電源電壓為1.8135V時(shí)系統(tǒng)工作,片內(nèi)程序執(zhí)行,IDD測(cè)試當(dāng)前電流為1.12mA ,按照STM8L用戶手冊(cè)(CD00278045文檔)的介紹,我們把電流表串入JP1的2,3號(hào)引腳。此時(shí)電流表中顯示為1.08mA?;九cIDD測(cè)量一致。通過此次測(cè)量,可以認(rèn)為STM8的工作電壓介于1.80V到1.81V之間,基本滿足數(shù)據(jù)手冊(cè)上所述的1.8V供電電壓。
STM8的DS中有提到:Consumption: 195 μA/MHz,這是什么意思呢?難道系統(tǒng)的時(shí)鐘頻率還和功耗有關(guān)系?
根據(jù)用戶手冊(cè)的圖17可以看到,STM8MCU所用的時(shí)鐘信號(hào)主要來自于4個(gè)地方HSE(外部高速晶振)、HIS(內(nèi)部16M RC振蕩器)、LSE(外部低速晶振)以及LSI(內(nèi)部38KHz低速振蕩器)。這四個(gè)時(shí)鐘通過選擇器進(jìn)行選擇,并通過系統(tǒng)的分頻器進(jìn)行(1,2,4,8,16,32,64,128)分頻。由于板子上沒有外接高速晶振,所以只能使用芯片內(nèi)部提供的16MHZ RC振蕩器進(jìn)行測(cè)試。為了更好的展現(xiàn)測(cè)試效果,我們對(duì)每種分頻分別進(jìn)行了測(cè)試。STM8的最高頻率為16MHz,最低頻率為16/128=125KHZ。下面各圖分別為在各種分頻系數(shù)下用板載IDD所測(cè)得得RUN模式下的消耗電流。(測(cè)試程序關(guān)閉了除ADC模塊和液晶顯示屏模塊外的所有模塊,并且電源為3.3V)。分頻分別為:1、2、4、8、16、32、64、128。
通過測(cè)試,我們可以知道,在同一電壓下,不同的工作頻率器件所消耗的電流是不一樣的,總體來看呈下降趨勢(shì)。當(dāng)這個(gè)下降卻不是完全線性的,當(dāng)系統(tǒng)分頻因子從1變?yōu)?時(shí)效果比較明顯,從8變?yōu)?6和32時(shí),系統(tǒng)消耗電流只有微小的改變,如果系統(tǒng)的分頻因子從64變?yōu)?28基本上可以說沒有變化。如果還能夠有256分頻的話,按照前面的規(guī)律估計(jì)所消耗的電流變化也不會(huì)很大。難道這就是STM8L的極限了?當(dāng)然不是,前面我們說過,STM8 MCU有4個(gè)時(shí)鐘源,除去外部高速時(shí)鐘板子上沒有焊接外,其余三個(gè)我們都可以使用。上面我們測(cè)試的結(jié)果就是用內(nèi)部16Mhz的RC時(shí)鐘源作為主時(shí)鐘得出的,為了使得STM8工作在更低的頻率之下,我們可以選擇內(nèi)部38k低速時(shí)鐘(即LSI)作為主時(shí)鐘。以LSI為主時(shí)鐘,并且分頻因子為1時(shí)系統(tǒng)消耗電流各不相同。