高的中断优先级打断delayms函数,比如打断了500ms的延时函数(时钟计时到在300ms时),中断服务函数结束后。。。

2019-10-15 05:04发布

本帖最后由 lhshengshi 于 2016-10-13 21:37 编辑

高的中断优先级打断delayms函数,比如打断了500ms的延时函数(时钟计时到300ms时进入中断服务函数),中断服务函数结束后,是在300ms继续计时,还是从0ms从新开始计时?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-10-15 10:08
 精彩回答 2  元偷偷看……
lhshengshi
2楼-- · 2019-10-15 14:05
正点原子 发表于 2016-10-13 21:36
重新开始新一次计时。也就是在中断里面调用delay以后,main函数的delay将会直接结束,开始下一个轮回

谢谢原子哥
lhshengshi
3楼-- · 2019-10-15 15:07
正点原子 发表于 2016-10-13 21:36
重新开始新一次计时。也就是在中断里面调用delay以后,main函数的delay将会直接结束,开始下一个轮回

没看太明白 ,我重新表述一下我的意思,就是main里有一个delay500ms时间语句,delay跑到一半(250ms)的时候,被外部中断打断了,中断服务函数执行完之后,回到main函数里,从delay继续执行,是重新计数500ms还是走完剩下的250ms?如果外部中断服务函数里也调用了delay,main里面的delay会怎么继续执行呢?
符拉迪沃斯托克
4楼-- · 2019-10-15 16:02
lhshengshi 发表于 2016-10-16 20:45
没看太明白 ,我重新表述一下我的意思,就是main里有一个delay500ms时间语句,delay跑到一半(250ms)的 ...

同问,这是个比较棘手的问题

一周热门 更多>