STM32学习笔记——看门狗

目录

一、看门狗概述

1、看门狗工作原理

2、独立看门狗IWDG主要性能:

二、看门狗相关寄存器

1、IWDG_KR (Independent Watchdog_Key Register) 关键词寄存器

2、IWDG_PR (Independent Watchdog_Prescaler Register) 预分频寄存器

3、IWDG_RLR (Independent Watchdog_Reload Register) 重载寄存器

4、IWDG_SR (Independent Watchdog_Status Register) 状态寄存器

三、看门狗配置 


一、看门狗概述

        STM32自带两个看门狗:独立看门狗IWDG和窗口看门狗WWDG。

        看门狗的作用是用来检测和解决软件错误引起的故障;解决程序由于不正当的操作或者程序自身原因所造成的死循环或者“跑飞”现象。

        用户需要在规定时间内进行喂狗操作,否则看门狗将执行一次MCU复位操作。

1、看门狗工作原理

        看起看门狗后设置递减计数器的初始值,当计数值达到溢出值时,产生MCU复位,此时本来运行的程序将会终止,并且重新启动单片机。在使用看门狗之后,在正常运行的程序中加入喂狗的程序,即采用定时器的方式每隔一段时间进行一次重置计数器装载值,这样只要程序正常运行,没有出现故障或软件错误程序就会不断地定时喂狗,从而不会使计数器超时产生复位信号。

2、独立看门狗IWDG主要性能:

        ①IWDG采用的是LSI,评率为40KHz,这个在时钟那一节也提到过。

        ②自由运行的递减计数器

        ③时钟由独立的RC振荡器提供,也就是说可在停止和待机模式下工作

        ④看门狗被激活后,则在计数器计数到0x000时产生复位

图1.1 IWDG框图 


*WWDG (Window Watchdog) 窗口看门狗由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟 或过早的操作。 IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。


二、看门狗相关寄存器

1、IWDG_KR (Independent Watchdog_Key Register) 关键词寄存器

2、IWDG_PR (Independent Watchdog_Prescaler Register) 预分频寄存器

3、IWDG_RLR (Independent Watchdog_Reload Register) 重载寄存器

4、IWDG_SR (Independent Watchdog_Status Register) 状态寄存器

三、看门狗配置 

        看门狗初始化→喂狗→主函数

若文章内容出现错误,恳请各位批评指正,感激不尽!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值