当前位置: 首页 > web >正文

day 12 看门狗外设

1看门狗外设的由来

看门狗电路(Watchdog Timer, WDT)的由来与计算机系统对稳定性和可靠性的需求密切相关,其核心设计思想源于对系统异常状态的自动检测和恢复。

①早期计算机系统的痛点
在计算机和嵌入式系统发展的早期,硬件和软件环境并不稳定,容易出现以下问题:
• 程序跑飞:由于干扰、电压波动或软件漏洞,程序可能跳出正常流程,陷入死循环或卡死。
• 硬件故障:传感器错误、信号干扰等可能导致系统无响应。
• 人工复位低效:对于无人值守的设备(如工业控制、航天设备),人工复位不现实。

②看门狗电路通过定时检测系统是否正常运行。如果系统“沉默”(未按时发送信号),看门狗会强制复位系统。

③工作原理
• 喂狗(Kick the Dog):系统正常运行时,需定期向看门狗发送信号(通常通过写寄存器或翻转引脚)。
• 超时复位:若未按时“喂狗”,看门狗认为系统异常,触发复位信号或中断。

④使用看门狗的目的:为了提供程序的可靠性,防止由软件或者硬件造成的问题的出现。如果想要了解看门狗的资源和特点,可以参考STM32F4中文参考手册。

2看门狗的分类

STM32F4系列的芯片提供的两个看门狗,一个叫做独立看门狗,一个叫做窗口看门狗。两个看门狗的使用流程差不多,但是相比于独立看门狗,窗口看门狗比较难伺候。

特性                                        独立看门狗(IWDG)                       窗口看门狗(WWDG)
喂狗灵活性                        任意时间喂狗(只要不超时)                必须在指定时间窗口内喂狗
时钟源                                独立低速时钟(如LSI)                        主时钟(如PCLK)
超时精度                                低精度(毫秒级到秒级)                   高精度(微秒级到毫秒级)
抗时钟失效能力                强(不依赖主时钟)                                弱(依赖主时钟)
典型应用                        通用嵌入式系统、高可靠性场景                实时控制系统、防局部死循环

3独立看门狗

独立看门狗原理及特性

所使用代码函数

代码配置步骤

代码展示

4窗口看门狗

窗口看门狗原理及特性

所使用代码函数

代码配置步骤

代码展示

http://www.xdnf.cn/news/15952.html

相关文章:

  • 运行时常量池 和 字符串常量池 区别
  • 【数据集】NOAA 全球监测实验室(GML)海洋边界层(MBL)参考简介
  • 虚拟机VMware安装国产桌面系统统信UOS
  • 传输层协议 TCP
  • 【Python数据采集】Python爬取小红书搜索关键词下面的所有笔记的内容、点赞数量、评论数量等数据,绘制词云图、词频分析、数据分析
  • docker-compose启动前后端分离项目(单机)
  • ARFoundation系列讲解 - 101 VisionPro 真机调试
  • MySQL EXPLAIN 解读
  • DAY 20 奇异值分解(SVD)
  • ant+Jmeter+jenkins接口自动化,如何实现把执行失败的接口信息单独发邮件?
  • leetcode丑数II计算第n个丑数
  • zabbix服务器告警处理
  • 【milvus检索】milvus检索召回率
  • pages.json页面路由中,globalStyle的各个属性
  • 社交圈子系统开源社交源码 / 小程序+H5+APP 多端互通的底层技术分析
  • Ubuntu 24.04 设置静态 IP 的方法
  • 对LLM某一层进行优化:通过眼动数据发现中间层注重语句内在含义,进而对中间层参数优化
  • pthread_detach与pthread_join区别及使用场景
  • 408考研逐题详解:2010年第35题——RIP协议
  • BST(二叉搜索树)的笔试大题(C语言)
  • AG32:解锁MCU+FPGA应用新姿势,功能与实战全解析
  • SQL中的EXPLAIN命令详解
  • 【Linux】权限详解 权限本质、权限属性、su、sudo提权、chmod\chown\chgrp、文件类别
  • Qt 应用程序入口代码分析
  • HarmonyOS 启动提速秘籍:懒加载全链路实战解析
  • mysql第三次作业
  • 什么是的优先级反转(Priority Inversion) 和 优先级继承(Priority Inheritance)?
  • Syncthing实时共享同步数据 服务器数据备份软件(linux、windows)
  • 《程序员修炼之道》第一二章读书笔记
  • 【ChatOpenAI】常用方法详解