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

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

3天内不再提示

单片机为什么要加看门狗?

亿佰特物联网应用专家 2023-11-17 08:20 次阅读

现代电子设备越来越复杂,为了保证系统的稳定和可靠性,往往需要引入一些硬件设计来进行监控和保护。其中,看门狗(Watchdog)是一种常用且重要的功能,一般指的是电子设备或电路中,用于监控特定系统或应用程序的运行情况以保证其正常运行。本文将简单探讨看门狗的工作原理,以及它在电子设备中的应用。

智能家居智能穿戴设备、工业自动化、车载系统等应用中,这些系统具有复杂的硬件结构和软件逻辑,容易受到外部环境的影响或意外故障的干扰。看门狗可以在系统发生异常时及时检测到,并采取措施恢复系统的正常运行。

在需要高度稳定性和可靠性的系统上。例如,硬盘、路由器和无人机等。很多电子设备的系统由多个硬件和软件组成,并且运作时间长、耗能大、出现故障的可能性都比较大。这时,为设备配置看门狗电路,就可以确保设备故障时得到及时重启,保证设备始终处于有效的运行状态。

什么是“看门狗”技术?

看门狗技术又称“看门狗定时器,是由技术人员为解决嵌入式系统中的软件异常而提出的。在嵌入式系统中,一些关键的应用程序往往需要长时间运行,且整个系统必须高效、稳定、可靠。一旦系统出现故障,可能造成严重后果且不可逆,因此需要引入一种硬件保护技术来尽量减少这些故障对系统的影响。看门狗技术属于硬件监控技术的一种,它通过设置计时器进行系统状态的扫描和检查,以避免出现软硬件异常。

看门狗的实现一般基于一个定时器,这个定时器在系统启动后被重置,并根据特定的超时时间开始计时。超时时间指的是一段时间内必须进行喂狗操作,否则系统就会视为出现故障,在超时后,看门狗计时器会产生特殊的反应,包括重置系统、关闭系统或其他紧急处理措施。

为什么需要看门狗?

单片机中,看门狗技术的实现是通过内部或外部的计时器来实现的。一些的单片机内部已经集成了看门狗模块,我们只需要配置好相应的参数即可使用。而有些单片机则需要用外部元器件(如SP706S等)来进行扩展。

单片机中的看门狗技术通常通过内置或外置的计时器实现,这需要许多硬件和软件的配合。硬件上需要根据计时器模块设计相应的电路连接,并对看门狗的参数进行初始化和设置。同时,软件上需要编写相应的保护程序来喂狗和执行必要的保护操作。在实际设计中需要根据各个厂商提供的技术文档来确定调用各种函数的方式和参数值。

2e0b80d8-84df-11ee-9788-92fbcf53809c.png

一种外置看门狗芯片


2e2fff8a-84df-11ee-9788-92fbcf53809c.png

一种内置看门狗的MCU系统框图(部分)

看门狗技术是一种重要的系统保护技术,有助于避免嵌入式系统或单片机出现异常或故障而导致的死机等问题,保证电子设备正常运行。在实际操作中,需要仔细地考虑具体的硬件架构,以及与软件设计的相互配合,保证看门狗的准确控制。

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

    关注

    6001

    文章

    43973

    浏览量

    620838
  • 看门狗
    +关注

    关注

    10

    文章

    541

    浏览量

    70256
  • 电子设备
    +关注

    关注

    2

    文章

    1949

    浏览量

    52580
收藏 人收藏

    评论

    相关推荐

    STM8L052看门狗在16MHz主频下意外重启是怎么回事?

    目前使用STM8L052R8做个产品,这个片子又便宜又好,该有的功能都有。软件一切功能都调试完毕,最后想启动看门狗。问题来了,主程序工作在16MHz下,外部晶振,分频系数为1,看门狗会导致不定
    发表于 04-17 07:34

    TLE9854如何禁止看门狗

    TLE9854示例代码,注释掉喂狗函数,然后重新下载,单片机未发生复位,重新上电后发生了复位,是怎么回事,如何才能关闭看门狗
    发表于 02-02 14:47

    TLEz9855如何关闭看门狗

    TLE9855的示例代码主循环里都带有WDT1_Service()这个函数,也就是喂狗,可是查看驱动设置里却没有使能看门狗,所以把WDT1_Service()这个函数注释掉,然后下载进单片机发现单片机没有发生复位,可是重新上电后
    发表于 02-02 07:27

    ADUC7024的看门狗能不能在看门狗定时没有到之前,将看门狗给关了啊?

    ADUC7024的看门狗能不能在看门狗定时没有到之前(即没有复位之前),将看门狗给关了啊?
    发表于 01-15 08:17

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

    看门狗大家应该再熟悉不过了,一旦忘记喂狗就会导致单片机复位,而在大部分stm32中都存在两种类型的看门狗,Independent watchdog (IWDG)独立看门狗和Window
    的头像 发表于 11-22 09:40 895次阅读
    什么是模拟<b class='flag-5'>看门狗</b>?模拟<b class='flag-5'>看门狗</b>有什么用处?

    看门狗如何使用?

    虽然知道看门狗的作用,不过还是不太明白看门狗如何使用。 看门狗的作用是在程序跑飞的情况下让系统能够及时复位重新开始执行程序,道理很简单,但是程序如何跑飞呢? 如果是一段程序需要延时等
    发表于 11-06 07:02

    看门狗喂狗代码加在哪里?

    看门狗喂狗代码加在哪里 定时器吗?
    发表于 11-03 06:39

    请问STM32的独立看门狗和窗口看门狗有什么主要的区别?

    STM32的独立看门狗和窗口看门狗有什么主要的区别?
    发表于 10-15 06:44

    请问51单片机中的看门狗是干嘛的?

    51单片机中的看门狗是干嘛的?
    发表于 10-08 06:06

    STM32F2独立看门狗和窗口看门狗

    结合安全度、计时精确度和易用性·监测软件跑飞,或未按预想地运行的情况 ·触发系统复位或产生中断(中断仅针对窗口看门狗)独立看门狗 ·专用时钟LSl ·低功耗模式仍可运行对定时的控制比较松 不同时钟源,不同生存周期 窗口看门狗 ·
    发表于 09-13 07:15

    STM32 ADC模拟看门狗及应用

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

    STM32单片机看门狗的配置方法

    SATM32单片机看门狗有独立看门狗和窗口看门狗之分,这两者的工作原理却完全不同,今天来看一下他们的具体区别和配置方法。
    的头像 发表于 06-22 09:07 2097次阅读
    STM32<b class='flag-5'>单片机</b><b class='flag-5'>看门狗</b>的配置方法

    NUC970单片机,linux系统下看门狗复位无效怎么解决?

    相同的板子,相同的程序,主板相同,原来最早的那些看门狗停止喂狗能正常复位,最近买的单片机看门狗停止喂狗以后,死在那边 有遇到过这种情况的么...
    发表于 06-14 11:59

    单片机独立看门狗和窗口看门狗的区别

    早期的MCU没有看门狗,就容易引起有些产品死机了不能重启工作。为了避免这个问题,后期的MCU在内部集成了看门狗的功能。
    发表于 06-06 09:40 425次阅读
    <b class='flag-5'>单片机</b>独立<b class='flag-5'>看门狗</b>和窗口<b class='flag-5'>看门狗</b>的区别

    基于51单片机的内部看门狗实验例程源代码

    基于51单片机的内部看门狗实验例程源代码
    发表于 05-12 16:22 0次下载