Question
Halting the FDCAN peripheral during debugging break points.
On STM32H733, the HAL provides __HAL_DBGMCU_FREEZE_FDCAN() in stm32h7xx_hal.h but it is conditionally compiled:
#if defined(DBGMCU_APB1HFZ1_DBG_FDCAN)
#define __HAL_DBGMCU_FREEZE_FDCAN() (DBGMCU->APB1HFZ1 |= (DBGMCU_APB1HFZ1_DBG_FDCAN))
#endif
DBGMCU_APB1HFZ1_DBG_FDCAN is not defined in stm32h733xx.h, so the macro does not exist at compile time and calling it gives:
error: implicit declaration of function '__HAL_DBGMCU_FREEZE_FDCAN'
Questions:
- Is FDCAN freeze during debug halt supported on STM32H733?
- If yes, why is
DBGMCU_APB1HFZ1_DBG_FDCANmissing fromstm32h733xx.h— is this a bug in the device header? - What is the correct bit position to use as a workaround via direct register write?
I need to pause the FDCAN peripheral during debugging, that is my goal.
Thanks you very much for helping me out.
