看门狗是开发健壮且故障安全的嵌入式系统的关键和重要组件。在许多情况下,嵌入式开发团队要么没有充分考虑他们的看门狗策略,要么禁用了他们的看门狗。为了提高系统的健壮性,并确保看门狗可以检测到系统故障,这里有十个简单的技巧,开发人员可以遵循来改进他们的看门狗设计。

l 启动时,确定系统启动的原因。启动是由于看门狗定时器复位吗?掉电检测?一个例外?用户交互或者其他未知原因?记录这些信息对于调试偶尔会以零星和不可预测的方式出现问题的系统至关重要。

l 选择微控制器时,请选择包含独立看门狗的微控制器。独立的看门狗拥有一个独立于系统时钟产生的时钟,如果系统时钟出现故障或锁定,它可以提高检测到故障的机会。

l 在初始化序列的早期启用看门狗定时器。看门狗被禁用的时间越长,当出现问题时,看门狗检测不到它的可能性就越大。

l 不要在中断服务程序中盲目地清除或抚摸看门狗! 创建一个监视其他软件任务的看门狗任务,并且可以在清除计时器之前确定系统运行状况和健康状况是否可接受。

l 对于连接到互联网或需要在无人干预的情况下自行运行的系统,嵌入式开发人员可以考虑添加一个外部看门狗,它可以定期复位微控制器,以清除可能发生的任何故障或错误。

l 使用外部智能看门狗或监控处理器来监控微控制器是否正常工作。

l 使用智能看门狗时,提供足够的智能,以便它可以监控外部通信通道,接收重启命令并发送基本确认。

l 尽可能使用窗口看门狗。窗口式看门狗将确保通过尝试持续清除看门狗而失败的系统将触发看门狗。如果系统因未在指定窗口内清除看门狗而失败,看门狗将重置系统。

l 在外部监控器上设置一个特定的周期,并从微控制器设置一个心跳,该心跳仅在处理器的健康状况可以接受时产生。

l 不要忘记,智能看门狗也是基于微控制器的系统,可能需要有自己的看门狗策略,例如启用内部看门狗定时器和添加外部哑看门狗定时器,以确保它们正确运行。

这些只是嵌入式开发人员可以遵循的几个简单步骤,以确保他们的看门狗正确执行。你能想到开发人员应该遵循的其他技巧吗?

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部