PowerMode - 深度睡眠模式
材料準備
- AmebaPro2 [ AMB82 MINI ] x 1
- Optional: Push button x 1
- Optional: Register 220 ohms x 1
範例說明
介紹
在此範例中,develoPM_deepsleepent 開發板將示範深度睡眠模式以節省電量。 有 3 個喚醒源。 系統將倒數計時 5 秒,然後進入深度睡眠電源模式。 執行完喚醒源後,系統將重啟。
喚醒源 | DeveloPM_deepsleepent 開發板耗電量測量值 (mA) | |
---|---|---|
一般模式 | 深度睡眠模式 | |
AON timer | 53.01 | 4.59 |
AON GPIO | 52.97 | 4.74 |
RTC | 53.05 | 4.65 |
流程
在“File”->“Examples”->“AmebaPowerMode”->“DeepSleePM_deepsleepode”中打開人臉檢測範例。
接下來是設置系統並進入電源模式。 請參考以下步驟進入深度睡眠模式。
步驟 1. 設置“WAKEUP_SOURCE”,AON定時器:0; AON GPIO: 1; RTC:2。
步驟 2. 設置喚醒源。 有 3 個喚醒源,每個都有自己的設置。
對於 AON 計時器,在“#if (WAKEUP_SOURCE == 0)”部分,設置“CLOCK”和“SLEEP_DURATION”。 “CLOCK”可以是 4MHz 或 100kHz。 “SLEEP_DURATION”單位是秒。
對於 AON GPIO,在“#elif (WAKEUP_SOURCE == 1)”部分,設置“WAKUPE_SETTING”。 本範例中的“WAKUPE_SETTING”是Pin,可以是21或22。GPIO引腳設置為高準位觸發,請參考以下連接。
對於 RTC,在“#elif (WAKEUP_SOURCE == 2)”部分,設置“ALARM_DAY”、“ALARM_HOUR”、“ALARM_MIN”或“ALARM_SEC”。 所有數值都設置了 RTC 喚醒的持續時間。 範圍是“1day, 0h, 0m, 0s”到“365day, 23h, 59min, 59s”。
步驟 3. 啟動深度睡眠模式。 此步驟只有 1 個可選設置。 當喚醒源設置為 RTC 時,使用“PowerMode.start(1970, 1, 1, 0, 0, 0);” 來替換“PowerMode.start();”。 (默認為 1970.1.1 00:00:00)。
所有定時器將在持續時間結束時自動喚醒,所有 GPIO 引腳必須按下按鈕來高準位觸發。
正確的開機、進入深度睡眠、重啟週期如下圖。
Code Reference
其他問題請參考Ameba FAQ: https ://forum.amebaiot.com/t/ameba-faq/1220。