STM32基础教程 p16 窗口看门狗(WWDG)

1 窗口看门狗工作原理

1.1 简介

WWDG简介
窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运
行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,看门狗电路在达到预置
的时间周期时,会产生一个MCU复位。在递减计数器达到窗口寄存器数值之前,如果7位的递减
计数器数值(在控制寄存器中)被刷新, 那么也将产生一个MCU复位。这表明递减计数器需要在
一个有限的时间窗口中被刷
新;

PC指针跑飞,指针指向未知内存地址,程序死机。
程序正常执行的过程中,代码的执行有时间限制,代码执行超过这个执行时间说明,程序PC指针跑偏,程序执行出现问题;

窗口看门狗规定了程序执行时间的上限和下限;程序执行不再这个时间内说明PC指针指向错误;

因此引出了窗口看门狗的:窗口上限和窗口下限;

喂狗的操作就是当中断计数器的值快到达装载计数器的值时,进行回拉操作;
与门
与门
在这里插入图片描述
或门
在这里插入图片描述
非门

在这里插入图片描述在这里插入图片描述

2 .2 WWDG的寄存器

2.2.1 控制寄存器(WWDG_CR)

在这里插入图片描述

2.2.2 配置寄存器(WWDG_CFR)

在这里插入图片描述

2.2.3 状态寄存器(WWDG_SR)

在这里插入图片描述

2.2.4 WWDG寄存器映像

在这里插入图片描述
在这里插入图片描述

2 WWDG代码实现

正式进入中断之前,先清除中断的标志位;
stm32的所有的中断都归NVIC管理,只要有中断,必然有NVIC;
[NVIC详细解释]
寄存器

NVIC详细解释

相关推荐

  1. 【国产MCU】-窗口看门WWDG

    2023-12-07 07:52:07       46 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-07 07:52:07       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-07 07:52:07       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-07 07:52:07       87 阅读
  4. Python语言-面向对象

    2023-12-07 07:52:07       96 阅读

热门阅读

  1. RT-Thread 时钟管理

    2023-12-07 07:52:07       55 阅读
  2. ssh框架原理及流程

    2023-12-07 07:52:07       56 阅读
  3. flutter的CircularProgressIndicator基本使用

    2023-12-07 07:52:07       62 阅读
  4. 【大数据开发心得】合理使用Flink参数配置

    2023-12-07 07:52:07       49 阅读
  5. 使用OpenGL加载和显示Q3O类型的3D模型文件

    2023-12-07 07:52:07       63 阅读
  6. LeetCode第136题 只出现一次的数字

    2023-12-07 07:52:07       67 阅读
  7. pillow opencv matplotlib读写图片有什么区别

    2023-12-07 07:52:07       51 阅读
  8. 原型模式(Prototype Pattern)

    2023-12-07 07:52:07       50 阅读