本帖最后由 c555 于 2013-9-18 10:23 编辑
是一个关于中断的问题。
首先,程序执行下面一个延时函数
a=5000;
while(a--){
........
}
在执行这个延时函数的时候,外部电平变化触发了中断(程序中设置的
是仅仅下降沿触发中断),进入中断程序,在中断程序中,我将a赋值为1,
目的是让这个延时尽快结束。
问题出来了。
问题是,我在中断中赋值的这个1有时不起作用,中断出来后,它继续
进行这个长延时。但在多数情况下是起作用的,外部有中断,延时就结束
这个问题郁闷了好久了,想不通是咋回事?
曾示波器测试过,确实进入中断了,也确实将a赋值为1了,但就是延时
不停止。 |