调试STM32F091VB时CAN触发中断致IWDG未暂停问题求助
STM32F091VB调试时IWDG复位及CAN中断异常问题
调试搭载CAN通信的STM32F091VB板卡时出现以下异常:
- 调试器处于暂停状态时,板卡接收到CAN消息会触发独立看门狗(IWDG)复位MCU
- 已通过代码配置调试模式下冻结相关外设,但设置断点时IWDG仍会触发复位;无CAN消息时调试一切正常
相关环境与配置信息
- MCU型号:STM32F091VB
- 开发环境:IAR Embedded Workbench 9.30
- 调试探针:STLink/V2
- 调试冻结外设配置代码:
//Halt Interrupts on Debug stop __HAL_RCC_DBGMCU_CLK_ENABLE(); __HAL_FREEZE_IWDG_DBGMCU(); __HAL_FREEZE_WWDG_DBGMCU(); __HAL_FREEZE_TIM1_DBGMCU(); __HAL_FREEZE_TIM2_DBGMCU(); __HAL_FREEZE_TIM3_DBGMCU(); __HAL_FREEZE_TIM16_DBGMCU(); __HAL_FREEZE_CAN_DBGMCU();
补充现象与信息
- 完全禁用看门狗后可进行调试,但调试器暂停时会无限陷入CAN中断,即便无CAN消息接收也是如此
- 已获取以下寄存器状态截图:
- 清除接收邮箱中断前的CAN寄存器状态
- DBGMU寄存器状态
内容的提问来源于stack exchange,提问作者sonic1015
相关产品推荐
相关产品推荐

