The program stops (without a breakpoint) at an unexpected code point during startup
I am currently developing software for STM32H7 processors. For this I use the current development environment from Keil (uvision 37.0.0) and Cubemx 6.4.0.
I created an "empty" project for the Nucleo Board STM32H743ZI with Cubemx. In it I only activated one property:
SystemCore/COREX_M7/CPU DCache : Enabled
When I compile and upload the generated code I have a strange phenomenon: The program doesn't stop at __Main in the startup-code and also not at HAL_Init() in main.c, but it stops in core_cm7.h in the line:
if (SCB->CCR & SCB_CCR_DC_Msk) return;
But I didn't set a breakpoint there!
My question is about this unwanted "stopping effect" during start phase. The example above is the easiest to reproduce and demonstrate the problem. In fact, I'm working on another project, but that's where this effect degenerates. Sometimes I have to press the F5 key 4 times before the program finally gets to main. This is unbearable in the long run. Does anyone know this effect and has a workaround for it?
