设置完RTC定时唤醒后,如果调用了HAL_PWR_DisableBkUpAccess();这个函数会导致RTC无法唤醒;
void rtc_wkup_set_time(uint16_t ms)
{
__HAL_RCC_PWR_CLK_ENABLE();
HAL_PWR_EnableBkUpAccess();//设置RTC唤醒前需要先执行备份区使能,并且保证备份区不会失能,否则低功耗后唤醒不了
HAL_RTCEx_DeactivateWakeUpTimer(&hrtc);//需要先清RTC定时器 add by zj@start 20200917
HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, ms, RTC_WAKEUPCLOCK_CK_SPRE_16BITS);//10s
__HAL_RTC_WAKEUPTIMER_EXTI_CLEAR_FLAG();
}