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

2019-10-15 08:54 1112 8 3 分类: MCU/ 嵌入式 文集: 程序设计

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
置位,那么你在开启中断,就会毫不犹豫的进入中断,你在中断重装计数器值得时候,就会产生复位


PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

curton 2019-10-16 21:06

学习了
相关推荐阅读
minicaihong 2020-10-22 16:44
场效应管放大电路的直流偏置电路详解
什么是偏置电路晶体管构成的放大器要做到不失真地将信号电压放大,就必须保证晶体管的发射结正偏、集电结反偏。即应该设置它的工作点。所谓工作点就是通过外部电路的设置使晶体管的基极、发射极和集电极处于所要求的...
minicaihong 2020-10-22 16:37
场效应管偏置电路-场效应管偏置电路的工作原理及作用分析
什么是偏置电路晶体管构成的放大器要做到不失真地将信号电压放大,就必须保证晶体管的发射结正偏、集电结反偏。即应该设置它的工作点。所谓工作点就是通过外部电路的设置使晶体管的基极、发射极和集电极处于所要求的...
minicaihong 2020-10-22 16:27
MOS管偏置电路-MOS管直流、恒流等偏置电路图文及方程详解
MOS管偏置电路MOS管直流偏置电路MOS管的单电源直流偏置电路有两种:1、只能用于结型和耗尽型MOS管的自给偏置电路。2、可用于各种MOS管的分压式偏置电路自给MOS管偏置电路(1)图解法根据图中电...
minicaihong 2020-05-27 09:50
sprintf 格式化字符串
sprintf 格式化字符串好久没写博客了,又遇到自己觉得很傻的问题,格式化字符串还要找下定义和用法sprintf() 函数把格式化的字符串写入变量中。arg1、arg2、++ 参数将被插入...
minicaihong 2020-05-25 15:07
12T和1T的单片机
标准51是12T的,就是说12个时钟周期(晶振周期,例如12M的,周期是1/12M,单位秒),机器做一个指令度周期,刚好就是1/12M*12=1uS,常见指令例如nop就是一个周期,刚好1uS,其他的...
minicaihong 2020-05-23 16:22
4HC595驱动8*8点阵屏
74HC595驱动8*8点阵屏置顶 菜袅1号 2020-05-19 10:00:03   52   收藏展开该项目使用国产M0核单片机,驱动方式类似于stm32平台;点阵驱动芯片:...
EE直播间
更多
我要评论
1
8
关闭 站长推荐上一条 /3 下一条