有大神能解释一下,下面三个现象为啥会是这样啊?
一.板子为F407ZGT6,使用正点原子的窗口看门狗标准例程,能看到现象:
可以看到红灯亮一下之后熄灭,紧接着绿灯开始不停的闪烁,表明正常进入中断。
二.修改中断服务函数如下:
void WWDG_IRQHandler(void)
{
WWDG_SetCounter(WWDG_CNT);
WWDG_ClearFlag ();
//LED1=!LED1;
}
会看到现象:可以看到红灯不断闪烁,闪烁间隔是main.c里面的设置的delay_ms,也即没有进入中断。
这个很奇怪啊,注释掉//LED1=!LED1,现象不应该是:看到红灯亮一下之后熄灭,之后所有灯都是灭的。
三.修改中断服务函数如下:
void WWDG_IRQHandler(void)
{
WWDG_ClearFlag ();
WWDG_SetCounter(WWDG_CNT);
//LED1=!LED1;
}
现象为:看到红灯亮一下之后熄灭,之后所有灯都是灭的,又能正常进入中断。
|