新唐51单片机看门狗配置流程

目录

前言

一、配置流程

二、代码编写

三、下载配置


前言

工程环境: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工具了。访问这个网站:

烧录工具 - Nuvoton

然后找到 ICP Programming Tool 下载

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

连上芯片后设定配置位。

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

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

相关推荐
菜还不练就废了1 小时前
7.25 C/C++蓝桥杯 |排序算法【下】
c语言·c++·排序算法
来点光吧2 小时前
STM32F1 Flash的操作
stm32·单片机·嵌入式硬件
程序员编程指南2 小时前
Qt 移动应用性能优化策略
c语言·开发语言·c++·qt·性能优化
Cyrus_柯3 小时前
硬件电路设计(基本元器件)
嵌入式硬件·元器件·电路基础
程序员编程指南4 小时前
Qt 移动应用常见问题与解决方案
c语言·开发语言·c++·qt
扣篮发型不乱4 小时前
STM32 按键输入检测 轮询和中断
stm32·单片机
四谎真好看5 小时前
第六章第一节 TIM 定时中断
stm32·单片机·嵌入式硬件·tim·江科大
扣篮发型不乱5 小时前
STM32 外部中断 和 定时器中断
stm32·单片机·嵌入式硬件
金色光环5 小时前
【STM32-HAL】 SPI通信与Flash数据写入实战
stm32·单片机·嵌入式硬件
实在太懒于是不想取名7 小时前
2025年电子设计大赛G题《电路模型探究装置》各小问数学推导及个人思路
单片机·电赛·电子设计