窗口看门狗与独立看门狗区别

独立看门狗与窗口看门狗的区别
1、相同点
都是为了保证CPU程序跑飞

2、独立看门狗
根据内部看门狗时钟频率,装载寄存器定一个时间值,比如是1000,那么独立看门狗就会按照时钟频率,从1000开始向下每隔一个时钟周期减1,如果在减到0之前,你用程序代码重新向向下计数器里面写1000(喂狗),那么定时器会重新从1000开始向下递减。如果在减到0的时候,你还没有喂狗(用新的数值覆盖计数器),就会产生复位信号。

3、窗口看门狗
根据系统时钟频率,装载一个初始值到向下计数器(假设还是1000),并且设置一个窗口值(小于装载到计数器的初始值,假设是500),窗口看门狗一般会定死窗口下线值是64。计数器从1000开始向下减,在减到500之前(1000到500间),是不允许你去喂狗的,一旦喂狗,就会产生复位信号。只有计数器值减到上限值之后(500到64),才允许你去喂狗。当计数器减到下限值(64到0之间),如果喂狗,也会产生复位信号,当减到0之后,自动产生复位信号。
所以窗口看门狗实际上就是设置一个窗口(上下限),在这个范围内,你才允许你去喂狗,只要不在这个范围之内,都会复位。

4、区别总结
大致区别在两方面:
1、窗口看门狗计时时间比独立看门狗精准
窗口看门狗使用的是系统时钟源
2、窗口看门狗严格限定喂狗时间段,独立看门狗则是只要没有到时间,都能喂狗
 

猜你喜欢

转载自blog.csdn.net/king110108/article/details/120484288