[应用相关] 喂狗怎么喂

[复制链接]
2332|12
 楼主| sourceInsight 发表于 2019-1-3 13:25 | 显示全部楼层 |阅读模式
WDTCTL = WDT_MDLY_32;                   // Set Watchdog Timer interval to ~30ms

IE1 |= WDTIE;                                     // Enable WDT interrupt


怎么用它呢,中断里写什么,可以保证程序不跑偏?
boy1990 发表于 2019-1-3 13:28 | 显示全部楼层

喂狗语句还是执行WDTCTL = WDT_MDLY_32
CallReceiver 发表于 2019-1-3 13:30 | 显示全部楼层

喂狗的时间是根据系统本身的情况制定的
mmuuss586 发表于 2019-1-3 13:31 | 显示全部楼层
库函数不是有参考吗
hfdy01 发表于 2019-1-3 13:32 | 显示全部楼层
一般要在主循环处喂狗,
另外在程序某些地方,如果执行某些任务的时间超过看门狗的时间,那么也需要喂狗。
xia00 发表于 2019-1-3 13:33 | 显示全部楼层
这里如果是一个循环,那么必须注意这里可能会形成一个死循环!
feiqi1 发表于 2019-1-3 13:35 | 显示全部楼层
把喂狗的语句放在小的循环体内时,要高度警惕这里会不会形成死循环。
androidbus 发表于 2019-1-3 13:39 | 显示全部楼层
看门狗不是为了防止程序跑偏的,而是为了在程序跑飞时,能有一个可靠的恢复机制
litengg 发表于 2019-1-3 13:41 | 显示全部楼层
主循环显然比中断更合适,因为在某些情况下,即使程序跑飞了,中断也有可能触发,那么在中断中喂狗就不能及时察觉到主程序跑飞
qiangweii 发表于 2019-1-3 13:43 | 显示全部楼层
要根据不同的应用来合理的安排才能获得最大的应用。照抄照搬就没有价值了。
shashaa 发表于 2019-1-3 13:44 | 显示全部楼层
LZ要喂狗的话一定得对程序的执行时间把握好。
wanglaojii 发表于 2019-1-3 13:46 | 显示全部楼层

防止程序跑飞而设置的看门狗,一般在主程序中设计
kingkits 发表于 2019-1-4 08:49 | 显示全部楼层
在带操作系统(比如ucOSII)的环境下,如果是简单的防止程序陷入死循环,可以考虑在idle进程喂狗,这样可以避免过多的开销
您需要登录后才可以回帖 登录 | 注册

本版积分规则

138

主题

1619

帖子

1

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