avr单片机 INT0中断相应后还没有退出中断程序呢,可中断又再次响应了,怎么回事?
在我记忆中,在中断程序中不是不能再次响应中断的吗?只有退出中断程序后才能响应的吗?不是优先级的问题,同一中断,就是在处理外中断0时(还在中断程序中),外中断0又响应了,中...
在我记忆中,在中断程序中不是不能再次响应中断的吗?只有退出中断程序后才能响应的吗?
不是优先级的问题,同一中断,就是在处理外中断0时(还在中断程序中),外中断0又响应了,中断程序执行一半又从头执行,观察示波器确实有第二次中断。
总结我想问的问题就是在中断处理程序中,会再次响应中断吗?(同一中断源) 展开
不是优先级的问题,同一中断,就是在处理外中断0时(还在中断程序中),外中断0又响应了,中断程序执行一半又从头执行,观察示波器确实有第二次中断。
总结我想问的问题就是在中断处理程序中,会再次响应中断吗?(同一中断源) 展开
展开全部
在中断INT0的程序里,再次写入sei();会导致中断嵌套;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1\没有清楚中断标志,进入中断后,首先清除中断标志;
2\又产生了一次新的中断.
正常情况下会产生中断,但是不会嵌套进去,也就无法响应,因为优先级相等.
但是如果非正常情况,比如单片机有缺陷.
2\又产生了一次新的中断.
正常情况下会产生中断,但是不会嵌套进去,也就无法响应,因为优先级相等.
但是如果非正常情况,比如单片机有缺陷.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我做过不少外部0中断的程序,进入中断先关闭中断。所以,建议你进入中断后,务必先关闭外部0中断,不让单片机再产生新的中断,中断程序最后再打开外部0中断。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先声明一下,我并不用avr单片机,但是我想单片机应该也是大同小异吧
中断嵌套不知道你考虑了没有,中断嵌套是不论你后面的优先级怎么样,都会优先处理后来的中断,如果你的程序里面打开了全局中断,并且先清除了中断标志位,那么就有可能存在这种情况,你不妨在跳出中断后在清除中断标志位 ,或者在中断里关闭全局中断。
中断嵌套不知道你考虑了没有,中断嵌套是不论你后面的优先级怎么样,都会优先处理后来的中断,如果你的程序里面打开了全局中断,并且先清除了中断标志位,那么就有可能存在这种情况,你不妨在跳出中断后在清除中断标志位 ,或者在中断里关闭全局中断。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询