[应用相关] 窗口看门狗和独立看门狗区别

[复制链接]
1523|5
 楼主| 643757107 发表于 2018-8-26 11:07 | 显示全部楼层 |阅读模式

最近在cortex-M系列芯片上进行看门狗编程的时候发现了关于看门狗有两个:(独立)看门狗和窗口看门狗。然后就查找了下网络资源,对这两个看门狗做了区分。

1、相同点

    都是为了保证CPU程序跑飞

2、独立看门狗

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


 楼主| 643757107 发表于 2018-8-26 11:07 | 显示全部楼层

3、窗口看门狗

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

    所以窗口看门狗实际上就是设置一个窗口(上下限),在这个范围内,你才允许你去喂狗,只要不在这个范围之内,都会复位。

4、区别总结

    大致区别在两方面:

    1、窗口看门狗计时时间比独立看门狗精准   

        窗口看门狗使用的是系统时钟源

    2、窗口看门狗严格限定喂狗时间段,独立看门狗则是只要没有到时间,都能喂狗


小明的同学 发表于 2018-8-26 18:43 | 显示全部楼层
还没用过窗口看懵狗
xuanhuanzi 发表于 2018-8-26 19:35 | 显示全部楼层
都是让程序稳定运行的。
dongliushui 发表于 2018-8-26 21:03 | 显示全部楼层
一般看门狗用的多,不过好多程序都不用。
dongliushui 发表于 2018-8-26 21:04 | 显示全部楼层
进入main后先关闭看门狗的操作。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

223

主题

3972

帖子

11

粉丝
快速回复 在线客服 返回列表 返回顶部