2023版 STM32实战8 独立看门狗(IWDG)

IWDG简介

STM32F10xxx内置两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引起的故障。

说人话就是能解决程序跑飞的问题。

编写代码思路

-1- 使用这个功能必须解除写保护
-2- IWDG使用的是低速内部时钟 (LSI)

-3- 分频系数和定时时间

代码编写(可直接拷贝使用)

c 复制代码
#include "stm32f10x.h"
#include "usart.h"
#include "delay.h"

void IWDG_CFG(void)
{
	
	//判断是不是独立看门狗复位
	if (RCC_GetFlagStatus(RCC_FLAG_IWDGRST) != RESET)
	{
		printf("IwDG RESET\r\n");
		RCC_ClearFlag();
		
	}
	
	
	//打开低速内部时钟
	RCC_LSICmd(ENABLE);
	//等待时钟平稳
	while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
	//打开写保护
	IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
	//设置分频
	IWDG_SetPrescaler(IWDG_Prescaler_32);
	//设置重装值
	IWDG_SetReload(128);
	//喂一次狗
	IWDG_ReloadCounter();
	//开启看门狗
	IWDG_Enable();

}


 int main(void)
 {	
	delay_init();
	uart_init(115200);
	IWDG_CFG();
	while(1)
	{
		delay_ms(110);
		IWDG_ReloadCounter();
	}		
	
	
	
 }

工程获取

三连加关注后点击头像获取

相关推荐
BackCatK Chen7 小时前
第15篇:TMC2240闭环控制软件实现|编码器数据融合+丢步修正(保姆级)
嵌入式硬件·闭环控制·tmc2240·stm32实战·编码器数据融合·丢步修正·定位精度优化
隔壁大炮8 小时前
I2C通信协议
单片机·嵌入式硬件·铁头山羊
凌晨7点8 小时前
DSP学习F28004x数据手册:第13章-ADC
单片机·嵌入式硬件·学习
非鱼䲆鱻䲜10 小时前
淘晶驰串口屏使用波形图控件,接收单片机或者串口助手数据生成图像的区别
单片机·嵌入式·串口屏
J-TS13 小时前
线性自抗扰控制LADRC
c语言·人工智能·stm32·单片机·算法
撩妹小狗15 小时前
单片机中断原理
stm32·单片机
码农三叔16 小时前
(1-1)人形机器人感知系统概述: 人形机器人感知的特点与挑战
人工智能·嵌入式硬件·机器人·人机交互·人形机器人
上海合宙LuatOS16 小时前
LuatOS核心库API——【hmeta 】硬件元数据
单片机·嵌入式硬件·物联网·算法·音视频·硬件工程·哈希算法
cameron_tt17 小时前
定时器中断应用 HC-SR04超声波测距模块、定时器输出PWM应用 控制SG90舵机
c语言·嵌入式硬件
白太岁19 小时前
操作系统开发:(7) 优先级反转与继承、TLS 及核亲和性
c语言·单片机·系统架构