Skip to main content
BChan.4
Associate
January 14, 2022
Question

How does STM32CubeProgrammer know which core to program on h745?

  • January 14, 2022
  • 2 replies
  • 806 views

I use STM32CubeIDE to generate two elf files, one for CM7 and one for CM4. Does the elf files contain the information needed for STM32CubeProgrammer to know which core to target when programming?

This topic has been closed for replies.

2 replies

mƎALLEm
Technical Moderator
January 14, 2022

Dear @BChan.4​ ,

Elf file contains the address location of your program. So in you project you did configure the program address of each core with linker file.

So CubeProgrammer will get automatically these addresses from your .elf or .hex file and will update the Flash according to these addresses.

SofLit

"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."
Andreas Bolsch
Lead III
January 14, 2022

Major parts of the address space are shared by both cores (see Table 2 and Figure 1 in RM0399), so the choice where the code for M7 and M4, resp., reside in flash is rather arbitrary. There is a single flash range for both.

Of course, the linker files for both cores should be arranged in such a way that the execution ranges for both do not overlap, although in special cases it might even be possible to use a single library image by both cores.

The boot addresses do the trick: FLASH_BOOT7_CURR and FLASH_BOOT4_CURR.