看门狗定时器详细资料大全
发布网友
发布时间:2022-12-30 02:34
我来回答
共1个回答
热心网友
时间:2023-10-28 17:51
看门狗定时器(WDT,Watch Dog Timer)是单片机的一个组成部分,它实际上是一个计数器,一般给看门狗一个数字,程式开始运行后看门狗开始倒计数。如果程式运行正常,过一段时间CPU应发出指令让看门狗复位,重新开始倒计数。如果看门狗减到0就认为程式没有正常工作,强制整个系统复位。
基本介绍
中文名 :看门狗定时器 外文名 :Watch Dog Timer 组成 :单片机的一个组成部分 实质 :计数器
工作原理,功能作用,设计原理,
工作原理
使用时,WDT将递增,直到溢出,或称“逾时”。除非处于休眠或空闲模式,WDT 逾时会强制器件复位。为避免WDT逾时复位,用户必须定期用PWRSAV 或CLRWDT 指令将看门狗定时器清零。如果WDT 在休眠或空闲模式下逾时,器件将唤醒并从PWRSAV 指令执行处继续执行代码。在上述两种情况下,WDTO 位(RCON<4>)都会置1,表示该器件复位或唤醒事件是由于WDT逾时引起的。如果WDT 将CPU从休眠或空闲模式唤醒,“休眠”状态位(RCON<3>)或“空闲”状态位(RCON<2>)也会置1,表示器件之前处于省电模式。
WDT框图在正常操作期间,一次WDT逾时溢出将产生一次器件复位。当器件处于休眠状态时,一次WDT逾时溢出将唤醒器件,使其继续正常操作(即称作WDT 唤醒)。对WDTE 设定位清零可以永久性地关闭WDT。 后分频器分配完全是由软体控制,即它可在程式执行期间随时更改。 为避免发生不可预测的器件复位,当从Timer0 预分频器的分配改为WDT 后分频器的分配时,必须执行下列指令序列。即使WDT 被禁止,也要执行这个指令序列。
功能作用
看门狗定时器是单片机的一个组成部分,在单片机程式的调试和运行中都有着重要的意义。它的主要功能是在发生软体故障时,通过使器件复位(如果软体未将器件清零)将单片机复位。也可以用于将器件从休眠或空闲模式唤醒,看门狗定时器对微控制器提供了独立的保护系统,当系统出现故障时,在可选的逾时周期之后,看门狗将以RESET信号作出回响,像x25045就可选逾时周期为1.4秒、600毫秒、200毫秒三种。当你的程式当机时,x25045就会使单片机复位。 大多数看门狗定时器IC产生一个单一的,有限的输出脉冲持续时间当看门狗逾时。这适用于触发复位或中断微处理器,但有些套用需要输出(故障指示灯)的锁存器。 考虑到安全性问题,汽车电子系统需要监控电路监测故障容限或安全性。看门狗定时器可理想满足这类需求,通过对微控制器正常工作条件下产生的周期脉冲进行检测,侦测电路或IC的失效状态,一旦发生故障可立即切换到备份/冗余系统。
设计原理
在
看门狗( watchdog timer),是一个定时器电路, 一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程式跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU当机. 看门狗的作用就是防止程式发生死循环,或者说程式跑飞。 出于对单片机运行状态进行实时监测的考虑,产生了一种专门用于监测单片机程式运行状态的晶片,俗称"看门狗"(watchdog))积体电路(MAX*9)的基础上,该电路提供了回响的输入脉冲流损失锁存故障指示。该电路可以监控风扇(上风扇的转速输出计算),振荡电路,或一个微处理器软体执行。
图1一个简单的电路(图1)提供了回响的输入脉冲流损失锁存故障指示。在μP-supervisor/watchdog积体电路(MAX*9)的基础上,该电路用于监测风扇(在风扇的转速输出计算),振荡电路,或一个合适的微处理器软体执行。 在上电期间,低电平有效复位仍然很低,直到VCC的稳定和复位逾时时间到期。电容器C通过R,直到FET的栅极电压达到阈值(电压VTH),它开启了场效应管,使锁存能力。为了防止误触发,你应该设定RC延迟的时间远远超过了复位逾时。 WDI输入(引脚6)必须按切换电容器CSWT设立最低速率。如果这没有发生,低电平有效复位变低,在LED指示灯,在连线和低拉复位,从而锁定低电平复位。该电路仍然有效,直到你循环VCC或推开关在此条件。要么关闭FET的行动,并允许重置变高。 为了监测风扇开漏测速信号,从世界发展指标10kΩ的连线到VCC(引脚8)上拉电阻器。由于风扇需要一些时间来旋转起来,看门狗电路需要为一个短暂的延迟时间间隔停用。您可以通过将本延迟电容(C2)从对地复位。请注意,此延迟必须小于上述RC延迟,或低电平有效复位锁存过早会较短。 对于一个风扇监控,对CSWT值设定最大转速脉冲周期根据公式5.06×106 × CSWT,其中在几秒钟内CSWT。如果转速低于这个阈值时,低电平有效复位输出低和插销。