标题: 关于单片机串口通信执行中断服务函数时又触发中断的问题 [打印本页]

作者: 水月sy    时间: 2020-11-4 23:44
标题: 关于单片机串口通信执行中断服务函数时又触发中断的问题
单片机串口通信时,触发中断进入中断服务函数,中断服务函数里清除中断标志;中断服务函数没有执行完时,又触发中断,程序是怎么走的,是中断当前中断服务函数进入新的中断服务函数,待新的中断服务函数执行完再接着执行第一个中断服务函数吗(递归),还是其他情况?
作者: wulin    时间: 2020-11-5 06:27
当中断服务程序执行中发生新的中断请求,cpu按其优先等级排序判断暂停当前任务执行新的中断还是继续当前任务,完后执行新的中断。
作者: 水月sy    时间: 2020-11-5 09:42
wulin 发表于 2020-11-5 06:27
当中断服务程序执行中发生新的中断请求,cpu按其优先等级排序判断暂停当前任务执行新的中断还是继续当前任 ...

刚刚查了一下,相同优先级是要等中断服务程序执行完后,再执行新的中断服务程序,懂了,谢谢
作者: 艾尔之光tt    时间: 2021-12-16 22:31
wulin 发表于 2020-11-5 06:27
当中断服务程序执行中发生新的中断请求,cpu按其优先等级排序判断暂停当前任务执行新的中断还是继续当前任 ...

你好,我想问一下,假如int0下降沿中断第一次被触发,执行中断服务中还没执行完,int0又来一次下降沿,这个中断服务会不会被打断从头开始,还是等第一次中断服务完成再进入第二次中断服务,还是说不理第二次中断呢?
作者: bhjyqjs    时间: 2022-1-5 08:55
同一个中断,第一次没执行完,是不会执行第二次中断的。
而且也根本不会触发第二次中断。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1