STM32-(32):窗口看门狗

上一篇:STM32-(31):独立看门狗 下一篇:STM32-(33):低功耗模式与唤醒

窗口看门狗

窗口看门狗通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,此看门狗电路在达到可编程的时间周期时,会产生一个MCU复位。在递减计数器达到窗口寄存器之前,如果递减计数器值的第7位(在控制寄存器中)被刷新,那么也将产生一个MCU复位。这表明递减计数器需要在一个有限的窗口中被刷新。

T6即是窗口看门狗的自减计数器的第六位(最高位),该计数器的时钟来自PCLK1/4096/预设分频数。在该计数器的T6位变为0后(小于0X40 ) ,就会引起一复位。这是窗口的下限。而当计数器的值在大于窗口配置寄存器的窗口值之前就被修改的话,也会引起一次复位,这里窗口值是上限。窗口值是由用户自己设定的,根据实际要求来设计窗口值,但是一定要确保窗口值大于0X40,否则窗口就不存在了。

STM32-(32):窗口看门狗_第1张图片
综上所述:自减计数器的T6位变为0后就会复位(0100 0000)0x40,所以自减计数器的值需在减到 0x40(A) 之前去刷新,另外窗口配置寄存器会配置一个值B,B的值大于A,B与A的差值称为窗口,自减计数器的值大于B之前刷新也会复位,所以只能在B与A之间去修改自减计数器的值。图中Refresh Window代表窗口区间。

STM32-(32):窗口看门狗_第2张图片

上一篇:STM32-(31):独立看门狗 下一篇:STM32-(33):低功耗模式与唤醒

你可能感兴趣的:(STM32-(32):窗口看门狗)