窗口看门狗(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进行装备。包含使能窗口看门狗、敞开中止、设置计数器的初始值、设置窗口值并设置分频数WDGTB
3)敞开WWDG中止并分组
4)编写中止服务函数
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/318348.html