[STM32F4][关于看门狗的那些事]
STM32(stm32f4XX系列)看门狗的总结:
1. 具有两个看门狗外设(独立和窗口)均可用于检测并解决由软件错误导致的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口看门狗)或产生一个系统复位。
<时钟>
2. 独立看门狗(IWDG)由其专业的低速时钟(LSI)驱动,因此即使在主时钟发生故障时仍能保持工作状态。 窗口看门狗(WWDG)时钟由APB1时钟经预分频后提供,通过可配置的时间窗口来检测应用程序非正常的迟到或过早操作。
<应用范围>
3. 独立看门狗(IWDG)最适用应用于那些需要看门狗作为一个在主程序之外,能够独立工作,并且对时间精度要求较低的场合。 窗口看门狗(WWDG)最适合用于要求看门狗在精确计时窗口起作用的应用程序。
独立看门狗(IWDG)
1. IWDG主要特性
.自由运行递减计数器
.时钟由独立RC震荡器提供(可在待机和停止模式下运行)
.当递减计数器达到0x000时产生复位(开启看门狗)
IWDG 功能说明
当通过对关键字寄存器 (IWDG_KR) 写入值 0xCCCC 启动独立看门狗时,计数器开始从复位
值 0xFFF 递减计数。当计数器计数到终值 (0x000) 时会产生一个复位信号(IWDG 复位)。
任何时候将关键字 0xAAAA 写到 IWWDG_KR 寄存器中, IWDG_RLR 的值就会被重载到计
数器,从而避免产生看门狗复位。
硬件看门狗
如果通过器件选项位使能“硬件看门狗”功能,上电时将自动使能看门狗;如果在计数器计
数结束前,若软件没有向关键字寄存器写入相应的值,则系统会产生复位。
寄存器访问保护
IWDG_PR 和 IWDG_RLR 寄存器具有写访问保护。若要修改寄存器,必须首先对 IWDG_KR
寄存器写入代码 0x5555。而写入其他值则会破坏该序列,从而使寄存器访问保护再次生
效。这意味着重装载操作(即写入 0xAAAA)也会启动写保护功能。
状态寄存器指示预分频值和递减计数器是否正在被更新。