IWDG
简介
Nuclei IWDG(独立看门狗)最适用于要求看门狗作为主应用程序之外的完全独立进程运行,但具有较低定时精度约束的应用。它用于检测和解决软件故障引起的故障,并触发系统复位。
主要特性
IWDG的主要特性如下:
自由运行递减计数器
当32位递减计数器值达到0x0000_0000时复位(如果看门狗激活)
在JTAG调试模式下计数器冻结
功能描述
当通过向密钥寄存器(IWDG_KR)写入值0xCCCC启动独立看门狗时,计数器开始从复位值0xFFFF_FFFF递减计数。当它达到计数结束值(0x0000_0000)时,会产生复位信号(IWDG复位)。
每当在IWDG_KR寄存器中写入密钥值0xAAAA时,IWDG_RLR值就会重新加载到计数器中,并防止看门狗复位。
硬件看门狗
如果通过设备选项位启用了”硬件看门狗”功能,看门狗会在上电时自动启用,除非在计数器达到计数结束之前由软件写入密钥寄存器,否则会产生复位。
寄存器访问保护
对IWDG_PR和IWDG_RLR寄存器的写访问受到保护。要修改它们,必须首先向IWDG_KR寄存器写入代码0x5555。使用不同值对该寄存器的写访问将中断序列,寄存器访问将再次受到保护。这意味着它是重新加载操作的情况(写入0xAAAA)。
调试模式
当子系统进入调试模式时,IWDG计数器要么继续正常工作,要么停止,取决于接口状态(dbg_iwdg_stop)。
中断
此IP没有中断信号。
寄存器
寄存器描述
IWDG寄存器
IWDG中的寄存器及其相应的偏移量如表8.1:IWDG中寄存器的偏移地址所示。
偏移量 |
寄存器名称 |
功能描述 |
|---|---|---|
0x0 |
IWDG_KR |
密钥寄存器 |
0x4 |
IWDG_PR |
预分频器寄存器 |
0x8 |
IWDG_RLR |
重装载寄存器 |
0x20 |
IWDG_VER |
IP版本 |
IWDG_KR
地址偏移:0x0
字段 |
位 |
访问 |
复位值 |
描述 |
|---|---|---|---|---|
KEY |
31:0 |
RW |
0x0 |
|
IWDG_PR
地址偏移:0x4
字段 |
位 |
访问 |
复位值 |
描述 |
|---|---|---|---|---|
PR |
2:0 |
RW |
0x0 |
|
保留 |
31:3 |
/ |
0x0 |
/ |
IWDG_RLR
地址偏移:0x8
字段 |
位 |
访问 |
复位值 |
描述 |
|---|---|---|---|---|
RL |
31:0 |
RW |
0xffffffff |
|
IWDG_VERSION
地址偏移:0x20
字段 |
位 |
访问 |
复位值 |
描述 |
|---|---|---|---|---|
VERSION_NUM |
31:0 |
RO |
0x00_01_01_02 |
IWDG 的 IP 版本 |
注意:IWDG_VERSION寄存器仅在IWDG设计的完整配置中可用,否则为保留。