如题,要设计一个电路,按一个按键超过3秒进入停止模式,按1秒左右唤醒。
这是我中断服务程序,实验了,可以进入停止模式,但不能唤醒,为什么?
void EXTI0_IRQHandler(void)
{
u16 ict=0;
if(EXTI_GetITStatus(EXTI_Line0) != RESET)
{
ict=Check_Button(); //获取按键时间
if(ict <30) //小于3秒时唤醒
{
SystemInit ();
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB,ENABLE);
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC,ENABLE);
}
else //大于于3秒时进入停止模式
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
  WR_EnterSTOPMode(PWR_Regulator_LowPower,PWR_STOPEntry_WFI);
while(1);
}
}
EXTI_ClearITPendingBit(EXTI_Line0);
} |