9.低功耗(LOW POWER)
9.1.低功耗模式
在系統(tǒng)或電源復(fù)位以后,微控制器處于正常模式運(yùn)行狀態(tài),系統(tǒng)所用時(shí)鐘為 256KHz內(nèi)部 RC振蕩器輸出。當(dāng) CPU不需繼續(xù)運(yùn)行時(shí),可以利用進(jìn)入多種低功耗模式來節(jié)省功耗。例如等待某個(gè)外部事件時(shí),用戶需要根據(jù)最低電源消耗、最快啟動(dòng)時(shí)間和可用的喚醒源等條件,選定一個(gè)最佳的低功耗模式。
三種低功耗模式
? 待機(jī)模式(Idle Mode)
? 停止模式(Stop Mode)
? 睡眠模式(Sleep Mode)
注:可以通過關(guān)閉未使用的外設(shè)、時(shí)鐘源使功耗降到最低。此外,在運(yùn)行模式下,可以通過以下方式中的一種降低功耗
? 降低系統(tǒng)時(shí)鐘
? 關(guān)閉 APB和 AHB總線上未被使用的外設(shè)時(shí)鐘。
? 合理配置 APB與 AHB 的頻率關(guān)系
9.2.進(jìn)入低功耗
進(jìn)入低功耗模式(Sleep)步驟:
? Step1:關(guān)閉低功耗下不需要工作的模擬模塊
? Step2:系統(tǒng)時(shí)鐘切換到 LIRC_256K,并且關(guān)閉除 LIRC_256K以外的時(shí)鐘源
? Step3:配置 PMU_LPDOS使其電壓檔位比 PMU_HPLDOS電壓檔位高
? Step4:把 PMU_HPXCP, PMU_HPPDI, PMU_HPPDLI配置為 0
? Step5(可選):配置 LPCON[7]為 1,并且配置 PMUBK寄存器設(shè)置低功耗下 LPLDO電壓
? Step6:配置 PMU_HPV2I為 0(如果執(zhí)行了 step5,則無需執(zhí)行 step6)
? Step7:配置空閑的 IO為模擬模式
? Step8:進(jìn)入 Sleep前的準(zhǔn)備工作:包括配置喚醒源,初始化喚醒中斷服務(wù)函數(shù),關(guān)閉看門狗(可選),
使能進(jìn)入 Sleep時(shí)自動(dòng)關(guān)閉 256K內(nèi)部 RC振蕩器(可選),使能SLEEP_GOON_EN喚醒時(shí)不復(fù)位(可選)
? Step9:配置 LP_CON0[0]進(jìn)入 Sleep
9.3.低功耗喚醒
支持多種喚醒方式
? 端口喚醒
總共有 4個(gè) IO喚醒源(由 WKUP_CON[3:0]控制使能)這些喚醒源喚醒之后是會(huì)產(chǎn)生中斷并且有對(duì)應(yīng)的中斷狀態(tài)位,中斷是不可屏蔽的(即有中斷狀態(tài)就一
定有中斷)。另外,由 SLEEP_GOON_EN(SYS_CON0[30])決定用端口喚醒時(shí)是產(chǎn)生系統(tǒng)復(fù)位還是繼續(xù)運(yùn)行。
IO喚醒初始化步驟:配置 IO模式->配置喚醒邊沿->清除喚醒標(biāo)志位->中斷初始化使能(根據(jù)需要)
->使能喚醒位->清除喚醒標(biāo)志位->配置 LP_CON進(jìn)入低功耗模式。后續(xù)只需要在進(jìn)入低功耗模式之前,切換 IO模式->清除喚醒標(biāo)志位->進(jìn)入低功耗模式。
注意:如果選擇了上升沿/下降沿喚醒,而此時(shí) IO為高電平/低電平,則喚醒標(biāo)志位馬上會(huì)置 1。使能后 IO保持為高電平/低電平不會(huì)重復(fù)觸發(fā),喚醒標(biāo)志位保持為 1,上升沿/下降沿才會(huì)觸發(fā)。只要喚醒標(biāo)志位為 1,則無法進(jìn)入低功耗模式。對(duì)于喚醒 IO的電平翻轉(zhuǎn)時(shí)間無法確定的應(yīng)用場(chǎng)景,如果在主程序中使能 wkup_en/int_en,在喚醒中斷函數(shù)中關(guān)閉 wkup_en/int_en,會(huì)存在以下風(fēng)險(xiǎn):使能 wkup_en/int_en時(shí)馬上觸發(fā) wkup_pend導(dǎo)致進(jìn)入中斷,然后在中斷中關(guān)閉 wkup_en/int_en,退出中斷后進(jìn)入低功耗模式,導(dǎo)致無法喚醒/喚醒后不進(jìn)入喚醒中斷。因此喚醒中斷要慎重使用。
? 內(nèi)部源喚醒
支持看門狗喚醒,TIMER4中斷喚醒,LVD喚醒,觸摸按鍵喚醒,flash_wkup(STOP模式下prog_ram_done),LVDVCC_WKUP。
審核編輯:湯梓紅
-
微控制器
+關(guān)注
關(guān)注
48文章
7680瀏覽量
152350 -
mcu
+關(guān)注
關(guān)注
146文章
17397瀏覽量
353226 -
低功耗
+關(guān)注
關(guān)注
10文章
2427瀏覽量
103954 -
華大電子
+關(guān)注
關(guān)注
0文章
35瀏覽量
11898
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
GD32F10x MCU規(guī)格書
愛普特微電子推出超高性價(jià)比全國(guó)產(chǎn)RISC核32位MCU—APT32F004X

AN030 GD32F47x&F42x與GD32F45x&F40x系列間的差異

從MSP430F12x(2)遷移到MSP430F21x2 MCU

【GD32 MCU 移植教程】9、從 STM32F10x 系列移植到 GD32F30x 系列

【GD32 MCU 移植教程】6、從GD32F1x0和GD32F3x0移植到GD32E230

MSP430F677x1、MSP430F676x1、MSP430F674x1多相位計(jì)量SoC數(shù)據(jù)表

CC430F614x、CC430F514x、CC430F512x MSP430? SoC數(shù)據(jù)表

MSP430F471x3,MSP430F471x6, MSP430F471x7混合信號(hào)微控制器數(shù)據(jù)表

MSP430F20x1,MSP430F20x2,MSP430F20x3混合信號(hào)微控制器數(shù)據(jù)表

CS32F03X低功耗Deepsleep應(yīng)用配置
GD32F10x系列MCU用戶手冊(cè)

評(píng)論