GD32F130深度睡眠,RTC定时唤醒起来喂狗失败,看门狗会复位,有人遇到过吗?RTC定时唤醒没有问题,能看到电流变化,唤醒检测中断也正常,就是喂不了狗,用的独立看门狗。
代码片段如下:
do
{
u32 i;
WDR();
rtc_flag_clear(RTC_FLAG_ALARM0);
exti_flag_clear(EXTI_17);
if(!nRFStandby)
{
nRFStandby = TRUE;
rtc_setup(1); //活跃停机,监听30ms
}
else
{
nRFStandby = FALSE;
rtc_setup(30); //活跃停机,900ms起来一次
}
if(SPI_RF_IRQ())
{
WDR();
pmu_to_deepsleepmode(PMU_LDO_NORMAL,WFE_CMD);
}
for(i=0;i<65500;i++) ;
WDR();
if(!SPI_RF_IRQ() ||(RESET != exti_interrupt_flag_get(EXTI_7)))
{
break;
}
exti_interrupt_flag_clear(EXTI_7);
} while(1);
void WDR(void)
{
fwdgt_counter_reload();
}
void fwdgt_counter_reload(void)
{
FWDGT_CTL = FWDGT_KEY_RELOAD;
}
|