STM32
登录
直播中
美信电子
13年用户
415经验值
擅长:射频微波与天线
私信
关注
[问答]
有关窗口看门狗(WWDG)的基本知识汇总
开启该帖子的消息推送
WWDG
寄存器
窗口看门狗的主要特性是什么?
窗口看门狗(WWDG)有哪些功能?
如何去计算窗口看门狗(WWDG)的超时时间?
窗口看门狗(WWDG)的相关寄存器有哪些?
回帖
(1)
李耘蝶
2021-8-9 18:00:04
1. WWDG简介
窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在 T6 位变成 0 前被刷新,看门狗威廉希尔官方网站 在达到预置的时间周期时,会产生一个 MCU 复位。如果在递减计数器达到窗口寄存器值之前刷新控制寄存器中的 7 位递减计数器值,也会产生 MCU 复位。这意味着必须在限定的时间窗口内刷新计数器。
2. WWDG主要特性
可编程的自由运行递减计数器
复位条件
— 当递减计数器值小于 0x40 时复位(如果看门狗已激活)
— 在窗口之外重载递减计数器时复位(如果看门狗已激活)(请参见 图 200)
提前唤醒中断 (EWI):当递减计数器等于 0x40 时触发(如果已使能且看门狗已激活)
3. WWDG功能说明
如果激活看门狗(WWDG_CR 寄存器中的 WDGA 位置 1),则当 7 位递减计数器(T[6:0]位)从 0x40 滚动到 0x3F(T6 已清零)时会引发复位。当计数器值大于窗口寄存器中所存储的值时,如果软件重载计数器,则会产生复位。
应用程序在正常运行过程中必须定期地写入 WWDG_CR 寄存器以防止 MCU 发生复位。只有当计数器值低于窗口寄存器值时,才能执行此操作。存储在 WWDG_CR 寄存器中的值必须介于 0xFF 和 0xC0 之间:
使能看门狗
在系统复位后,看门狗总是处于关闭状态。可通过设置 WWDG_CR 寄存器中的 WDGA 位来使能看门狗,之后除非执行复位操作,否则不能再次关闭。
控制递减计数器
递减计数器处于自由运行状态:即使禁止看门狗,递减计数器仍继续递减计数。当使能看门狗时,必须将 T6 位置 1,以防止立即复位。
T[5:0] 位包含了看门狗产生复位之前的计时数目;复位前的延时时间在一个最小值和一个最大值之间变化,这是因为写入 WWDG_CR 寄存器时,预分频值是未知的(请参见 图 200)。配置寄存器 (WWDG_CFR) 包含窗口的上限:为防止发生复位,当递减计数器的值低于窗口寄存器值且大于 0x3F 时必须重载。
看门狗中断高级特性
如果在产生实际复位之前必须执行特定的安全操作或数据记录,则可使用提前唤醒中断(EWI)。通过设置 WWDG_CFR 寄存器中的 EWI 位使能 EWI 中断。当递减计数器的值为0x40 时,将生成 EWI 中断。在复位器件之前,可以使用相应的中断服务程序 (ISR) 来触
发特定操作(例如通信或数据记录)。
在某些应用中,可以使用 EWI 中断来管理软件系统检查和/或系统恢复/功能退化,而不会生成 WWDG 复位。在这种情况下,相应的中断服务程序 (ISR) 可用来重载 WWDG 计数器以避免 WWDG 复位,然后再触发所需操作。
通过将 0 写入 WWDG_SR 寄存器中的 EWIF 位来清除 EWI 中断。
4. 设置看门狗超时
有关 T WWDG 的最小值和最大值,请参见下表。
温馨提示
写入 WWDG_CR 寄存器时,始终将 1 写入 T6 位,以避免生成立即复位。
5. WWDG寄存器
5.1 控制寄存器 (WWDG_CR)
Status register
偏移地址:0x00
复位值:0x0000 007F
5.2 配置寄存器 (WWDG_CFR)
Configuration register
偏移地址:0x04
复位值:0x0000 007F
5.3 状态寄存器 (WWDG_SR)
Status register
偏移地址:0x08
复位值:0x0000 0000
5.4 WWDG寄存器映射
1. WWDG简介
窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在 T6 位变成 0 前被刷新,看门狗威廉希尔官方网站 在达到预置的时间周期时,会产生一个 MCU 复位。如果在递减计数器达到窗口寄存器值之前刷新控制寄存器中的 7 位递减计数器值,也会产生 MCU 复位。这意味着必须在限定的时间窗口内刷新计数器。
2. WWDG主要特性
可编程的自由运行递减计数器
复位条件
— 当递减计数器值小于 0x40 时复位(如果看门狗已激活)
— 在窗口之外重载递减计数器时复位(如果看门狗已激活)(请参见 图 200)
提前唤醒中断 (EWI):当递减计数器等于 0x40 时触发(如果已使能且看门狗已激活)
3. WWDG功能说明
如果激活看门狗(WWDG_CR 寄存器中的 WDGA 位置 1),则当 7 位递减计数器(T[6:0]位)从 0x40 滚动到 0x3F(T6 已清零)时会引发复位。当计数器值大于窗口寄存器中所存储的值时,如果软件重载计数器,则会产生复位。
应用程序在正常运行过程中必须定期地写入 WWDG_CR 寄存器以防止 MCU 发生复位。只有当计数器值低于窗口寄存器值时,才能执行此操作。存储在 WWDG_CR 寄存器中的值必须介于 0xFF 和 0xC0 之间:
使能看门狗
在系统复位后,看门狗总是处于关闭状态。可通过设置 WWDG_CR 寄存器中的 WDGA 位来使能看门狗,之后除非执行复位操作,否则不能再次关闭。
控制递减计数器
递减计数器处于自由运行状态:即使禁止看门狗,递减计数器仍继续递减计数。当使能看门狗时,必须将 T6 位置 1,以防止立即复位。
T[5:0] 位包含了看门狗产生复位之前的计时数目;复位前的延时时间在一个最小值和一个最大值之间变化,这是因为写入 WWDG_CR 寄存器时,预分频值是未知的(请参见 图 200)。配置寄存器 (WWDG_CFR) 包含窗口的上限:为防止发生复位,当递减计数器的值低于窗口寄存器值且大于 0x3F 时必须重载。
看门狗中断高级特性
如果在产生实际复位之前必须执行特定的安全操作或数据记录,则可使用提前唤醒中断(EWI)。通过设置 WWDG_CFR 寄存器中的 EWI 位使能 EWI 中断。当递减计数器的值为0x40 时,将生成 EWI 中断。在复位器件之前,可以使用相应的中断服务程序 (ISR) 来触
发特定操作(例如通信或数据记录)。
在某些应用中,可以使用 EWI 中断来管理软件系统检查和/或系统恢复/功能退化,而不会生成 WWDG 复位。在这种情况下,相应的中断服务程序 (ISR) 可用来重载 WWDG 计数器以避免 WWDG 复位,然后再触发所需操作。
通过将 0 写入 WWDG_SR 寄存器中的 EWIF 位来清除 EWI 中断。
4. 设置看门狗超时
有关 T WWDG 的最小值和最大值,请参见下表。
温馨提示
写入 WWDG_CR 寄存器时,始终将 1 写入 T6 位,以避免生成立即复位。
5. WWDG寄存器
5.1 控制寄存器 (WWDG_CR)
Status register
偏移地址:0x00
复位值:0x0000 007F
5.2 配置寄存器 (WWDG_CFR)
Configuration register
偏移地址:0x04
复位值:0x0000 007F
5.3 状态寄存器 (WWDG_SR)
Status register
偏移地址:0x08
复位值:0x0000 0000
5.4 WWDG寄存器映射
举报
更多回帖
rotate(-90deg);
回复
相关问答
WWDG
寄存器
有关窗口
看门狗
WWDG
的
基本知识
2021-09-27
1632
有关窗口
看门狗
的
基本知识
汇总
2021-09-09
1647
IWDG独立
看门狗
与
WWDG
窗口
看门狗
开发指南
2021-09-23
1169
有关窗口
看门狗
WWDG
的相关
知识
简析
2021-09-23
1062
如何防止
窗口
看门狗
(
WWDG
)复位
2021-08-12
1693
独立
看门狗
IWDG与
窗口
看门狗
WWDG
的区别在哪
2021-09-26
1095
窗口
看门狗
(
WWDG
)库函数配置有哪些步骤
2021-08-16
1391
窗口
看门狗
WWDG
比独立
看门狗
IWDG多了哪些优势
2021-09-23
1053
有关
STM32的独立
看门狗
与
窗口
看门狗
的
知识
汇总
2021-09-03
1143
窗口
看门狗
WWDG
该怎样去使用呢
2022-01-17
995
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分