cancel
Showing results for 
Search instead for 
Did you mean: 

Boot from external flash stm32h755

adrianMur
Associate

Hello, I am trying to boot from the external flash memory that the nucleo-h755zi-q has(addres->0x09000000), but I am having some issues. The idea I was following is :

1. Create a Bootloader project, in this project I configure the QuapSPI in the internal flash memory to memory mapped mode

2. create the App project (with a basic toggleLed) changing the .ld flash direction to the 0x09000000. Once the project is created I get back to the Bootloader and in debug configurations I linked the Bootloader with the App, so when the Bootloader is debugged the App will too.

3. In the Bootloader file I created a function called 'JumpToAplication' that tries to Jump to the app when the quadspi is done. Here is the code of the function ( I also tried using the commented code) :

typedef void (*AppFunction)(void);

void JumpToApplication(void) {
AppFunction appEntryPoint = (AppFunction)APP_START_ADDRESS;

//__disable_irq();

//SCB->VTOR = APP_START_ADDRESS;

appEntryPoint();
}

Nothing is working and I don´t know what I am doing wrong

1 ACCEPTED SOLUTION

Accepted Solutions

Memory at 0x90000000 NOT 0x09000000, watch your zeros..

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

View solution in original post

3 REPLIES 3

Hi @adrianMur ,

What you did for the Bootloader is fine, but how did you flash the Application in the external Flash?

The approach is that you need first to Flash your Application into the External Flash then, jump to it!

Please check this playlist:

https://www.youtube.com/watch?v=YFIvJVsvIsE&ab_channel=STMicroelectronics

Ayoub

Dump a portion of the memory content visible to the MCU at 0x90000000.

Have a viable Hard Fault Handler that dumps register and failure conditions.

Use your debugger, step thru the control transfer so you can see / confirm that it enters the Reset_Handler code you have in QSPI.

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

Memory at 0x90000000 NOT 0x09000000, watch your zeros..

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