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分频,但是框图没有画出来。

对比

相关推荐
安科瑞刘鸿鹏20 分钟前
校园建筑用电安全监测装置 电气火灾监测预防设备功能介绍
运维·服务器·网络·嵌入式硬件·安全·能源
Wx120不知道取啥名21 分钟前
C语言之长整型有符号数与短整型有符号数转换
c语言·开发语言·单片机·mcu·算法·1024程序员节
Cici_ovo3 小时前
摄像头点击器常见问题——摄像头视窗打开慢
人工智能·单片机·嵌入式硬件·物联网·计算机视觉·硬件工程
无际单片机项目实战4 小时前
为什么STM32的HAL库那么难用,ST还是要硬推HAL库?
c语言·stm32·单片机·嵌入式硬件·物联网
正在努力的小立6 小时前
STM32 HAL 点灯
stm32·单片机·嵌入式硬件
TeYiToKu7 小时前
笔记整理—linux驱动开发部分(1)驱动梗概
linux·c语言·arm开发·驱动开发·嵌入式硬件
Whappy0018 小时前
3. STM32之TIM实验--输出比较(PWM输出,电机,四轴飞行器,智能车,机器人)--(实验1:PWM驱动LED呼吸灯)
stm32·嵌入式硬件·机器人
想拿 0day 的脚步小子8 小时前
6.stm32 OLED显示屏
stm32
Java Fans11 小时前
嵌入式软件在电子烟开发中的应用
嵌入式硬件
环能jvav大师12 小时前
使用Ubuntu系统+VS Code开发STC51单片机
linux·c语言·开发语言·单片机·嵌入式硬件·ubuntu