访问电脑版页面

导航:老古开发网手机版STM32单片机STM32单片机看门狗

stm32独立看门狗和窗口看门狗的区别

导读:1)独立看门狗没有中断,窗口看门狗有中断2)独立看门狗有硬件软件之分,窗口看门狗只能软件控制3)独立看门狗只有下限,窗口看门狗又下限和上限4)独立看门狗是12位递减的。窗口看门狗是7位递减的5)独立看门狗是用
关键字:
STM32,独立看门狗,窗口看门狗,

1)独立看门狗没有中断,窗口看门狗有中断

2)独立看门狗有硬件软件之分,窗口看门狗只能软件控制

3)独立看门狗只有下限,窗口看门狗又下限和上限

4)独立看门狗是12位递减的。窗口看门狗是7位递减的

5)独立看门狗是用的内部的大约40KHZ RC振荡器,窗口看门狗是用的系统时钟APB1ENR

以上是我总结的

接下来我们介绍一下独立看门狗和窗口看门狗,这里我们就不讲解程序了,很简单的,配置一下寄存器就可以使用了。

独立看门狗没有中断功能,只要在计数器减到0(下限)之前,重新装载计数器的值,就不会产生复位,独立看门够有硬件和软件之分,硬件是通过烧写器的“设定选项几节等”配置,一旦开启了硬件看门狗,那么就停不下来了,只能在重新配置“设定选项几节等”才能关掉硬件看门狗,软件看门狗只需要设置IWDG->KR=0XCCCC;就可以启动看门狗了,软件狗可以在系统复位时关掉,如果在在初始化里开启软件看门狗,那就开启了软件看门狗,

独立看门狗是12位递减的寄存器,使用片子内部的RC振荡器,这个振荡器是关不掉的。

窗口看门狗有中断,这个中断的作用是在计数器达到下限0x40的时候,产生中断,让你喂狗,如果你不喂狗,计数器的值变为0x3f的时候,将会产生系统复位,即使是喂狗,也应该在中断里快速喂狗,要不时间长了计数器减一也会变成0x3f产生复位,这个时间根据芯片手册的公式进行计算即可得到,窗口看门狗只有软件开启方式,还有一个上限值,这个值如果大于计数器的初始值,那么就没有任何作用了,这个值小于计数器的初始值得时候,当计数器的值大于上限值时你对计数器进行装载,将会产生复位,只有在计数器减到小于上限值时,你才能重新装载计数器,意思就是说只有计数器的值在上限值和下限值之间你才能装载计数器,否则就会产生系统复位,当上限值小于下限值,也没有意义。

独立看门狗Iwdg——我的理解是独立于系统之外,因为有独立时钟,所以不受系统影响的系统故障探测器。主要用于监视硬件错误。

窗口看门狗wwdg——我的理解是系统内部的故障探测器,时钟与系统相同。如果系统时钟不走了,这个狗也就失去作用了。主要用于监视软件错误。

以下是经过测试发现的:

//发现1:当窗口值大于等于计数器的值,无论怎么更改配置的顺序,都是正确的运行结果
//发现2:当窗口值小于计数器的值,顺序一旦改变就运行错误

经过测试发现,当初始化的顺序不是正常顺序的话,就会把WWDG->SR置一,为什么我也不知道,谁知道片子里面怎么搞的
你在开启中断就进入中断的,这时你又进行喂狗,就会复位的,因为这时计数器的值>上限窗口的值,所以会复位,所以就会一直出错下去
解决办法是,初始话的时候最后两句是先清除中断标志然后在开启中断,如果你不这么干,那么在初始化的时候很可能把WWDG->SR
置位,那么你在开启中断,就会毫不犹豫的进入中断,你在中断重装计数器值得时候,就会产生复位


来源:互联网   作者:karen  2019/1/8 16:20:01
栏目: [ STM32单片机看门狗]

相关阅读

STM32独立看门狗和低功耗模式_RTC定时唤醒来喂狗

一文读懂STM32之独立看门狗/窗口看门狗的原理

STM32F4系列MCU独立看门狗IWDG的应用

STM32看门狗配置(独立看门狗IWDG和窗口看门狗WWDG)

STM32看门狗WWDG和IWDG的区别是什么

STM32F4 窗口看门狗WWDG

STM32F4 独立看门狗IWDG

stm32独立看门狗和窗口看门狗的区别

STM32F0独立和窗口看门狗的功能解析

STM32F4学习笔记9——独立看门狗与窗口看门狗

STM32之独立看门狗与窗口看门狗总结

stm32 窗口看门狗[操作寄存器+库函数]

STM32单片机中的独立看门狗与窗口看门狗有哪些不同之处

STM32单片机的独立看门狗和窗口看门狗的特点及用法解析

STM32独立看门狗和窗口看门狗应用的区别

STM32独立看门狗IWDG与窗口看门狗WWDG研究

STM32单片机ADC的模拟看门狗的测试

STM32F103学习笔记(六) 独立看门狗and窗口看门狗

STM32 独立看门狗简介

STM32F107的独立看门/窗口看门狗实验总结