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

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

相关推荐
Zwawa2 小时前
用两个按键做一个OLED菜单:先把选择和执行分开
c语言·单片机·嵌入式
Dev_XH4 小时前
【成品设计】基于CH32H417的CH32H417AIOT家庭微电网
单片机·嵌入式硬件·物联网·ai
国科安芯5 小时前
人在回路中的总线:商业空间站环境控制与生命保障系统CANFD网络的可靠性与功能安全
网络·嵌入式硬件·安全·架构·php·抗辐射
心仪久了会沦陷6 小时前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
国科安芯6 小时前
算力上天之后的电与静:星上边缘计算载荷带外管理网络的低功耗调度与辐射容错
网络·人工智能·嵌入式硬件·安全·边缘计算·低轨卫星·商业航天
t13970189 小时前
MPPT 和 PWM 有什么区别?小功率太阳能供电到底该选哪个
嵌入式硬件·物联网
Severus_black9 小时前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list
en.en..10 小时前
STM32入门最佳学习顺序(寄存器→标准库→HAL库)
单片机·嵌入式硬件
Good白101911 小时前
嵌入式:1.嵌入式入门|初识嵌入式、处理器、ARM与STM32
arm开发·stm32·嵌入式硬件
二本咕咕-机械转码11 小时前
FreeRTOS深入解析(八)IPC机制之FromISR详解
数据结构·单片机·链表