首页 > 其他分享 >STM32CubeIDE看门狗

STM32CubeIDE看门狗

时间:2024-09-14 17:19:52浏览次数:13  
标签:IWDG 窗口 复位 看门狗 计数器 喂狗 STM32CubeIDE

  1. 看门狗简介

看门狗:本质是一个递减的计数器

当程序有BUG或硬件问题导致的程序卡死或跑飞时,看门狗可及时复位程序

作用:防止程序卡死或程序跑飞,保证系统的可靠性和稳定性

STM32有独立看门狗(IWDG)和窗口看门狗(WWDG)两种类型

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

窗口看门狗:时间精度相对较高,并需在指定的窗口期内喂狗,否则复位程序

  1. 独立看门狗工作原理

独立看门狗:本质是一个递减的计数器(12位),当看门狗被激活后,递减计数器计数到0x000时产生复位

作用:防止程序卡死,或者说程序跑飞

上限0xFFF-1,下线0X000

注意:上限可由看门狗的重装载寄存器设置

在计数器计数到0之前,要进行喂狗,可重装载计数器的值,防止复位

喂狗,将0XAAAA写入到IWG_KR中即可!HAL_IWDG_Refresh()

Tout=(psc*rlr)/FIWDG

Tout是看门狗溢出时间;fIWDG是看门狗的时钟源频率

PSC是看门狗预分频系数;rlr是看门狗重装载值

CPU必须及时喂狗,否则系统复位重启!

 

  1. 独立看门狗实战环节

目的:验证不及时喂狗,系统将复位重启

预设:IWDG的溢出时间为1s,即1s内不喂狗,则系统复位!

接下来进行操作,一秒一次喂狗。去图形化界面,IWDG➡Activated(勾选)

IWDG counter clock prescaler(预分频系数)设置为16;

IWDG down-counter reload value重装载值最大值

看一下LSI这边是40KHZ

生成代码

如果是独立看门狗导致他复位的不复位,否则就是其他复位,清除复位标志

  1. 窗口看门狗工作原理

窗口看门狗:本质也是个递减的计数器,并且它能产生系统复位信号和提前唤醒中断

下限值不是0,而是0X3F

窗口看门狗的特点:1.当递减计数器值从0X40减到0X3F时复位(即T6位跳变到0)

  1. 计数器的值大于W[6:0]值时喂狗会复
  2. 当递减计数器等于0X40时可以产生提前唤醒中断(EWI)
  3. 在窗口期内重装载计数器的值(喂狗),防止复位

作用:用于监测单片机程序运行时效是否精准,主要检测软件异常。

独立看门狗和窗口看门狗的区别:

  1. 窗口看门狗实战环节

目的:验证是否在窗口期喂狗,可不执行复位

预设:计数器值为0X7F,窗口值为0x5F,预分频系数为8

接下来实战:把独立看门狗Activated勾选去掉

把窗口看门狗Activated勾选

预分频系数WWDG counter clock prescaler设置为8,窗口值WWDG window value为0x5F,计数器初始值WWDG free-running downcounter value为0X7F;中断Early wakeup interrupt为不使能;

生成代码把上一一节的IWDG改成WWDG运行可以看看。

然后我们把中断打开看一下,中断Early wakeup interrupt为使能,到NVIC勾选Window watchdog interrupt设置抢占优先级为2

生成代码然后按照下图写一下函数,运行即可。

标签:IWDG,窗口,复位,看门狗,计数器,喂狗,STM32CubeIDE
From: https://blog.csdn.net/weixin_74114554/article/details/142186965

