×
单片机 > 单片机程序设计 > 详情

STM32 基础系列教程 18 – IWDG

发布时间:2020-06-03 发布时间:
|

前言


学习stm32 独立看门狗(IWDG)接口使用,学会用STM32内部独立看门狗(IWDG)实现程序异常时自复位功能。


STM32F10xxx内置两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引起的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。窗口看门狗由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。


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


示例详解


基于硬件平台: STM32F10C8T6最小系统板, MCU 的型号是 STM32F103c8t6, 使用stm32cubemx 工具自动产生的配置工程,使用KEIL5编译代码。

本示例所用的最小系统板原理图:


从本节开始,关于CUBEMX工具及KEIL工具的操作将不再细讲,如果还有不熟悉的可以查看之前的教程文档。下面直接介绍工程配置:

 

系统时钟树


IWDG配置(50ms)  40000*0.05 = 2000 = 4*500


引脚配置

中断配置(保持默认即可)

 


工程代码

在main.c 中加入如下图所示代码(不带喂狗操作):


和带喂狗操作


到此,我们就完成了IWDG的学习与使用,上面的程序中,不带喂狗操作的程序会定期复位,可从PA0引看到复位后对该引脚的操作波形:

加上喂狗操作后,程序能按原先预设的逻辑长时间运行,PA0脚看有脉冲输出,PA1上的波形变得更加有序和统一:

OK,本期实验完成!下期见!


关键字:STM32  基础系列教程  IWDG 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic460533.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
单片机的抗干扰措施有哪些