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();
	}		
	
	
	
 }

工程获取

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

相关推荐
hsjiasb1 小时前
FreeRTOS学习(二十六)——动态内存管理heap_1到heap_5
stm32·单片机·学习·学习笔记·freertos
LCG元2 小时前
STM32+ESP8266+MQTT 物联网气象站:从零搭建温湿度远程监测系统(附完整源码)
stm32·物联网·struts
FakeOccupational4 小时前
【电路笔记 STM32】Cortex-M7 内核上的数据缓存(D-Cache)结构+MPU+DMA&Cache+STM32CubeMX配置
笔记·stm32·缓存
殷忆枫5 小时前
基于K210与STM32的智能垃圾分类与物联网监管系统
stm32·物联网·分类
周洲08305 小时前
STM32 GPIO 外部中断深度解析:边沿触发 / 电平触发、NVIC 优先级配置、中断嵌套实战
stm32·单片机·嵌入式硬件
LCG元6 小时前
STM32F103 CAN 总线通信实战:标准库双机通信与过滤器配置精讲
stm32·单片机·嵌入式硬件
zlinear数据采集卡6 小时前
D223的PWM电机控制:6路独立脉冲+加减速算法深度解析
arm开发·stm32·嵌入式硬件·算法·fpga开发·架构
Kuakewei8887 小时前
平芯微42V热拔插OVP过压保护芯片:PW1600
嵌入式硬件
ACP广源盛139246256738 小时前
WAIC2026 国产超节点算力浪潮下@ACP#IX9104 在算力矩阵中的定位与落地场景
大数据·数据库·人工智能·嵌入式硬件·线性代数·矩阵
z20348315208 小时前
STM32单片机控制无源蜂鸣器播放《晴天》
stm32·单片机·嵌入式硬件