看门狗 WDG

嵌入式软件中的看门狗(Watchdog Timer, WDT)是一种监控机制,用于确保系统在出现故障时能够自动恢复正常运行。它通常由硬件定时器和相应的软件组成,当系统中的软件没有在预定时间内喂狗(即重置定时器)时,看门狗会发出一个复位信号,重启系统。以下是两种常见的看门狗及其监控对象的区别:

独立看门狗(Independent Watchdog, IWDG)

  • **监控对象**:独立看门狗主要监控整个嵌入式系统的运行状态。它是一个独立的硬件模块,即使主处理器出现故障,独立看门狗也能独立工作并触发系统复位。

  • **特点**:

  • 使用专用的低速时钟(如LSI)供电。

  • 通常是一个12位的递减计数器。

  • 在低功耗模式下也能工作,可以作为唤醒条件之一。

窗口看门狗(Window Watchdog, WWDG)

  • **监控对象**:窗口看门狗通常用于监控特定的软件进程或任务的执行时间。它检查软件是否在特定的时间窗口内正常运行,如果任务执行时间超出预设窗口或未能在窗口内喂狗,则会触发复位。

  • **特点**:

  • 需要在精确的时间窗口内重装载计数器值以防止复位。

  • 通常是一个6位的递减计数器。

  • 可以产生系统复位信号和提前唤醒中断。

对比

  • **监控范围**:

  • 独立看门狗监控整个系统的运行状态,不依赖于特定的软件任务。

  • 窗口看门狗监控特定的软件进程或任务,要求任务在设定的时间窗口内完成。

  • **灵活性**:

  • 独立看门狗较为简单,通常只有复位功能。

  • 窗口看门狗提供更多的灵活性,因为它允许设置特定的时间窗口,并在窗口外触发复位。

  • **精确性**:

  • 独立看门狗通常对时间精度要求不高。

  • 窗口看门狗要求在精确的时间窗口内喂狗,因此对时间精度有较高要求。

  • **应用场景**:

  • 独立看门狗适用于对时间精度要求不高的系统,如基本的嵌入式系统监控。

  • 窗口看门狗适用于需要精确监控任务执行时间的系统,如通信系统、数据采集与处理等。

总的来说,独立看门狗和窗口看门狗都是为了监控嵌入式系统的运行状态而设计的,但它们在监控对象、灵活性和应用场景上有所不同。选择哪种看门狗取决于系统的具体需求和设计要求。

相关推荐
fengfuyao9854 小时前
STM32如何定位HardFault错误,一种实用方法
stm32·单片机·嵌入式硬件
爱学习的颖颖5 小时前
EXTI外部中断的执行逻辑|以对射式红外传感器计次为例
单片机·嵌入式硬件·exti中断
AI精钢6 小时前
H20芯片与中国的科技自立:一场隐形的博弈
人工智能·科技·stm32·单片机·物联网
etcix9 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
谱写秋天9 小时前
在STM32F103上进行FreeRTOS移植和配置(STM32CubeIDE)
c语言·stm32·单片机·freertos
globbo13 小时前
【嵌入式STM32】I2C总结
单片机·嵌入式硬件
玖別ԅ(¯﹃¯ԅ)13 小时前
SysTick寄存器(嘀嗒定时器实现延时)
stm32·单片机·嵌入式硬件
Blossom.11814 小时前
把 AI 推理塞进「 8 位 MCU 」——0.5 KB RAM 跑通关键词唤醒的魔幻之旅
人工智能·笔记·单片机·嵌入式硬件·深度学习·机器学习·搜索引擎
桃源学社(接毕设)16 小时前
基于人工智能和物联网融合跌倒监控系统(LW+源码+讲解+部署)
人工智能·python·单片机·yolov8
玖別ԅ(¯﹃¯ԅ)16 小时前
PID学习笔记6-倒立摆的实现
笔记·stm32·单片机