【WCH蓝牙系列芯片】-基于CH32V208开发板—独立看门狗

发布时间 2023-12-21 14:23:23作者: 凡仕

-------------------------------------------------------------------------------------------------------------------------------------

在芯片中,看门狗主要是用来监测单片机运行状态和解决程序引起的故障的模块,包括独立看门狗和窗口看门狗。
独立看门狗比较简单,当然它的安全性没有比窗口看门狗高。
独立看门狗:
因为当芯片工作时会受到外界的干扰,可能造成程序进入死循环或者程序跑飞,程序的正常运行被打断,使得整个系统进入死机状态。
因此“看门狗”这个东西,用来检测逻辑错误和外部环境干扰引起的软件故障,就可以让芯片在意外状况下(比如软件陷入死循环),重新恢复到系统上电状态,以保证系统出问题的时候重启一次。
窗口看门狗:
用于监测单片机程序运行时效是否精准,主要检测软件异常。

这里,我们主要依托CH32V208芯片针对独立看门狗进行一个简单测试说明。
1、看门狗就是一个12 位自减型计数器,当计数器的值从某个值一直减到 0 的时候,系统就会产生一个复位信号,让程序重新启动运行。
2、在看门狗使用过程中,有“喂狗”的操作——就是如果当计数没有到0之前,就重新设置计数器值,这样就不会产生复位信号。
看门狗的看门原理:
这样隔一段时间喂一次狗,只要程序正常运行,计数值就不能自减到0,一旦出现死循环之类的故障,没有及时重新设置计数器值,就会导致一直减到0的时候,系统就会产生一个复位信号,即 IWDG_RESET ,芯片收到复位信号,系统复位重新运行。