STM32(二十一):看门狗

WDG(Watchdog)看门狗,手动重装寄存器的操作就是喂狗。

看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,保证系统的可靠性和安全性。

看门狗本质上是一个定时器,当指定时间范围内,程序没有执行喂狗(重置计数器)操作时,看门狗硬件电路就自动产生复位信号。

STM32内置两个看门狗:

独立看门狗(IWDG):独立工作,对时间精度要求较低。

窗口看门狗(WWDG):要求看门狗在精确计时窗口起作用。I

独立看门狗

IWDG键寄存器

键寄存器本质上是控制寄存器,用于控制硬件电路的工作。

在可能存在干扰的情况下,一般通过在整个键寄存器写入特定值来代替控制寄存器写入一位的功能,以降低硬件电路受到干扰的概率。

IWDG超时时间

窗口看门狗

PCLK1默认是36MHZ的时钟。只有T0-T5为有效的计数值,T6为溢出位。当计数器溢出时候,T6=0,由于输入取反,输入为1,或门有效,输出1,产生复位信号。

WDGA,窗口看门狗激活位。

与门一般是一个控制信号,一个输入,一个输出; 控制信号为1,输出等于输入,控制信号为0,输出为0 输出与输入无关。

WWDG工作特性

递减计数器T[6:0]的值小于0x40时,WWDG产生复位

递减计数器T[6:0]在窗口W[6:0]外被重新装载时,WWDG产生复位

递减计数器T[6:0]等于0x40时可以产生早期唤醒中断(EWI),用于重装载计数器以避免WWDG复位

定期写入WWDG_CR寄存器(喂狗)以避免WWDG复位

WWDG超时时间

4096是因为 PCLK1进来以后,会执行一个4096分频,但是框图没有画出来。

对比

相关推荐
早日退休!!!19 小时前
ARM Cortex-M核 【保存上下文&恢复上下文】
arm开发·单片机·嵌入式硬件
来自晴朗的明天19 小时前
差分控多少Ω阻抗
单片机·嵌入式硬件·硬件工程
SystickInt20 小时前
mosbus复习总结(20260110)
stm32
点灯小铭21 小时前
基于单片机的多功能智能婴儿车设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
π同学1 天前
基于RT-Thread的STM32开发第十一讲——编码器模式
stm32·rt_thread·双相编码器
码农小韩1 天前
基于Linux的C++学习——动态数组容器vector
linux·c语言·开发语言·数据结构·c++·单片机·学习
匠在江湖1 天前
裸机单片机任务调度器实现:基于规范分层(COM/APP/SRV/DRV)架构,(附 任务调度器 / 微秒延时函数 / 串口重定向 源码)
单片机·嵌入式硬件·架构
点灯小铭1 天前
基于单片机的智能洗碗机控制系统设计
单片机·嵌入式硬件·毕业设计·课程设计
清风6666661 天前
基于单片机的电加热炉智能温度与液位PID控制系统设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计·期末大作业
一路往蓝-Anbo1 天前
第五篇:硬件接口的生死劫 —— GPIO 唤醒与测量陷阱
c语言·驱动开发·stm32·单片机·嵌入式硬件