Watchdog的原理和配置
0 2022-08-11

一、Watchdog介绍

单片机的watchdog一般都有两个,一个是独立看门狗IWDG,一个是窗口看门狗WWDG。以STM32为例,STM32的独立看门狗是一个12位的递减计数器,当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即IWDG_RESET。看门狗功能由VDD电压域供电,在停止模式和待机模式下仍能工作。

关于STM32的独立看门狗的框图如下所示:

单片机之Watchdog

二、Watchdog的工作原理

1、为了防止程序在运行过程中跑飞,加上一个看门狗实时监控程序,如果在规定的时间内没有喂狗,则狗叫会是的单片机复位。

2、如果在规定的时间内,刷新计数器的值,则单片机就不会产生复位,即我们所说的喂狗。

3、STM32的看门狗超时时间(40KHz的输入时钟(LSI))如下表所示:

单片机之Watchdog

三、STM32的IWDG配置

void IWDG_Config(void)
{   
  IWDG_WriteAccessCmd( IWDG_WriteAccess_Enable );
  IWDG_SetPrescaler(IWDG_Prescaler_64);
  IWDG_SetReload(500);
  IWDG_ReloadCounter();
  IWDG_Enable();  
} 
声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 报名中:IIC Shenzhen - 2022国际集成电路展览会暨研讨会


  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • CFS任务的负载均衡

    负载均衡的系列文章共分为三篇,第一篇为框架篇,描述负载均衡的相关原理、场景和框架。本篇作为该系列文章第二篇,主要通过对任务放置场景(task placement)的均衡分布进行分析,以便加深读者对内核调度器实现任务均衡分布的理解。 本文基于linux-5.4.24分

    49分钟前
  • Multi-queue 架构分析

    Linux上传统的块设备层(Block Layer)和IO调度器(如cfq)主要是针对HDD(hard disk drivers)设计的。我们知道,HDD设备的随机IO性能很差,吞吐量大约是几百IOPS(IOs per second),延迟在毫秒级,所以当时IO性能的瓶颈在硬件,而不是内核。但是,随着高速

    49分钟前
  • ARMv8 异常处理简介

    内核稳定性问题复杂多样,最常见的莫过于“kernel panic”,意为“内核恐慌,不知所措”。这种情况下系统自然无法正常运转,只能自我结束生命,留下死亡信息。诸如: “Unable to handle kernel XXX at virtual address XXX” “undefined instruction XXX”

    49分钟前
  • 新型 IO 调度器 BFQ 简介

    Linux io调度器有很多种,大多数调度器都经受住了各种市场环境的长时间验证,稳定性、性能得到各种用户的认可,但新的调度器依然展露头角,在4.12内核中出现了一个新的bfq调度器,这个调度器将取代曾经的辉煌的cfq调度器。社区对待大的改动都是很谨慎的,为什

    49分钟前
  • CFS任务的负载均衡(框架篇)

    我们描述负载均衡的系列文章一共三篇,第一篇是框架部分,即本文,主要描述了负载均衡相关的原理、场景和框架。后面的两篇是对均衡代码的情景分析,通过对load balance、task placement和active upmigration几个典型的负载均衡来呈现其实现细节,稍后发布,敬

    49分钟前
  • linux IO Block layer 解析

    早期的 Block 框架是单队列(single-queue)架构,适用于“硬件单队列”的存储设备(比如机械磁盘),随着存储器件技术的发展,支持“硬件多队列”的存储器件越来越常见(比如 NVMe SSD),传统的单队列架构也因此被改成了多队列(multi-queue)架构。早在 3.

    49分钟前
  • eMMC简介

    1 eMMC是什么 eMMC是embedded MultiMediaCard的简称,即嵌入式多媒体卡, 是一种闪存卡的标准,它定义了基于嵌入式多媒体卡的存储系统的物理架构和访问接口及协议,具体由电子设备工程联合委员会JEDEC订立和发布。 它是对 MMC的一个拓展,具有体积小,功耗低,

    49分钟前
  • 低纹波、高精度电流源设计

    低纹波、高精度电流源是一种重要的仪器设备;广泛应用于电光源、电化学、通信、测量技术、电子仪器等领域。目前,市场上的电流源不具备连续可调功能;并且输出电流范围小、

    7小时前
  • Linux 电信基站系统解决方案

      自从1991年Linux第一次面世以来,任何人也不会想到这个不起眼的操作系统现在会应用得如此广泛。无论是从嵌入式领域的智能手机到大型计算服务器都可以找到它的

    昨天
  • 单片机振荡电路中如何选择晶体?

    1.单片机晶振的原理晶振一般采用三端式(考毕兹) 交流等效振荡电路;实际的晶振交流等效电路中,其中Cv是用来调节振荡频率,一般用变容二极管加上不同的反偏电压来实

    昨天
  • OpenMV image 模块对象(目标识别基础)

    背景介绍: Sugar 在一文中说过:“OpenMV 在图像里做目标识别的过程就是:不停地取出画面里的每一帧图像,在图像里的每一帧画面上找目标的过程。” 本篇就说一说 OpenMV 怎样在一帧画面上识别目标的。 image 模块 上一篇中说到 OpenMV 通过 sensor.snapshot(

    昨天
  • 代码里开启喷洒装置, ardupilot 是怎么控制的

    背景介绍: 本文面向植保机飞控开发者,以代码解析的方式解读植保机喷洒装置的控制代码。 不仅说明了功能的开启方法,更重要的是表述了如何从代码里找方法的过程。对于进一步掌握 ardupilot 有帮助。 代码里开启喷洒装置 ardupilot 控制喷洒装置的代码在 AC_S

    昨天
下载排行榜
更多
广告