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

工程获取

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

相关推荐
数智工坊1 小时前
机器人四大主控板系统分层选型指南:树莓派、ESP32、STM32与Arduino的能力边界与实战定位
stm32·嵌入式硬件·机器人
某林2122 小时前
跨越底层与AI的鸿沟:ROS2+多模态大模型(Qwen-VL)机器人全链路排障实录
人工智能·stm32·机器人·人机交互·ros2·技术复盘
进击的小头2 小时前
第8篇:IGBT 从零到精通:核心原理、关键参数、选型指南与工业级应用要点
经验分享·嵌入式硬件·学习
点灯小铭2 小时前
基于单片机的多模式智能洗衣机设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
项目題供诗2 小时前
STM32-AD单通道&AD多通道(十九)
stm32·单片机·嵌入式硬件
南岸的水2 小时前
BMS国标充电解析
单片机·嵌入式硬件·mcu
清风6666663 小时前
基于单片机的可调数控电源设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计·期末大作业
sramdram3 小时前
低功耗国产蓝牙芯片,蓝牙MCU方案
单片机·嵌入式硬件·mcu·蓝牙mcu·蓝牙方案
yuan199973 小时前
CMS8S5880 电子锁程序(51单片机)
单片机·嵌入式硬件·51单片机
振南的单片机世界4 小时前
启动流程:上电先取栈顶和复位向量,再进main
arm开发·stm32·嵌入式硬件