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

工程获取

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

相关推荐
Dr.kangder2 小时前
嵌入式面试总结(十五)——异常处理
单片机·面试·职场和发展·系统架构·嵌入式
zlinear数据采集卡4 小时前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
ACP广源盛139246256734 小时前
蚂蚁百灵 Ling‑3.0‑flash 开源 + 昇腾 0‑Day 原生适配@ACP#GSV9001E 在国产算力矩阵中的机会与落地场景
大数据·人工智能·分布式·单片机·嵌入式硬件
Rocktech_ruixun6 小时前
机器人端侧大模型部署对主板有哪些要求?瑞迅主控板分级方案对比
人工智能·嵌入式硬件·机器人
振南的单片机世界6 小时前
SysTick硬核拆解:既是HAL_Delay的“心跳”,也是RTOS的“节拍器”
arm开发·stm32·单片机·嵌入式硬件
Lzh编程小栈7 小时前
【嵌入式底层】SPI超透彻详解:通信原理、四线结构、四种模式、寄存器底层 + 面试全集
c语言·stm32·单片机·面试·职场和发展
Rocktech_ruixun7 小时前
机器人数据采集能力取决于什么?瑞迅科技RK3588/3576核心板方案深度解析
人工智能·嵌入式硬件·机器人
水果里面有苹果7 小时前
28-DRV8825PWPR步进电机驱动器
单片机
恒锐丰科技韩生8 小时前
率能 SS6625E|3.0~20V 单通道 H 桥直流电机驱动 SOP8 电子锁玩具机器人分享
嵌入式硬件·硬件工程
zlinear数据采集卡8 小时前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#