目录
前言
工程环境:MS51单片机、C语言编写、新唐ICP工具下载
一、配置流程
首先打开MS51单片机数据手册找到看门狗章节。即可看到配置看门狗的寄存器。
配置看门狗比较简单,寄存器只有这一个,解释如下。

要使能看门狗需要将WDTR置1,清除WDTF标志,清除WDTRF标志。这样即可简单使用看门狗。如果需要在低功耗的场景下使用看门狗,需要将WIDPD置1。如果需要对看门狗复位时间进行配置可以调整时钟分频。MS51的分频配置如下。

本例中将溢出时间设置为1.638S,即WDPS全置1。需要注意看门狗寄存器受TA保护,编辑前需要关闭TA保护。

二、代码编写
了解寄存器后就开启代码编写,初始化代码如下。
cpp
void iwdg_init(void)
{
//1.6S溢出 开启看门狗,低功耗模式运行
EA = 0;
TA=0xAA;TA=0x55;WDCON = 0x97;
EA = 1;
}
然后在主循环中保证在溢出时间内定期喂狗即可。
cpp
void iwdg_feed(void)
{
//清零看门狗计数器
EA=0;
TA=0xAA;TA=0x55;WDCON|=0x40;
EA=1;
}
while(1)
{
//...
iwdg_feed();
}
三、下载配置
编写好代码后发现看门狗没有在运行是怎么回事呢?查看用户手册可以看到这一段。

看门狗还有一个配置四选项,需要使能WDTEN才能使用看门狗,但是在代码中是无法访问这个寄存器的,这时候就需要下载新唐科技的ICP工具了。访问这个网站:
然后找到 ICP Programming Tool 下载

下载完成后将下载器连接芯片,选择你的芯片型号或者自动检测。

连上芯片后设定配置位。

选择开启看门狗,在空闲状态下持续工作,然后就能看到下面的配置值4变成了想要的选项。

最后勾选配置区然后将代码下进单片机中即可正常运行看门狗
