1、待機喚醒 = 芯片復位
待機模式和斷電關機非常像,從待機模式喚醒相當於執行了一次復位操作,程序會從最開始的0地址讀取堆棧指針,然後從4地址跳轉到Reset_Handler執行。從待機模式的喚醒操作就可以看出來,睡眠模式停止模式都是依靠普通的中斷喚醒,而待機模式則是依靠看門狗復位,NRST管腳復位等復位電路喚醒。
2、待機模式和外部電池(VBAT)沒有任何關係
待機模式下,VDD還是3.3V電壓,並不會變成0,也就不會產生下電覆位,所以備份電路仍由VDD供電,而不是由VBAT供電。VBAT只有在關機時(下電覆位後)才會給備份電路供電。
3、待機模式下:高速時鐘停止工作,低速時鐘正常工作。
HSE和HSI停止工作。LSE和LSI正常工作。內部RTC正常工作。IWDG正常工作。
4、待機喚醒分為自主喚醒和外界喚醒兩種類型。
IWDG復位喚醒,RTC鬧鐘報警是自主喚醒,不需要外部電路即可實現。
WKUP管腳上升沿,NRST管腳上升沿是外界喚醒,必須要外部電路或者人工干預才能實現。
5、短時間待機(30秒以內)自主喚醒可使用IWDG實現,長時間待機的自主喚醒必須使用RTC實現。
不同系列芯片,IWDG的最長週期不同,但都在30秒左右。
6、RTC鬧鐘喚醒可以用內部LSI或者外部LSE時鐘。
外部時鐘由晶振產生,特點是精度高,功耗小,額外成本。內部時鐘由RC震盪電路產生,特點是精度差,功耗高,零成本。RTC+LSI喚醒,如果需要時間精度較高,則需要對LSI進行校時。
閱讀更多 數學之聲 的文章