您的位置:首页 > 热点 >

STM32窗口看门狗程序

窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位(WWDG->CR的第六位)变成0前被刷新,看门狗电路在达到预置的时间周期时,会产生一个MCU复位。在递减计数器达到窗口配置寄存器(WWDG->CFR)数值之前,如果7位的递减计数器数值(在控制寄存器中)被刷新, 那么也将产生一个MCU复位。这表明递减计数器需要在一个有限的时间窗口中被刷新。图 3.6.1.1中,T[6:0]就是WWDG_CR的低七位,W[6:0]即是WWDG->CFR的低七位。T[6:0]就是窗口看门狗的计数器,而W[6:0]则是窗口看门狗的上窗口,下窗口值是固定的(0X40)。当窗口看门狗的计数器在上窗口值之外被刷新,或者低于下窗口值都会产生复位。上窗口值(W[6:0])是由用户自己设定的,根据实际要求来设计窗口值,但是一定要确保窗口值大于0X40,否则窗口就不存在了。窗口看门狗的超时公式如下:Twwdg=(4096×2^WDGTB×(T[5:0]+1)) /Fpclk1;其中:Twwdg:WWDG超时时间(单位为ms)Fpclk1:APB1的时钟频率(单位为Khz)WDGTB:WWDG的预分频系数T[5:0]:窗口看门狗的计数器低6位窗口看门狗寄存器介绍:如何使用窗口看门狗:1)使能WWDG时钟2)设置WWDG_CFR和WWDG_CR两个寄存器在时钟使能完后,我们设置WWDG的CFR和CR两个寄存器,对WWDG进行配置。包括使能窗口看门狗、开启中断、设置计数器的初始值、设置窗口值并设置分频数WDGTB3)开启WWDG中断并分组4)编写中断服务函数

标签: STM32窗口看门

相关阅读