在生成的工程主函数main()中调用MX_WWDG_Init()函数对WWDG参数配置,并调用了HAL_WWDG_Init()初始化函数 在HAL_WWDG_Init()函数中对WWDG做了初始化,并调用了HAL_WWDG_MspInit()函数对WWDG的时钟、中断优先级和中断使能做了配置 WWDG具体初始化调用流程如下图所示 3.2.2、外设中断调用流程 在STM32CubeMX中勾选...
窗口看门狗的计时器是减法计数,从设置的WWDG free-running downcounter value向下计数,如果不喂狗,计到0x3F时,会复位MCU;因此WWDG free-running downcounter value设置的值必须大于0x3F;而其最大值不能超过0x7F,图中设置的就是最大值0x7F; WWDG window value的值必须在0x3F和WWDG free-running downcounter value...
独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。 窗口看门狗(WWDG)由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。 使用场合: IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。 W...
在wwdg.c文件中可以看到窗口看门狗的初始化函数 voidMX_WWDG_Init(void){hwwdg.Instance=WWDG;hwwdg.Init.Prescaler=WWDG_PRESCALER_8;hwwdg.Init.Window=0x5a;hwwdg.Init.Counter=0x7f;hwwdg.Init.EWIMode=WWDG_EWI_ENABLE;if(HAL_WWDG_Init(&hwwdg)!=HAL_OK){Error_Handler();}} 找到弱符号早期唤醒中断...
MX_WWDG_Init(); MX_RTC_Init(); /* USER CODE BEGIN 2 */ /* USER CODE END 2 */ /* USER CODE BEGIN RTOS_MUTEX */ /* add mutexes, ... */ /* USER CODE END RTOS_MUTEX */ /* USER CODE BEGIN RTOS_SEMAPHORES */ /* add semaphores, ... */ ...
WWDG window value的值必须在0x3F和WWDG free-running downcounter value之间,图中设置的值时0x70,表示WWDG计时器从0x7F向下递减时,要减到0x70之下后,才能有效喂狗(即喂狗的窗口区间在0x3F ~ WWDG window value之间)。 使能早期唤醒中断,并开启中断,这里使用中断主要是为了方便指示出是否已到窗口时间内: ...
至于那个window value (有些芯片是没有这个值的)大家可以去了解了解WWDG窗口看门狗,也就是只能在窗口期喂狗 窗口期=window value/reload value *超时时间~超时时间 在上面例子 窗口期=600/1250*10~10s 也就是4.8s~10s才能喂狗 不喂狗或者在4.8s之前喂狗都会复位单片机 ...
WWDG时钟预分频系数 8 WWDG上窗口值0x5F WWDG计数器值 : 0x7F 设置看门狗提前唤醒中断 3 使能窗口看门狗中断 其余配置与独立看门狗相同配置即可 HAL库独立窗口狗函数库讲解: 看门狗初始化: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 HAL_WWDG_Init(WWDG_HandleTypeDef*hwwdg) ...
void HAL_WWDG_EarlyWakeupCallback(WWDG_HandleTypeDef *hwwdg)//提前中断回调函数 { HAL_WWDG_Refresh(hwwdg);//喂狗 HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_9); } int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); HAL_GPIO_WritePin(GPIOB,GPIO_PIN_8,GPIO_PIN_RESET); ...
-增加了对STM32MP1系列部分外设的LL代码生成支持:ADC、GPIO、RCC、USART、SYS、DMA、LPTIM、TIM、SPI、WWDG、PWR、I2C。 C.更新STM32CubeIDE -增加了对STM32MP1系列的支持。 -增加了对STM32H7系列的支持。 -增加了对STM32L5系列的支持。 -非根项目可以导入。