看门狗定时器(
WDT,Watch Dog Timer)是单片机的一个组成部分,它实际上是一个
计数器,一般给看门狗一个数字,程序开始运行后看门狗开始计数。如果程序运行正常,过一段时间
CPU应发出指令让看门狗
置零,重新开始计数。如果看门狗增加到
设定值就认为程序没有正常工作,强制整个系统复位。
使用时,
WDT将递增,直到溢出,或称“超时”。除非处于休眠或空闲模式,WDT 超时会强制器件复位。为避免WDT超时复位,用户必须定期用PWRSAV 或
CLRWDT 指令将看门狗定时器清零。如果WDT 在休眠或空闲模式下超时,器件将唤醒并从PWRSAV 指令执行处继续执行代码。在上述两种情况下,WDTO 位(RCON<4>)都会置1,表示该器件复位或唤醒事件是由于WDT超时引起的。如果WDT 将
CPU从休眠或空闲模式唤醒,“休眠”状态位(RCON<3>)或“空闲”状态位(RCON<2>)也会置1,表示器件之前处于
省电模式。
在正常操作期间,一次WDT超时溢出将产生一次器件复位。当器件处于
休眠状态时,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT 唤醒)。对WDTE 设置位清零可以
永久性地关闭WDT。
后
分频器分配完全是由软件控制,即它可在程序执行期间随时更改。
为避免发生不可预测的器件复位,当从
Timer0
预分频器的分配改为WDT 后分频器的分配时,必须执行下列指令序列。即使WDT 被禁止,也要执行这个指令序列。
看门狗定时器是单片机的一个组成部分,在单片机程序的调试和运行中都有着重要的意义。它的主要功能是在发生
软件故障时,通过使器件复位(如果软件未将器件清零)将单片机复位。也可以用于将器件从休眠或空闲模式唤醒,看门狗定时器对
微控制器提供了独立的
保护系统,当系统出现故障时,在可选的超时周期之后,看门狗将以RESET信号作出响应,像x25045就可选超时周期为1.4秒、600毫秒、200毫秒三种。当你的程序死机时,x25045就会使单片机复位。
考虑到安全性问题,
汽车电子系统需要监控电路监测
故障容限或安全性。看门狗定时器可理想满足这类需求,通过对微控制器
正常工作条件下产生的周期脉冲进行检测,侦测电路或
IC的
失效状态,一旦发生故障可立即切换到备份/
冗余系统。
在
看门狗( watchdog timer),是一个定时器电路, 一般有一个输入,叫
喂狗(kicking the dog or service the dog),一个输出到
MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个
复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。 出于对单片机
运行状态集成电路(MAX*9)的基础上,该电路提供了响应的输入脉冲流损失锁存故障指示。该电路可以监控风扇(上风扇的转速输出计算),
振荡电路,或一个
微处理器软件执行。
一个简单的电路(图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.07×106 × CSWT,其中在几秒钟内CSWT。如果转速低于这个阈值时,低电平有效复位输出低和
插销。