论坛

BL2100看门狗定时器,控制吗?

开始于 "dav ... @ epsiloncompany.com [rabbit-semi]" 2016年3月31日
组,

在BL2100(Smartcat)上运行一个非常复杂的程序。我知道虚拟 驱动程序具有hitwd()函数,但在某些情况下 系统将锁定,并且看门狗定时器不会产生复位。

任何以手动方式控制它的方法,等等,所以我有一个更好的主意是看门狗 is doing.

预先感谢,大卫
大卫,您好

以下内容基于我(有限)的看门狗经验。

看门狗本身并不能保护您免受程序输入错误的影响 州。例如在像这样的程序中:

而(1)
{
ate强{
run_prog();
}
ate强{
hitWd(1);
}
}

看门狗可以保护您免受程序的攻击,该程序运行不当并被卡在 紧密循环。它不能保护您免受run_prog陷入困境的困扰 状态和董事会变得反应迟钝。例如,如果rung_prog包含 something like:

等待(never_happens());

Wathdog将永远不会触发重置。

我至少会以相同的代价检查一些软件重置按钮 当看门狗撞到。允许用户出路(除旧电源外) cycling).

这可能是Rabbit复用硬件看门狗和 创建了许多软件。我的建议是放置一个这样的虚拟 看门狗在您认为关键的任何循环中。

Mircea