STM32独立看门狗IWDG

一、IWDG简介

独立看门狗(Independent Watchdog, IWDG ),什么是看门狗?字面意思——看门的,有陌生人来,就会叫。实际在嵌入式领域里,看门狗也是这种作用,当软件程序发生故障或者程序跑飞时,看门狗会产生复位信号,复位系统。

二、SMT32的IWDG

2.1 STM32的IWDG简介

STM32内置两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引起的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。

(1)看门狗分为两类:

独立看门狗(IWDG):独立工作,对时间精度要求较低;
窗口看门狗(WWDG):要求看门狗在精确计时窗口起作用。

(2)区别在于:

窗口看门狗:假如没有定时喂狗,则触发一个中断或产生系统复位。
独立看门狗:假如没有定时喂狗,会产生系统复位

独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。

窗口看门狗由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。

IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精 度要求较低的场合。WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。

  • • 自由运行的12位递减计数器
  • • 时钟由独立的RC振荡器提供(可在停止和待机模式下工作)
  • • 看门狗被激活后,则在计数器计数至0x000时产生复位

一旦使能IWDG,就无法关闭。只有等到复位之后,才能将IWDG关闭。
 

2.2 喂狗

通过上面的简介可以知道,独立看门狗实际就是一个12位的递减计数器,当计数器的值递减到0的时候,就会产生复位。但是,如果我们在计数值递减到0之前,重新给计数器赋值,那么就不会再产生复位。这个操作叫做喂狗。

2.3 IWDG原理框图

        在键寄存器(IWDG_KR) 中写入 0xCCCC,开始启用 独立看门狗;此时计数器开始 从其复位值0xFFF递减

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值