单片机死机后怎样运行?

2020-02-07 09:40发布

忽然想到一个问题,单片机死机后怎样运行?指令的执行还是规规矩矩的执行么?

进来发现一种死机现象:单片机一直在中断里打转,不能出中断后进入main(),调试中发现,程序运行到中断服务的最后一句时,不是回到主循环,而是过一段时间,等到定时中断置位时,
再次进入中断执行!


我猜测:死机时,部分外设还可以正常运行,中断机制也还是正常,出栈机制可能已经失灵!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
16条回答
laoshanlaodao
2020-02-07 21:19
用调试器真切的看到过一次,现象是这样的:
1、程序只在有中断时(如定时1ms中断),进入中断服务中,但不能进入主循环,所以看起来各个任务不能执行了,表面上看是死机。
2、不能从中断返回主循环,中断退出机制失灵。

看门狗是该用的,但在干扰很严重的场合,一般调试到不死机了,为更安全起见,再加上看门狗。

一周热门 更多>