測(cè)試PIC單片機(jī)如何省電
測(cè)試條件:PIC16F676使用內(nèi)部4MHzRC振蕩,電源電壓5V,測(cè)試在睡眠下的消耗電流
單片機(jī)在外部IO口設(shè)置成輸入并有固定電平的情況下,程序進(jìn)入一個(gè)NOP指令和跳轉(zhuǎn)指令的死循環(huán)后耗電約1.26mA
1.SLEEP之后:WDT開并256分頻,每2.3秒左右喚醒一次,所有IO口為數(shù)字輸入口,直接接高電平或低電平。5V,0.159mA,主要配置:_INTRC_OSC_NOCLKOUT _WDT_ON _PWRTE_ON _MCLRE_OFF _BODEN
2.上面的程序沒動(dòng),只是配置 _BODEN_OFF,電流降為8.5μA,其它配置變化對(duì)電流消耗影響不大,WDT開與不開只差0.1μA,可見BROWN OUT DOWN功能是個(gè)耗電大戶。
3.上面的配置、程序沒動(dòng),所有IO輸入口懸空,結(jié)果電流變?yōu)?.8-1mA,以上均沒開電平變化中斷,而且手接近單片機(jī)電流變的更大??梢婋m然IO口看似沒有吸收電流,但干擾電平引起單片機(jī)內(nèi)部比較器頻繁翻轉(zhuǎn)的電流可以說很驚人。
4.以上配置,僅將WDT分頻比改為1:1,各IO口仍然接固定電平,此時(shí)單片機(jī)WDT約每1.8mS喚醒一次,電流為8.8μA,可見RC的喚醒很省電。
5.以上配置,WDT1:256分頻,將所有IO口設(shè)置成輸出,并輸出低電平,IO口不接任何負(fù)載,結(jié)果電流為9.5μA,與輸入相比多了1μA。可見IO口的驅(qū)動(dòng)也是要能量的。
6.以上配置,WDT1:256,各AD輸入口設(shè)置成AD輸入,其它設(shè)置成IO輸入,均接固定電平,ADON置1,GO為零,此時(shí)AD模塊開啟,轉(zhuǎn)換未開始,轉(zhuǎn)換時(shí)鐘采用系統(tǒng)時(shí)鐘的1/8,電流8.8μA基本無變化,轉(zhuǎn)換時(shí)鐘采用AD獨(dú)立RC振蕩,電流仍為8.8μA,獨(dú)立RC振蕩,GO置1,轉(zhuǎn)換完成后繼續(xù)AD轉(zhuǎn)換,電流為9.2μA,期間沒有空余采樣電容的充電時(shí)間,可見AD轉(zhuǎn)換并不怎么耗電。
7.關(guān)閉AD,開啟RA口的弱上拉,有弱上拉的IO懸空,WDT 1:1,電流8.8μA,將弱上拉的IO口其中一腳接地,電流猛增至212.4μA,換算下來一個(gè)弱上拉相當(dāng)于一個(gè)24KΩ左右的電阻。
綜上所述,耗電大戶有兩個(gè):第一大戶是懸空的輸入腳,第二大戶為弱上拉時(shí)IO口接地。第三大戶為BROWN OUT DOWN RESET(電壓過低復(fù)位)。若要省電的話不妨以此參考。此次試驗(yàn)是單片機(jī)沒有任何外圍電路的情況下測(cè)得,當(dāng)然外圍電路比較復(fù)雜,設(shè)計(jì)省電模式其它電路的耗電也要考慮。若要非常省電,那么每個(gè)功能是否開啟都是錙珠必較的。
評(píng)論