[应用相关] 中断里写什么可以保证程序不跑偏

[复制链接]
1368|21
 楼主| zyf部长 发表于 2020-8-27 22:24 | 显示全部楼层 |阅读模式
WDTCTL = WDT_MDLY_32;                   // Set Watchdog Timer interval to ~30ms

IE1 |= WDTIE;                                     // Enable WDT interrupt
houcs 发表于 2020-8-27 22:29 | 显示全部楼层
怎么用它呢,中断里写什么,可以保证程序不跑偏?
xxmmi 发表于 2020-8-27 22:32 | 显示全部楼层
喂狗语句还是执行WDTCTL = WDT_MDLY_32
llia 发表于 2020-8-27 22:36 | 显示全部楼层
喂狗的时间是根据系统本身的情况制定的
huanghuac 发表于 2020-8-27 22:43 | 显示全部楼层
如果执行某些任务的时间超过看门狗的时间,那么也需要喂狗
xxrs 发表于 2020-8-27 22:47 | 显示全部楼层
这里如果是一个循环,那么必须注意这里可能会形成一个死循环!
juventus9554 发表于 2020-8-27 22:52 | 显示全部楼层
只要别在中断里喂狗就行。
dingy 发表于 2020-8-27 22:56 | 显示全部楼层
把喂狗的语句放在小的循环体内时,要高度警惕这里会不会形成死循环。
houcs 发表于 2020-8-27 23:02 | 显示全部楼层
随便找个喂狗的例子看看。
chenjunt 发表于 2020-8-27 23:08 | 显示全部楼层
看门狗不是为了防止程序跑偏的,而是为了在程序跑飞时,能有一个可靠的恢复机制
hanwe 发表于 2020-8-27 23:13 | 显示全部楼层
主循环显然比中断更合适,因为在某些情况下,即使程序跑飞了,中断也有可能触发
huwr 发表于 2020-8-27 23:16 | 显示全部楼层
总之,看门狗这是一个思路,要根据不同的应用来合理的安排才能获得最大的应用。
chenho 发表于 2020-8-27 23:19 | 显示全部楼层
一直没喂过狗,都是直接关狗。
juventus9554 发表于 2020-8-28 22:21 | 显示全部楼层

LZ要喂狗的话一定得对程序的执行时间把握好。
renyaq 发表于 2020-8-28 22:26 | 显示全部楼层
WATCHDOG的功能就是预防程序跑飞.
pangb 发表于 2020-8-28 22:30 | 显示全部楼层
防止程序跑飞而设置的看门狗,一般在主程序中设计
xxmmi 发表于 2020-8-28 22:33 | 显示全部楼层
主循环显然比中断更合适,因为在某些情况下,即使程序跑飞了,中断也有可能触发,那么在中断中喂狗就不能及时察觉到主程序跑飞。
yufe 发表于 2020-8-28 22:41 | 显示全部楼层
只要不在中断喂狗就行。一定要在主函数
huwr 发表于 2020-8-28 22:45 | 显示全部楼层
喂狗很复杂的 看你的具体要求了
chenho 发表于 2020-8-28 22:48 | 显示全部楼层
感觉  能不用看门狗 还是最好不用看门狗。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

694

主题

7102

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部