-
就是这样
void EXTI9_5_IRQHandler(void)
{
EXTI_ClearITPendingBit(EXTI_Line5);
GPIO_SetBits(GPIOC,GPIO_Pin_9); //点亮LED
Delay(50);
GPIO_ResetBits(GPIOC,GPIO_Pin_9);
}
就是这样就挂了;
LED亮了,但是后面的延时后的熄灭却没执行。
-
声明了 ,这个已经调通了,而且我知道这个编写的很烂;
但是我主要不明白的是:为什么中断里面加了延时不行了,就是这段 GPIO_SetBits(GPIOC,GPIO_Pin_8|GPIO_Pin_9);
delay_ms(100);
GPIO_ResetBits(GPIOC,GPIO_Pin_8|GPIO_Pin_9);
而我把他移到main中就可以了; 是不是在中断函数中都尽量不写延时函数啊? 但原因是为什么?
-
学习!
-
谢谢了 ! 说的很明白,我也弄懂了,十分感谢!
-
哦 刚才看错你的回答了,原来改不了啊,谢谢!
-
就是软件上 的分频最大才256 可不可以自己定义比256大的值 没有示波器 所以改大了分频值后我也不知道到底有没有效。