目录
1. WWDG简介
2. WWDG功能框图解析
3. 启动方式
(1)软件启动
(2)硬件启动
4. WWDG超时图解及超时时间计算
独立看门狗(Independent Watchdog, IWDG工作原理是一个递减计数器不断地递减计数,当减到0之前如果没有喂狗就会产生系统复位(IWDG 独立看门狗 知识详解_zhangduang_KHKW的博客-CSDN博客)。
窗口看门狗(Window Watchdog,WWDG)跟独立看门狗类似,也是一个递减计数器不断地递减计数,当减到一个固定的值0x40时还不喂狗的话,就会产生复位,0x40是窗口的下限,称为下窗口,是固定的值。当计数器减到窗值寄存器的值与0x40之间,这段期间为窗口,可以喂狗,窗值寄存器的值为窗口的上限,称为上窗口。
WWDG只能在窗口中喂狗,过早或过晚喂狗都会产生复位。
按照图中标号依次分析两个寄存器和其他几个逻辑门器件,就可以清晰了解WWDG的工作原理。
① WWDG_CFR配置寄存器,此寄存器装载着WWDG的窗值W[6:0],用来与WWDG_CR中的T[6:0]进行比较。
② WWDG_CR控制寄存器,一共8个bit,第7bit也就是WDGA位是WWDG开启位,当WDGA位置1时,窗口看门狗开启。如果在选项字节中使能了硬件开启窗口看门狗的功能,则WDGA位不起作用。T[6:0]位是一个7位向下递减计数器,取值范围是0x7F至0x40。如果T[6:0]由0x40变为0x3F,即T[6]变为0时,取反输入或门 ⑤ ,则或门 ⑤ 输入1,产生窗口看门狗复位。
③ 比较器,用来比较T[6:0]是否大于W[6:0],如果是,则输出1,否则输出0。如果T[6:0]大于W[6:0],意味着计数器的值现在不在窗口内。如果T[6:0]小于W[6:0],且T[6]不为0,也就是没有递减到0x3F,则计数器的值现在在窗口内,可以重载WWDG_CR,也就是可以喂狗。
④ 二输入与门,一个输入来自比较器 ③,另一个输入来自是否重载WWDG_CR(喂狗),是的话输入1。当T[6:0]大于W[6:0],也就是计数器的值不在窗口内,此时喂狗与门输出1,引发系统复位。
⑤ 二输入或门,一个输入来自于与门 ④ ,另一个输入来自T[6]取反。
⑥ 二输入与门,一个输入来自于或门 ⑤,另一个输入来自WDGA位。
配置WWDG_CR寄存器WDGA位为1,开启WWDG,但软件只能开狗,不能关狗。
IAP方式修改选项字节,硬件开启WWDG后,WWDG将时钟开启,WDGA位将不起作用。
① 阶段允许喂狗,T[6:0]小于W[6:0];② 阶段不允许喂狗,T[6:0]大于W[6:0],不在窗口内。
WWDG超时计算公式:
PDIV[1:0]为分频系数。
例:PCLK时钟频率为6MHz,分频系数为2,T[6:0]为0x52,计算超时溢出时间?
答:PCLK时钟频率为6MHz,则其时钟周期为167ns,代入公式
相关知识
WWDG 窗口看门狗 知识详解
独立看门狗和窗口看门狗
10kv线路看门狗电杆安装视频
IWDG — 独立看门狗
STM32独立看门狗(宠物狗)
STM32的IWDG(独立看门狗)详细用法
实验6:独立看门狗实验
STM32CubeMX学习笔记(11)——IWDG独立看门狗使用
宠物狗与看门狗
宠物繁殖知识详解(宠物繁殖知识详解)
网址: WWDG 窗口看门狗 知识详解 https://m.mcbbbk.com/newsview684029.html
上一篇: 犬只肾上腺皮质机能亢进知识简介 |
下一篇: 犬类知识问答 |