打印
[牛人杂谈]

单片机为何不能在中断中喂狗

[复制链接]
1172|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xinpian101|  楼主 | 2024-3-10 16:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机在中断服务程序中不能喂狗(也就是执行看门狗复位操作)的主要原因是中断服务程序的执行时间不确定。在中断服务程序执行期间,单片机的正常程序执行被中断,而中断服务程序可能会执行较长的时间,特别是如果其中包含了复杂的操作或需要等待外部事件的发生时。因此,在中断服务程序执行期间,如果喂狗,可能会导致看门狗定时器的超时被重置,而系统认为程序正常运行,而不会触发看门狗复位,这可能导致系统的稳定性和可靠性问题。
为了避免这种情况,一般的做法是在主程序中定期喂狗,确保主程序的正常运行。而在中断服务程序中,应该尽量保持执行时间短小和可预测,避免长时间占用CPU,以确保系统的稳定性和可靠性。

使用特权

评论回复
沙发
zhuomuniao110| | 2024-3-10 17:16 | 只看该作者
有人说程序跑飞了,中断也会在在正常执行。

使用特权

评论回复
板凳
micoccd| | 2024-3-11 13:09 | 只看该作者
程序跑飞时可能不会触发中断,就达不到复位的目的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

113

主题

1480

帖子

1

粉丝