推荐阅读最新更新时间:2026-02-10 00:23
STM32看门狗配置(独立看门狗IWDG和窗口看门狗WWDG)
stm32自带两个看门狗模块,独立看门狗IWDG和窗口看门狗WWDG。 看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号) 。 看门狗主要作用是可用来检测和解决由软件错误引起的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。 具体的实现步骤:开启看门狗,设置减计数的初始值,当计数值达到超时值时,产生MCU复位,此时本来运行的程序终止重新启动单片机(发生了故障)。在使用了看门狗
[单片机]
stm32 窗口看门狗 WWDG
窗口看门狗WWDG其实和独立看门狗类似,它是一个7位递减计数器不断的往下递减计数,当减到一个固定值0x40时还不喂狗的话,产生一个MCU复位,这个值叫窗口的下限,是固定的值,不能改变 窗口看门狗(WWDG)的时钟来自PCLK1,即挂接在APB1总线上,APB1时钟最大为36M 窗口值由配置寄存器WWDG_CFR的 位设置,所以最大值0x7F 当递减计数器递减到0x40的时候,还不会马上产生复位,如果使能了提前唤醒中断,则产生提前唤醒中断,提醒喂狗,随后将复位 WWDG配置步骤 1.使能WWDG时钟 2.设置WWDG窗口值 3.设置WWDG预分频因子 4.初始化NVIC外设,设置WWDG中断优先级 5.初始化计数
[单片机]
STM32的窗口看门狗(WWDG)
一、窗口看门狗由从APB1时钟分频后得到时钟驱动。 通过可配置的时间窗口来检测应用程序非正常的过迟或过早操作。 窗口看门狗最适合那些要求看门狗在精确计时窗口起作用的程序。 二、什么是窗口看门狗? 窗口就是因为其喂狗时间是一个有上下限的范围内(窗口),你可以通过设定相关寄存器,设定其上限时间(下限固定)。喂狗的时间不能过早也不能过晚。 而独立看门狗限制喂狗时间在0-x内,x由相关寄存器决定。喂狗的时间不能过晚 三、窗口看门狗的好处 对于一般的看门狗,因为是在复位前的任意时刻刷新看门狗,但有可能程序跑乱了又跑回到正常的地方,或跑乱的程序正好执行了刷新看门狗操作,这样的情况下就检测不
[单片机]
STM32窗口看门狗WWDG复位
STM32除了有一个独立看门狗外,还有一个窗口看门狗。窗口看门狗当然也能复位MCU,但是与独立看门狗复位不同。首先,窗口看门狗所需要的时钟源来自PCLK2,它时钟是经过PCLK2的4096分频后得到的,能够提供准确的计数。其次,复位的条件有要求:(1)当减计数器的值小于0x40,则产生复位;(2)当减计数值在窗口外被重新装载,则复位。接着,窗口看门狗的计数值与窗口值都只有7位,所以变化范围在0~127之间。还有,装载值一定要大于0x3F,否则就失去了看门狗的功能。 窗口看门狗,它的 窗口 可以有下图体现出来: 图中W 表示窗口值,当看门狗的减计数器不断递减,只有计数值到达窗口值与0x3F之间的时候 喂狗 ,才不会发生复位,
[单片机]
如何计算STM32定时器、独立看门狗和窗口看门狗
之前分享了STM32 GPIO的原理、特性、选型和配置、如何计算RTC时钟异步预分频和同步预分频,这次简要阐述STM32L011微控制器定时器的参数配置(其他型号大同小异,本文侧重讲解配置,至于各类定时器的特点后续再述),STM32定时器种类繁多有通用定时器、基本定时器、独立看门狗定时器、窗口看门狗定时器等。 1、基本、通用类型定时器 STM32基本、通用类型可编程定时器主要由一个 16 位及其相关的自动重载寄存器组成,在配置基本、通用类型的定时器时有三种关键寄存器:计数器寄存器 、预分频器寄存器和自动重载寄存器,具体说明如下所示: 计数器寄存器:有递增计数、递减计数或同时递增和递减计数三类,计数器的时钟可通过预分频器进行分频
[单片机]
stm32看门狗时间计算 独立看门狗和窗口看门狗的特性是什么
1.STM32看门狗的例子 IWDG的时限定为280微秒。这个时限可能会随着LSI(内部低速时钟)的频率漂移而产生微 小的变化。 /* IWDG timeout equal to 280 ms (the timeout may varies due to LSI frequency dispersion) ------------------------------------------------------------- */ /* Enable write access to IWDG_PR and IWDG_RLR registers */ IWDG_WriteAccessCmd(IWDG
[单片机]
STM32中的独立看门狗和窗口看门狗是什么
一、前言 在早期的MCU中是没有看门狗这种东西的,所以产品就很容易出现死机,跑飞的情况。为了避免这种情况的出现,后期的MCU都集成了看门狗的功能。但是目前看门狗发展到今天基本上分为两大类:独立看门狗和窗口看门狗。 独立看门狗 :使用的是外部时钟,即使主频不工作了,看门狗也能正常工作。只要在到达喂狗时间的上限前喂狗即表示程序是正常的,这点和窗口看门狗是有区别的。另外独立看门狗是独立于整个系统之外的,这也是独立看门狗名字的由来,他有自己独立的时钟,不受整个系统的影响,所以独立看门狗主要用来监控硬件上的错误。 窗口看门狗 :使用芯片内部时钟。喂狗的时间既有上限又有下限,即喂狗太早或者太晚都不行,比如我要求你在0.8s到0.9s内
[单片机]
STM32窗口看门狗详解
本文将介绍窗口看门狗,并通过按键模拟触发程序死机、进而触发提前唤醒中断、并复位程序。 ①窗口看门狗介绍 ②STM32CUBEMX配置工程文件 ③代码实现 ①窗口看门狗介绍 窗口看门狗用来监测由于不可预知的因素或者不可预知的逻辑条件导致程序脱离正常运行序列的软件故障。 窗口看门狗介绍之工作原理框图: 窗口看门狗介绍之配置寄存器: 预分频器用于将RCC传来的PCLK1时钟进行分频,配置寄存器中第7位第8位用来存放预分频器的预分频值,第0位至第6位用于存放窗口看门狗的窗口值,当计数器的值大于窗口值时喂狗会触发复位、即只有计数器的值在0x40与窗口值之间时喂狗不会触发程序复位;所以窗口值需要大于0x40、小于0x7f,否则窗口没有
[单片机]