cancel
Showing results for 
Search instead for 
Did you mean: 

Boot STM32H7 after power up

Yood
Associate II

According to PM0253 "Programming Manual" after power up the the vector table is located at address 0x0000000. This memory is RAM memory (ITCMRAM) so how the boot can run from it if it just powered up? ​There is no memory address in it...

In other CPU I worked with, like TI C2000, the reset vector after power up is in the ROM with address pointing to boot loader in the ROM.

4 REPLIES 4

In the SCB section it describes the VTOR reset value as unknown, and to the best of my knowledge it is controlled by external strapping and options bytes.

There is the BOOT pin, and BOOT_ADDx[15:0] nominally describing 0x08000000 or 0x1FF00000 (per RM0433)

Read the value as seen in Reset_Handler and confirm value seen at reset.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Yood
Associate II

​Thanks.

BTW, I found that that when BOOT pin == 1 the VTOR address is 0x1FF09800 and not 0x1FF00000.

Why it's not documented?

>>Why it's not documented?

Hard to say, but wasn't something that was hard to figure out.

https://community.st.com/s/question/0D50X00009XkW8QSAV/stm32h743-how-to-start-the-system-boot-loader-via-software

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Khouloud GARSI
Lead II

Hello,

In STM32H7, the base address of the system memory is different from the entry point of the bootloader.

Thus, in order to jump to the bootloader, address "0x1FF09800" should be used instead of "0x1FFF0000".

You may refer to the FAQ "Jump to Bootloader from application on STM32H7 devices" .

Link:

https://community.st.com/s/article/STM32H7-bootloader-jump-from-application

Khouloud.