cancel
Showing results for 
Search instead for 
Did you mean: 

Can't break at Cortex®-M4 address on STM32H7 dual core.

Paco
Associate III

Hi All,

I am using STM32H747IDISCO kit.

I load example project HSEM_COreSync into STM32CubeIDE(version 1.18.1) , and set a breakpoint at

"BSP_LED_On(LED3);" line in main function on Cortex®-M4 side. And I start debug, but break doesn't occur.

I recognize LED3 is turned ON after LED1 turned OFF. So "BSP_LED_On(LED3);" line should be proccessed, but break doesn't occur.

I program the board following the guide.

(https://www.st.com/resource/en/application_note/dm00629855-getting-started-with-projects-based-on-dualcore-stm32h7-microcontrollers-in-stm32cubeide-stmicroelectronics.pdf)

Could you tell me how to break at  Cortex®-M4 address on STM32H7 dual core.

Thanks in advance.

2 REPLIES 2
Amel NASRI
ST Employee

Hi @Paco ,

Based on the same application note (AN5361), ensure that you follow the steps described in the Debugging section..

-Amel

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hello.

Thank you for your reply.

I configured STM32CubeIDE following AN5361 and I started debugging. I noticed next behavior.

When main in CM4 was selected and I started debuging, it broke on CM4, as shown in image below.

It is the case that breakpoint is set at "HAL_Init();" line in CM4 main function.

Paco_0-1751854314416.png

 

 

But, when main in CM7 was selected and I started debuging, it didn't break on CM4, as shown in image below.

In this case, LED1 didn't turn on. LED1 turning on proccess is in CM4. So it will not go to CM4 code.

Paco_1-1751854314418.png

 

I think that after reset, CM7 and CM7 is started at the same time. But one cpu only starts, mentioned above.

Could you tell me the way how both cpu is started at the same time on debugger?

Thank you.