0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是模拟看门狗?模拟看门狗有什么用处?

嵌入式情报局 来源:最后一个bug 2023-11-22 09:40 次阅读

看门狗大家应该再熟悉不过了,一旦忘记喂狗就会导致单片机复位,而在大部分stm32中都存在两种类型的看门狗,Independent watchdog (IWDG)独立看门狗和Window watchdog (WWDG)窗口看门狗。

独立看门狗也就是常规的一种看门狗,需要定时reload计数值进入downcounter下降计数器中,否则当下降计数到0便会产生IWDG_reset信号,导致芯片复位。

通过下方原理框图可知,其有独立LSI时钟驱动,不会受到主时钟的影响,相对比较独立。

pYYBAGGt9xuABqThAAGCxnGE6Yg030.png

窗口看门狗与独立看门狗有所不同,该看门狗必须在所设置的窗口重载下降计数器才不会导致RESET,过早或者过晚都会导致复位。

poYBAGGt9x2AFp7uAAD2dg0jqP0175.png

然而有时候系统异常触发了窗口看门狗,为了便于分析想记录适当的日志,或者应对一些不能直接复位的应用场合,进行一些卸载操作,当窗口看门狗当下降计数器达到0x40后,生成一个EWI中断,并执行相应的中断服务函数,处理完中断以后,才复位系统。

那到底什么是模拟看门狗呢?

虽然名字叫看门狗,不过模拟看门狗存在的目的并不是使得芯片复位,而是对外设信号起到一个监控作用。

如下图所示,模拟看门狗在ADC外设里面:

pYYBAGGt9x6AShWBAAH-VSom_Jk585.png

从外设结构框图可以了解到,该看门狗主要是由一个12bit的上限值(High threshold)和一个12bit的下限值(Low threshold)构成,比较以后输出一个AWD的ADC中断信号,从而触发相应中断。

poYBAGGt9yCAV3ZBAACpckvrGUk427.png

在stm32库中通过填充ADC_AnalogWDGConfTypeDef,并进行配置即可启动该功能。

模拟看门狗到底有什么用处呢?

做过控制或者数据采集的朋友都会进行信号的过低或者超高的异常处理,对于一些快速性的处理和保护,常规的处理办法就是直接在采集中断中用采集结构比较所设置的最大值或者最小值。

如果仅仅只是一个采样值的判断倒无伤大雅,当多个ADC通道都需要进行相同判断和处理,软件上就有点累赘耗时了。

硬件功底不错的伙计,可能会想到通过外部比较器+逻辑运算最终通过一个引脚接到MCU的外部中断,一旦有采样信号超范围,便会触发外部中断执行中断服务函数处理。

然而这种需要增加额外硬件的方式对于有模拟看门狗MCU等就没有必要了,因为每个ADC中的模拟看门狗都可以通过配置相应寄存器选择一系列通道进入模拟看门狗的上下限监控中。

poYBAGGt9yKAb-9bAAI9wqCTGj4985.png

这样看来模拟看门狗有点像窗口看门狗,只是其最终不会导致MCU复位,而是触发中断交给用户进行继续处理。

至于中断中怎么处理就非常灵活了,比如通过判断多次触发模拟看门狗中断以后才进行保护处理等,以防止一些噪声导致的误触发。

来源:公众号最后一个bug

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620840
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16017

    浏览量

    343625
  • 看门狗
    +关注

    关注

    10

    文章

    541

    浏览量

    70256
  • 时钟
    +关注

    关注

    10

    文章

    1479

    浏览量

    130306
  • 独立看门狗
    +关注

    关注

    0

    文章

    23

    浏览量

    3649

原文标题:听说过"模拟看门狗"吗?

文章出处:【微信号:嵌入式情报局,微信公众号:嵌入式情报局】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    看门狗是什么?为什么要看门狗

    看门狗是什么?为什么要看门狗看门狗解决的问题是什么?
    发表于 07-26 07:37

    独立看门狗的原理是什么?如何去使用独立看门狗

    为什么需要看门狗?独立看门狗的原理是什么?独立看门狗的特点哪些?如何去使用独立看门狗
    发表于 07-26 13:59

    看门狗介绍

    1)独立看门狗没有中断,窗口看门狗中断 2)独立看门狗硬件软件之分,窗口看门狗只能软件控制
    发表于 07-30 07:38

    看门狗是什么 看门狗的功能

    STM32的独立看门狗概述看门狗是什么看门狗的功能独立看门狗所需的环境独立看门狗工作原理看门狗
    发表于 07-30 08:07

    模拟看门狗

    的电压超出该上下限,将会触发模拟看门狗中断。其典型的应用,检测到电流过大时控制继电器断电,进而保护后续电路。
    发表于 08-02 08:43

    窗口看门狗的定义及窗口看门狗和独立看门狗区别是什么

    窗口看门狗一、窗口看门狗的定义及窗口看门狗和独立看门狗区别是什么? 总结一下就是独立看门狗只有下限,在下限前喂狗即可使程序不被复位;而窗口
    发表于 08-02 06:56

    什么是看门狗 为什么要看门狗

    什么是看门狗?为什么要看门狗看门狗可不是那个入侵手机的游戏在STM32中,它具有"看家"的功能所谓"看家",意思就是察觉到异常,就马上反应过来,反馈给主人
    发表于 08-02 10:59

    一文读懂什么是模拟看门狗

    什么是模拟看门狗?STM32F1模拟看门狗相关配置函数哪些?如何去配置STM32F1模拟
    发表于 08-16 06:10

    窗口看门狗与独立看门狗什么不同?

    窗口看门狗与独立看门狗什么不同?窗口看门狗超时时间怎么计算?
    发表于 09-18 07:59

    STM32芯片的模拟看门狗是怎么回事呢

    什么是看门狗?STM32芯片的模拟看门狗是怎么回事呢?与独立看门狗有关系吗?它是怎么工作的?
    发表于 09-18 08:41

    独立看门狗与窗口看门狗概述

    为什么要看门狗看门狗解决的问题是什么?独立看门狗哪些功能?独立看门狗哪些操作步骤?为什么要
    发表于 09-26 08:41

    什么是看门狗看门狗哪些类型?

    什么是看门狗看门狗哪些类型?
    发表于 11-09 06:18

    模拟看门狗到底什么用处

    到底什么是模拟看门狗呢?模拟看门狗到底什么用处呢?
    发表于 01-17 07:33

    模拟看门狗是什么

      看门狗的功能大家都知道,而这个模拟看门狗又是什么东西呢?  简单的说就是这个模拟看门狗可以实时监控ADC采样的数据,当采样的数据值小于设
    发表于 01-27 07:19

    STM32 ADC模拟看门狗及应用

    模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高低阈值,用户可以预先设定个模拟看门狗的上下限电压值,一旦采集到的电压超出该上下限,将会触发
    发表于 09-08 06:26