Skip to main content
Explorer II
May 9, 2024
Question

How to boot trigger cm7 to cm4 in keil?

  • May 9, 2024
  • 2 replies
  • 2263 views

I'm implement IAP in Nucleo-H745ziq.

So. when i into application then cm7 trigger(boot) to cm4.

cm4 can't boot in keil but in stm32CubeIDE can boot.

 

SET_BIT(RCC->GCR, RCC_GCR_BOOT_C2);

yolominwoo_0-1715233361339.png

 

    This topic has been closed for replies.

    2 replies

    Technical Moderator
    May 9, 2024

    Hello @yolominwoo,

    You need to include code in the CM7 project that enables the booting of the CM4 core using the HAL_RCCEx_EnableBootCore() function from the STM32H7 HAL library.
    Ensure the right memory area is selected for the CM7 core, such as Flash at 0x08000000 for Boot address 0.
    Build the CM7 project and load the binary onto the target device.

    You need to configure the CM4 Project and ensure the memory area and startup code are appropriate for the CM4 core. Then, Build the CM4 project and load the binary onto the target device.
    Load both CM7 and CM4 projects in Keil and start the debug session for each core. You should start the CM7 project first, which will then enable the booting of the CM4 core through the code you added. Then, start the CM4 project.
    For more details and step-by-step guide, you can refer to the application notes and examples provided:

    • AN5286: STM32H7x5/x7 dual-core microcontroller debugging (Using MDK-ARM section)
    • AN5557: STM32H745/755 and STM32H747/757 lines dual-core architecture" (especially the section 3 Resources for dual-core application).

    Hope this helped you

    Explorer II
    May 9, 2024

    This doesn't work either.

    I'm check already flash cm7 boot addres


    HAL_RCCEx_EnableBootCore(RCC_BOOT_C2);

     

    STM32CubeIDE Application Projcet it work cm4

    But keil Application Project can't boot cm4

    Technical Moderator
    May 9, 2024

    Please provide more details (your configuration, Cube and tools version used) and list the steps you did along with the errors you encountered, in order to be able to answer.

    Technical Moderator
    May 9, 2024

    Hi @yolominwoo ,

    Can you please test this ready-to-use example within Keil: 

    \Repository\STM32Cube_FW_H7_V1.11.1\Projects\STM32H747I-DISCO\Applications\ResourcesManager\ResourcesManager_SharedResources

    Then, please keep me informed about your update.

    Explorer II
    May 10, 2024

    I'm tried again Today in STM32CubeIDE.

    First. I'm made new Application Project.

    CM7 in main.c I'm code just one line SET_BIT(RCC->GCR, RCC_GCR_BOOT_C2);

    yolominwoo_0-1715311289743.png

     

    But I can't boot cm4.

    However, I'm tried Changed CM7 timer TIM4 from SYSTICK

    Then CM4 can boot.

    You know why that worked?

     

    Now, My Keil application project can trig boot for cm4