初级会员

- 积分
- 196
- 金钱
- 196
- 注册时间
- 2016-9-5
- 在线时间
- 49 小时
|
1金钱
先进入休眠,然后10秒唤醒
RTC_Set_WakeUp(0,10);
HAL_PWR_EnterSTANDBYMode();
void RTC_Set_WakeUp(u32 wksel,u16 cnt)
{
__HAL_RTC_WAKEUPTIMER_CLEAR_FLAG(&RTC_Handler, RTC_FLAG_WUTF);//Çå3yRTC WAKE UPμıêÖ¾
HAL_RTCEx_SetWakeUpTimer_IT(&RTC_Handler,cnt,RTC_WAKEUPCLOCK_CK_SPRE_16BITS); //éèÖÃÖØ×°ÔØÖμoíê±Öó
HAL_NVIC_SetPriority(RTC_WKUP_IRQn,0x02,0x00); //ÇàÕ¼óÅÏè¼¶1,×óóÅÏè¼¶2
HAL_NVIC_EnableIRQ(RTC_WKUP_IRQn);
}
u8 RTC_Init(void)
{
RTC_Handler.Instance=RTC;
RTC_Handler.Init.HourFormat=RTC_HOURFORMAT_24;//RTCéèÖÃÎa24D¡ê±¸ñê½
RTC_Handler.Init.AsynchPrediv=0X7F; //RTCòì2½·ÖÆμÏμêy(1~0X7F)
RTC_Handler.Init.SynchPrediv=0XFF; //RTCí¬2½·ÖÆμÏμêy(0~7FFF)
RTC_Handler.Init.OutPut=RTC_OUTPUT_DISABLE;
RTC_Handler.Init.OutPutPolarity=RTC_OUTPUT_POLARITY_HIGH;
RTC_Handler.Init.OutPutType=RTC_OUTPUT_TYPE_OPENDRAIN;
if(HAL_RTC_Init(&RTC_Handler)!=HAL_OK) return 2;
return 0;
}
|
|