基于单片机下Watchdog之浅析

描述

一、Watchdog介绍

单片机的watchdog一般都有两个,一个是独立看门狗IWDG,一个是窗口看门狗WWDG。

以STM32为例,STM32的独立看门狗是一个12位的递减计数器,当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即IWDG_RESET。看门狗功能由VDD电压域供电,在停止模式和待机模式下仍能工作。

关于STM32的独立看门狗的框图如下所示:

STM32

二、Watchdog的工作原理

为了防止程序在运行过程中跑飞,加上一个看门狗实时监控程序,如果在规定的时间内没有喂狗,则狗叫会是的单片机复位。

如果在规定的时间内,刷新计数器的值,则单片机就不会产生复位,即我们所说的喂狗。

STM32的看门狗超时时间(40KHz的输入时钟(LSI))如下表所示:

STM32

三、STM32的IWDG配置

void IWDG_Config(void) {     IWDG_WriteAccessCmd( IWDG_WriteAccess_Enable );   IWDG_SetPrescaler(IWDG_Prescaler_64);   IWDG_SetReload(500);   IWDG_ReloadCounter();   IWDG_Enable();   }

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分