新唐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变成了想要的选项。

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

相关推荐
一念&20 小时前
每日一个C语言知识:C 数据类型
c语言·开发语言
小秋学嵌入式-不读研版21 小时前
C49-函数指针(通过指针调用函数)
c语言·笔记
张人玉1 天前
C# TCP 服务端开发笔记(TcpListener/TcpClient)
stm32·单片机·嵌入式硬件
明天会有多晴朗1 天前
C语言入门教程(第1讲):最通俗的C语言常见概念详解与实战讲解
c语言·开发语言·c++
就叫飞六吧1 天前
基于汇编实现led点灯-51单片机-stc89c52rc
嵌入式硬件·学习
迎風吹頭髮1 天前
UNIX下C语言编程与实践40-UNIX 全局跳转:setjmp 与 longjmp 函数的使用与注意事项
java·c语言·unix
宁静致远20211 天前
仿照STM32 HAL库设计思想使用FreeRTOS实现异步非阻塞式设备驱动
stm32·嵌入式硬件
山,离天三尺三1 天前
基于LINUX平台使用C语言实现MQTT协议连接华为云平台(IOT)(网络编程)
linux·c语言·开发语言·网络·物联网·算法·华为云
小年糕是糕手1 天前
【数据结构】算法复杂度
c语言·开发语言·数据结构·学习·算法·leetcode·排序算法
明天会有多晴朗1 天前
深度剖析 C++ 之内存管理篇
c语言·开发语言·c++