大家好,小福来为大家解答以上的问题。stm32看门狗失灵,stm32看门狗这个很多人还不知道,现在让我们一起来看看吧!
1、stm32独立看门狗和窗口看门狗的区别为:时钟源不同、中断不同、使用条件不同。
2、一、时钟源不同stm32独立看门狗:stm32独立看门狗使用的是内部专门的 40Khz低速时钟,不需要使能时钟操作。
3、2、窗口看门狗:窗口看门狗使用的是 PCLK1的时钟,使用前需要先使能时钟。
4、二、中断不同stm32独立看门狗:stm32独立看门狗没有中断,超时直接复位。
5、2、窗口看门狗:窗口看门狗可以在中断中做复位前的函数操作。
6、三、使用条件不同stm32独立看门狗:stm32独立看门狗一般用于避免程序跑飞或者死循环。
7、2、窗口看门狗:窗口看门狗避免程序不安预定逻辑执行,比如先于理想环境完成,或者后于极限时间超时。
8、1)独立看门狗没有中断,窗口看门狗有中断2)独立看门狗有硬件软件之分,窗口看门狗只能软件控制 3)独立看门狗只有下限,窗口看门狗又下限和上限 4)独立看门狗是12位递减的。
9、窗口看门狗是7位递减的 5)独立看门狗是用的内部的大约40KHZ RC振荡器,窗口看门狗是用的系统时钟APB1ENR独立看门狗没有中断功能,只要在计数器减到0(下限)之前,重新装载计数器的值,就不会产生复位。
10、窗口看门狗有中断,这个中断的作用是在计数器达到下限0x40的时候,产生中断,让你喂狗,如果你不喂狗,计数器的值变为0x3f的时候,将会产生系统复位,即使是喂狗,也应该在中断里快速喂狗,要不时间长了计数器减一也会变成0x3f产生复位。
11、还有一个上限值,这个值如果大于计数器的初始值,那么就没有任何作用了,这个值小于计数器的初始值得时候,当计数器的值大于上限值时你对计数器进行装载,将会产生复位,只有在计数器减到小于上限值时,你才能重新装载计数器,意思就是说只有计数器的值在上限值和下限值之间你才能装载计数器,否则就会产生系统复位,当上限值小于下限值,也没有意义。
12、 窗口看门狗只是运行时的一个监控看门狗……但如果程序出错跑偏,但是还能回来喂狗是没法起作用的。
13、 独立狗是利用外部或内部低速PLL32k频率运行的独立于程序的……如果死机等……是可以重新启动芯片的。
本文到此分享完毕,希望对大家有所帮助。