【STM32】看门狗

看门狗,还没有别的地方用上,暂时还不清楚在实际应用中最多的场景是什么,我感觉是用来强制重启系统。

大部分图片来源:正点原子HAL库教程

专栏目录:记录自己的嵌入式学习之路-CSDN博客


目录

[1 应用场景](#1 应用场景)

[1.1 解决方法------IWDG](#1.1 解决方法——IWDG)

[1.2 解决方法------WWDG](#1.2 解决方法——WWDG)

[2 IWDG](#2 IWDG)

[2.1 特点](#2.1 特点)

[2.2 原理](#2.2 原理)

[2.3 看门狗溢出时间的计算](#2.3 看门狗溢出时间的计算)

[2.4 主要用到的函数](#2.4 主要用到的函数)

[2.5 相关的HAL库文件(可以去这里找用到的函数和宏定义)](#2.5 相关的HAL库文件(可以去这里找用到的函数和宏定义))

[3 WWDG](#3 WWDG)

[3.1 特点](#3.1 特点)

[3.2 原理](#3.2 原理)

[3.3 窗口期](#3.3 窗口期)

[3.4 超时时间计算](#3.4 超时时间计算)

[3.5 配置方法](#3.5 配置方法)

[3.6 相关的HAL库文件(可以去这里找用到的函数和宏定义)](#3.6 相关的HAL库文件(可以去这里找用到的函数和宏定义))


1 应用场景

嵌入式运行时有可能因为电磁干扰、自身软硬件异常等原因导致程序错误。

1.1 解决方法------IWDG

检测外界电磁干扰,或硬件导致的程序错误。

1.2 解决方法------WWDG

面向软件异常导致的程序错误。


2 IWDG

2.1 特点

  • 使用独立RC振荡器,不与主频率公用
  • 由VDD直接供电
  • 可在待机和停止模式下运行,即只要芯片工作,它就能工作
  • 只要在计数器到0前重装载计数器的值(喂狗),就不会产生复位
  • 适用于需要高稳定性、且对时间精度要求较低的场合(因为RC振荡器的时钟频率不是很稳定)
  • 它是异常处理的最后手段,不能依赖它,只能作为保险的存在

2.2 原理

12位的递减计数器,在计数减到0后,产生系统复位。

时钟源:LSI

2.3 看门狗溢出时间的计算

重要:

一般该公式用于算重装载值,为了达到较为准确的喂狗规定时间规定,需要准确的重装载值,因此需要进行计算。

2.4 主要用到的函数

2.5 相关的HAL库文件(可以去这里找用到的函数和宏定义)

stm32f1xx_hal_iwdg.c


3 WWDG

3.1 特点

  • 能产生系统复位信号以及提前唤醒中断;
  • 当递减计数器值从 0x40减到0x3F时复位(即T6位跳变到0)
  • 计数器的值大于W[6:0]值时喂狗会复位
  • 提前唤醒中断 (EWI):当递减计数器等于 0x40 时可产生
  • 在窗口期内重装载计数器的值,可防止复位
  • 用于监测单片机程序运行时效是否精准,主要检测软件异常,需要精准检测程序运行时间的场合
  • 它是异常处理的最后手段,不能依赖它,只能作为保险的存在

3.2 原理

6位的递减计数器

时钟源:PCLK

3.3 窗口期

W[6:0]≥窗口>0x3F

3.4 超时时间计算

3.5 配置方法

3.6 相关的HAL库文件(可以去这里找用到的函数和宏定义)

stm32f1xx_hal_wwdg.c

相关推荐
工控小机1 天前
STM32远程下载、调试终端介绍
stm32·单片机·嵌入式硬件·物联网
YY_Share1 天前
主板调速风扇电路设计
单片机·嵌入式硬件·硬件工程
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(十四):语音交互实战 ——SU03T 语音识别模块从固件制作到 STM32 控制(串口通信 + 命令响应)
c++·stm32·单片机·嵌入式硬件·架构·硬件架构·ux
科技前瞻观察1 天前
赋能智算升级|基于极海G32R501实时控制DSP MCU的AI服务器电源应用方案
服务器·人工智能·单片机
程序员杰森1 天前
ESP32开发板+TB6612 x 2 四电机小车笔记
笔记·单片机·嵌入式硬件
阿拉斯攀登1 天前
第 10 篇 RK 平台安卓驱动实战 3:PWM 驱动开发,实现 LED 呼吸灯 + 电机调速
驱动开发·嵌入式硬件·pwm·瑞芯微·嵌入式驱动·rk3576·嵌入式安卓
集芯微电科技有限公司1 天前
氮化镓GaN FET/GaN HEMT功率驱动器选型一览表
人工智能·单片机·嵌入式硬件·深度学习·神经网络·生成对抗网络
7yewh1 天前
jetson_yolo_deployment 01_linux_dev_env
linux·嵌入式硬件·yolo·机器人·嵌入式
WinstonMao1 天前
STM32上电不能开机运行问题排查
stm32·单片机·嵌入式硬件
qAICHjag2 天前
最新单目标测试集,灰狼算法跑cec2022测试集,这是最新的单目标测试集,能够有效评估算法的性能
stm32