【STM32】独立看门狗

00. 目录

01. IWDG简介

此器件具有两个嵌入式看门狗外设,具有安全性高、定时准确及使用灵活的优点。两个看门狗外设(独立和窗口)均可用于检测并解决由软件错误导致的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。
独立看门狗 (IWDG) 由其专用低速时钟 (LSI) 驱动,因此即便在主时钟发生故障时仍然保持工作状态。窗口看门狗 (WWDG) 时钟由 APB1 时钟经预分频后提供,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。IWDG 最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。WWDG 最适合那些要求看门狗在精确计时窗口起作用的应用程
序。

02. IWDG主要特性

● 自由运行递减计数器
● 时钟由独立 RC 振荡器提供(可在待机和停止模式下运行)
● 当递减计数器值达到 0x000 时产生复位(如果看门狗已激活)

03. IWDG功能说明

当通过对关键字寄存器 (IWDG_KR) 写入值 0xCCCC 启动独立看门狗时,计数器开始从复位值 0xFFF 递减计数。当计数器计数到终值(0x000) 时会产生一个复位信号(IWDG 复位)。

任何时候将关键字 0xAAAA 写到 IWWDG_KR 寄存器中,IWDG_RLR 的值就会被重载到计数器,从而避免产生看门狗复位。

硬件看门狗
如果通过器件选项位使能“硬件看门狗”功能,上电时将自动使能看门狗;如果在计数器计数结束前,若软件没有向关键字寄存器写入相应的值,则系统会产生复位。

寄存器访问保护
IWDG_PR 和 IWDG_RLR 寄存器具有写访问保护。若要修改寄存器,必须首先对 IWDG_KR寄存器写入代码 0x5555。而写入其他值则会破坏该序列,从而使寄存器访问保护再次生效。这意味着重装载操作(即写入 0xAAAA)也会启动写保护功能。状态寄存器指示预分频值和递减计数器是否正在被更新。

04. IWDG框图

在这里插入图片描述

05. IWDG寄存器

5.1 关键字寄存器 (IWDG_KR)

Key register
偏移地址:0x00
复位值:0x0000 0000(通过待机模式复位)
在这里插入图片描述

5.2 预分频器寄存器 (IWDG_PR)

Prescaler register
偏移地址:0x04
复位值:0x0000 0000
在这里插入图片描述

5.3 重载寄存器 (IWDG_RLR)

Reload register
偏移地址:0x08
复位值:0x0000 0FFF(待机模式时复位)
在这里插入图片描述

5.4 状态寄存器 (IWDG_SR)

Status register
偏移地址:0x0C
复位值:0x0000 0000(待机模式时不复位)
在这里插入图片描述

5.5 IWDG寄存器映射

下表提供了 IWDG 寄存器映射和复位值。
在这里插入图片描述

06. 附录

6.1 【STM32】STM32系列教程汇总

网址:【STM32】STM32系列教程汇总

07. 声明

STM32F4xx英文参考手册

猜你喜欢

转载自blog.csdn.net/dengjin20104042056/article/details/108195645