STM32CubeMX学习笔记——STM32H743窗口看门狗WWDG

Github

https://github.com/HaHaHaHaHaGe/Planof2019_half/tree/master/Course_Project/STM32H7/Class03_WWDG

STM32CubeMX配置

STM32CubeMX版本:4.27.0
配置流程:
Pinout界面选择并开启需要的LED控制与按键输入引脚
Clock Configuration配置时钟树
Configuration界面配置System
生成工程

Pinout配置

在这里插入图片描述
LED输出与KEY输入的PIN配置

Clock Configuration配置

在这里插入图片描述
开启系统时钟

Configuration

在这里插入图片描述
左侧主要系统功能的开启,或中间软件层功能的开启(如:RTOS、JPEG解码器,文件系统等)
右侧是系统及外设模块的具体配置

GPIO

在这里插入图片描述
输入输出配置

WWDG1

在这里插入图片描述
分频:128
窗口:64
初始值:127
开启中断
只能在计数器在64~127之间进行复位,提前清零与超时都会导致rst
在这里插入图片描述

NVIC

在这里插入图片描述
开启并设置优先级
在这里插入图片描述
自动生成中断代码

代码部分

main.c

  /* USER CODE BEGIN WHILE */
  while (1)
  {

  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */
		if(!HAL_GPIO_ReadPin(GPIOH,GPIO_PIN_2))
			HAL_WWDG_Refresh(&hwwdg1);
		HAL_Delay(200);
		HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_0);
  }
  /* USER CODE END 3 */

stm32h7xx_it.h

/* USER CODE BEGIN 1 */
void HAL_WWDG_EarlyWakeupCallback(WWDG_HandleTypeDef* hwwdg)
{
	HAL_WWDG_Refresh(hwwdg);
}
/* USER CODE END 1 */

若没有及时喂狗将会被rst

未知问题

在窗口之外进行WWDG清零,有时会正确引发RST,但是有时会进入HardFault_Handler

猜你喜欢

转载自blog.csdn.net/weixin_41738734/article/details/84065541