默认情况下, WDT执行超时系统重置,以及预警中断禁用。如果一个预警中断是必需的,预警中断的中断使能寄存器( INTENSET.EW )使能位必须启用。写1到中断的预警中断位允许设置寄存器( INTENSET.EW )使能中断,写一个在中断预警中断使能位清零寄存器( INTENCLR.EW )禁用中断。如果预警中断使能,一个中断在看门狗超时产生条件之前产生。在正常模式下,预警偏移比特组在预警中断控制寄存器( EWCTRL.EWOFFSET )定义了早期警告中断发生的时间。正常模式操作是如图17-2所示。
预警偏移位定义之前的中断产生,相对于所述的GCLK_WDT时钟数启动看门狗超时周期。例如,如果WDT是与CONFIG.PER = 0X2和正常模式下操作EWCTRL.EWOFFSET = 0x1,将预警中断是从的开始产生16 GCLK_WDT时钟周期看门狗超时周期和看门狗超时系统复位产生从32 GCLK_WDT时钟周期启动看门狗超时周期。当编程预警偏移位用户必须采取谨慎。如果这些位定义预警中断产生的时间大于看门狗超时周期,看门狗
超时系统复位前的预警中断产生。因此,早期预警中断永远产生。
17.6.2.5 窗口模式
在窗口模式下运行时, WDT使用两个不同的超时周期,关窗超时周期( TOWDTW )和正常,或打开,超时周期( TOWDT ) 。关闭窗口超时时间定义的持续时间从8毫秒到16秒其中, WDT不能复位。如果WDT在此期间清零, WDT会发出系统复位。正常WDT超时周期,这也是从8毫秒到16s,定义了开放期的持续时间,在此期间可以WDT被清除。所述打开周期将始终遵循关闭期间,所以超时周期的总持续时间是总之关闭窗口,打开窗口的超时周期。关闭窗口由窗口期定义在配置寄存器( CONFIG.WINDOW ) ,并在打开的窗口位是由该时期位定义配置寄存器( CONFIG.PER )。
默认情况下, WDT发出系统复位后,超时和预警中断禁用。如果早期警告中断是必需的, INTENCLR / SET.EW必须设置。写一个INTENSET.EW使中断,并写一个INTENCLR.EW禁用中断。如果预警中断在窗口模式下启用,中断在打开的窗口期开始产生。
在典型的应用中,系统处于睡眠模式时,它可以使用该中断唤醒和清除看门狗
计时器,在这之后,系统可以执行其他任务,或返回到睡眠模式。
|