if(events & HAL_SLEEP_EVENT) { PRINT("flag_sleep:%d\n",flag_sleep); if(flag_sleep) { GPIOB_SetBits(GPIO_Pin_10);//关闭指示灯 flag_sleep = 0; status = 0;//将状态设置为休眠中 PRINT("sleep\n"); DelayMs(1); LowPower_Sleep(RB_PWR_RAM14K|RB_PWR_RAM2K);//休眠 阻塞在此处 SetSysClock( CLK_SOURCE_HSI_32MHz ); HSECFG_Current( HSE_RCur_100 ); // 降为额定电流(低功耗函数中提升了HSE偏置电流) } tmos_start_task( halTaskID , HAL_SLEEP_EVENT ,MS1_TO_SYSTEM_TIME(50)); return events ^ HAL_SLEEP_EVENT; }
大家好!我设置的是仅GPIO中断唤醒睡眠,但我发现唤醒后(已将flag_sleep置为0),上述事件没有循环执行,请问这是什么原因?