相关文章

  • Intel Watchdog Timer Driver (Intel WDT) 是一种硬件监控驱动程序,用于系统监控和故障
    IntelWatchdogTimerDriver(IntelWDT)是一种硬件监控驱动程序,用于系统监控和故障恢复。这个驱动程序的主要功能是提供硬件级的看门狗定时器,用于监测系统的健康状况并在系统出现故障时进行恢复或重启。以下是关于IntelWDT驱动程序的一些关键点:1. 功能与目的硬件监控:I......
  • STM32F4 - WDG看门狗
    WDG看门狗简介        作用:看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,保证系统的可靠性和安全性        看门狗本质上是一个定时器,当指定时间范围内,......
  • STM32的窗口看门狗详解及案例(基于HAL库)
    目录一、引言二、窗口看门狗的工作原理1.基本概念2.功能描述3.窗口值和计数器初始值三、STM32F429HAL库中窗口看门狗的配置步骤1.开启时钟2.初始化窗口看门狗 3.开启早期唤醒中断4.喂狗操作 四、窗口看门狗的应用场景 1.防止软件死锁2.检测外部干扰3.提高......
  • S32的进阶之路->8,S32DS的WDOG看门狗配置
    硬件:S32K144开发板软件:S32DS2.2 1,S32K144硬件连接说明    看门狗定时器时间到没有喂狗就会触发系统复位,反之定时时间内喂狗会正常工作,可以避免程序跑飞等软硬件问题。IO口分配情况如下,S32K144开发板具有3个按键和4个LED灯,具体与芯片的引脚连接情况如下所示。 *......
  • 4.看门狗、定时器、触摸电容
    IWDG简介:独立看门狗本质:能产生系统复位信号的计数器特性:递减的计数器;时钟由独立的RC振荡器提供(可在待机和停止模式下运行);看门狗被激活后,当递减计数器计数到0x000时产生复位喂狗:在计数器计数到0之前,重装载计数器的值,防止复位:IWDG有什么作用作用:主要用于检测外界电磁干扰,或硬件异常......
  • 【STM32】IWDG独立看门狗与WWDG窗口看门狗
    本篇博客重点在于标准库函数的理解与使用,搭建一个框架便于快速开发目录WDG简介IWDGIWDG特性独立看门狗时钟键寄存器超时时间 IWDG代码WWDGWWDG特性窗口看门狗时钟超时时间WWDG时序WWDG代码 IWDG和WWDG对比 WDG简介WDG(Watchdog)看门狗,可以监控程序的运......
  • STM8 窗口看门狗实验:保护嵌入式系统的可靠性与稳定性
    嵌入式系统在各个领域中扮演着重要的角色,因此确保其可靠性和稳定性至关重要,本文将介绍如何利用STM8微控制器的窗口看门狗(IWDG)功能,来保护嵌入式系统的运行,我们还将提供相应的源代码示例,以帮助读者理解和实施这一功能。看门狗定时器是一种硬件模块,用于监控系统在预定时间内是否......
  • 看门狗游戏启动困境:ace-drv32.dll丢失问题的全面修复方案一览
    遇到《看门狗》(WatchDogs)游戏提示“ace-drv32.dll”文件丢失的问题,意味着您的系统中可能缺少或损坏了Ubisoft游戏运行所需的某些组件。以下是解决此问题的步骤:1.重新安装游戏尝试卸载并重新安装游戏,有时候游戏的重新安装可以自动修复缺失的文件问题。2.更新UbisoftCon......
  • 数据采集与控制> 数字I/O卡 > PXI2371,PXI总线,离散量输入输出卡,每通道可通过跳线实现切换
    数据采集与控制 > 数字I/O卡 > PXI2371/2372/2373本章主要介绍237X的系统组成及基本特性,为用户整体了解237X的相关特性提供参考。产品简介237X板卡是本公司推出的一系列高密度离散量输入输出卡,每通道可通过跳线实现切换电源/开、电源/地、地/开三种输入状态选择,输入通......
  • PCI2363/PCIe2363/PXI2363/PXIe2363,工业级光电隔离DI/O卡,通道间隔离,支持24路漏极源极
    数据采集与控制 > 数字I/O卡 > 2363系列236x系列板卡是本公司推出的PCI、PCIe、PXI、PXIe四种总线的工业级光电隔离DI/DO卡,采用并行数字IO接口设计,支持多达48路I/O通道,并且通道与通道间隔离。输入包含可编程输入滤波器功能,以消除信号的毛刺/尖峰,使采集结果更精准。输出......