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

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

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

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

4、区别总结
大致区别在以下方面:
1、窗口看门狗严格限定喂狗时间段,独立看门狗则是只要没有到时间,都能喂狗
2、精度不同:独立看门狗使用12位的递减计数器;窗口看门狗使用7位的递减计数器                    3、工作方式不同:独立看门狗是一个独立的系统,不依赖于CPU的运行,即使主程序发生故障,它也能继续工作;窗口看门狗依赖于系统时钟,它的计数器递减速度与系统时钟频率相关。      4、中断支持不同:独立看门狗没有中断功能,需要在计数器减到0(下限)之前重新装载计数器的值,以防止复位;窗口看门狗具有中断功能,当计数器达到下限值时会产生中断,要求用户及时喂狗,否则计数器进一步递减会导致系统复位。                                                                              5、使用时钟不同。独立看门狗使用内部大约40KHz的RC振荡器;窗口看门狗使用54MHZ系统时钟。

总的来说,窗口看门狗在精度和喂狗时间上提供了更多的控制和灵活性,而独立看门狗则更加简单和独立。


参考原文链接:https://blog.csdn.net/king110108/article/details/120484288

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值