FSL的MCU 看门狗在应用中有什么特别需要注意的(已解决)

2020-02-21 20:52发布

本帖最后由 FSL_TICS_ZJJ 于 2014-9-11 14:33 编辑

家家的MCU片上都有看门狗,但在应用中,这个小东西常常是被弃用,FSL的看门狗有什么独特的地方,大家在应用中又是如合使用它的,可以分享下你的好ideal.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
73条回答
fengyunyu
1楼-- · 2020-02-28 03:06
 精彩回答 2  元偷偷看……
holts2
2楼-- · 2020-02-28 04:58
fengyunyu 发表于 2014-8-26 20:51
仔细看帖,都已经说的这么清楚了。1、看门狗喂狗间隔可以“加长”;2、避免ls几位提到的在某些运行时间长 ...

简单来说:

while 1
{
taska();
taskb();
taskc();
}

如果主循环中的三个任务运行时长不确定,以变量+中断喂狗的方式, 我的全局变量是放在A,B,C 三个任务中更新 ? 这个很难处理吧, 实际上我认为如果主循环时长超过 狗的时长,多处喂狗实际上是不可避免的了。

fengyunyu
3楼-- · 2020-02-28 09:33
holts2 发表于 2014-8-26 21:22
简单来说:

while 1

有os的情况看28楼。无os的话,则:

while(1)
{
      看门狗计数器清零

      task1

      task2

      ...
}

就此打住了。不清楚这位兄台是真没有看懂,还是...
holts2
4楼-- · 2020-02-28 12:11
fengyunyu 发表于 2014-8-26 21:29
有os的情况看28楼。无os的话,则:

while(1)

不好意思,我还真没看懂,你之前的贴子一直说的是中断喂狗, 但上面你复我的例子分明中在循环中喂狗麻,而且就我说的这个例子,主循环时长超过狗的时长,在这个主循环中必需多处喂狗,哪能这样简单的在任务前喂一次狗了事?
fengyunyu
5楼-- · 2020-02-28 12:11
holts2 发表于 2014-8-26 21:42
不好意思,我还真没看懂,你之前的贴子一直说的是中断喂狗, 但上面你复我的例子分明中在循环中喂狗麻, ...


timer_interupt()
{
       if 喂狗计数器大于预设值 不喂狗
       else 喂狗
}

main()
{
      ...

      while(1)
     {
           喂狗计数器清零

           task1

          task2

          ...
     }
}
sdlibin007
6楼-- · 2020-02-28 14:15
 精彩回答 2  元偷偷看……

一周热门 更多>