如何判断看门狗喂狗位置

2019-03-24 09:34发布

如何在主程序中确定看门狗喂狗程序的位置呢,程序中包含485,232,nrf905
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
flying~
1楼-- · 2019-03-24 17:28
 精彩回答 2  元偷偷看……
hbwangliang
2楼-- · 2019-03-24 19:05
< :TI_MSP430_内容页_SA7 --> ....在主程序中确定看门狗喂狗程序的位置啊,至于这个的话,我还木有深入去研究下.0.........
armcu
3楼-- · 2019-03-24 23:38
估算程序运行时间,然后根据看门狗设置的超时时间喂狗
zzbaizhi
4楼-- · 2019-03-25 02:16
 精彩回答 2  元偷偷看……
armcu
5楼-- · 2019-03-25 03:53
zzbaizhi 发表于 2014-8-11 10:18
如何正确估算呢,我现在只想到用定时器去计时,还有别的方法吗

使用定时器属于比较精确的估算了。如果不想用定时器,就自己根据程序的执行周期和特性进行估算。
qiushenghua
6楼-- · 2019-03-25 04:43
还可以这样:
不写喂狗代码,进入Debug,然后按F5单步调试,或者设置断点运行,当看门狗超时,系统会自动reset,这个过程是可以观察到的,从而判断在何处喂狗。
实际程序执行的时候,由于中断服务的随机性,代码执行的时间是不一样的。从而看门狗复位前程序指针的位置也是不一样的。一般情况下,看门狗超时时间需要超过主循环的一个最长周期,这样在主循环的任意位置喂狗都不会造成系统复位。同时还要注意主循环里尽量不要再使用while之类的阻塞性语句,不然看门狗可能会因为程序阻塞在这样的语句里来不及喂狗而触发复位中断。

一周热门 更多>

相关问题

    相关文章