看门狗
说明
- 看门狗用于在程序跑飞, 死锁或长时间阻塞时, 自动拉起系统复位.
- 在嵌入式系统中, 常见有独立看门狗和窗口看门狗两类.
窗口看门狗

使能后, 常见会在以下两种情况下触发 RESET:
- 在计数寄存器值仍大于窗口值时, 过早重写计数寄存器.
- 计数器递减到下限以下, 发生超时.
使用建议
- 喂狗动作应放在“主流程正常完成”的检查点, 不要随便在任意中断里无条件喂狗.
- 对有 RTOS 的系统, 可把关键任务健康状态汇总后再统一喂狗.
- 初始化阶段, 长耗时 Flash 擦写或升级流程中, 要提前考虑喂狗窗口.
- 如果系统支持, 复位后要记录复位原因, 方便排查异常来源.
调试建议
- 先确认超时周期是否覆盖最慢正常路径.
- 故意制造阻塞, 死循环或任务卡死, 验证看门狗是否按预期复位.
- 对窗口看门狗, 还要验证“喂得太早”是否同样能触发保护.