看门狗计时器是用来防止万一单片机程序出错造成重大损失的
计时器。防错的原理很简单,它在硬件上就是一个定时器,当它溢出的时候就会让单片机强制复位使程序重新开始执行。正常的情况下是不能让它溢出的,所以在程序上每隔一段时间要给他置一次值(俗称喂狗),只要程序中正常给它喂他就不会溢出。
图1在看门狗(看门狗,又叫watchdogtimer,是一个
定时器电路,一般有一个输入,叫喂狗(kickingthedogorservicethedog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),
WDT定时超过,就会给出一个复位信 号到MCU,使MCU复位.防止MCU死机.看门狗的作用就是防止程序发生
死循环watchdog))集成电路(MAX*9)的基础上,该电路提供了响应的输入脉冲流损失锁存故障指示。该电路可以监控风扇(上风扇的转速输出计算),
振荡电路,或一个微处理器软件执行。
大多数
看门狗定时器IC产生一个单一的,有限的输出脉冲持续时间当看门狗超时。这适用于触发复位或中断微处理器,但有些应用需要输出(故障指示灯)的
锁存器。一个简单的电路(图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。如果转速低于这个
阈值时,低电平有效复位输出低和插销。
在正常操作期间,一次WDT超时溢出将产生一次器件复位。当器件处于休眠状态时,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT唤醒)。对WDTE设置位清零可以永久性地关闭WDT。
后
分频器分配完全是由软件控制,即它可在程序执行期间随时更改。为避免发生不可预测的器件复位,当从Timer0预分频器的分配改为WDT后分频器的分配时,必须执行下列指令序列。即使WDT被禁止,也要执行这个指令序列。