看门狗单片机,也叫做看门狗定时器,它可以在必要时检测并触发MCU复位,看门狗单片机会按设定的时间间隔使用看门狗定时器进行检查,以表明MCU仍在正常工作。现在,微控制器厂商都会提供一些专用的看门狗单片机。
一、看门狗单片机的工作原理
主程序通常具有一个循环,不断执行各种功能。通过主程序循环,看门狗定时器的初始值大于最坏情况的时间延迟。每次它通过主循环时,代码都会重置看门狗计时器(有时称为“踢”或“喂”狗)。如果发生故障,并且主程序在倒计时之前未返回主程序来重置计时器,则会生成中断以重置处理器。看门狗定时器以这种方式使用,可以检测到无人看管的嵌入式设备上的故障,并尝试通过复位来采取纠正措施。通常,在复位后,还可以读取寄存器以确定看门狗定时器是产生复位还是正常复位。
二、看门狗单片机的一般用法
本文讲的是外部的看门狗单片机,它主要应用场景是作为系统监视器来检测和重置“失控”微控制器(MCU)。有些MCU芯片内置看门狗定时器(WDT),如果MCU程序执行出错时,它将无法正确执行重新启动看门狗的代码。在这种情况下,外部看门狗单片机可以减少系统故障发生而更具优势。
不管看门狗单片机有多强大,都有某些无法通过复位纠正的故障。例如,看门狗定时器无法阻止或检测数据存储器的损坏。除非数据损坏影响程序流程或采取了某些额外措施,否则数据损坏将不会导致看门狗单片机复位。虽然这种情况有方法解决,但这里就不多做讲解了。
不过,有一点需要注意,看门狗单片机不能立即检测到故障。根据定义,看门狗单片机必须在其超时间隔结束之前复位MCU。所以,单片机开发人员应注意执行错误指令与看门狗单片机复位之间可能出现的时间间隔。
以上就是英锐恩单片机开发工程师分享的看门狗单片机以及其用法。英锐恩专注单片机应用方案设计与开发,提供8位单片机、16位单片机、32位单片机、运放芯片和模拟开关。