我用的是Mini的,当我把“EXTI_ClearITPendingBit(EXTI_Line15);”和“EXTI_ClearITPendingBit(EXTI_Line13);”放在if和else if的括号里边的时候,当按键是不能准确的实现原子教程里的控制led状态反复,有时候能灭,有时候不能灭,应该是频率很快的闪,为啥呢?
void EXTI15_10_IRQHandler()
{
delay_ms(10);
if(key1==0)
{
LED0=!LED0;
}
else if(key0==0)
{
LED1=!LED1;
}
EXTI_ClearITPendingBit(EXTI_Line15);
EXTI_ClearITPendingBit(EXTI_Line13);
}
/////////一下是我的错误的//////////////////
void EXTI15_10_IRQHandler()
{
delay_ms(10);
if(key1==0)
{
LED0=!LED0;
EXTI_ClearITPendingBit(EXTI_Line15);
}
else if(key0==0)
{
LED1=!LED1;
EXTI_ClearITPendingBit(EXTI_Line13);
}
}
|