Firmware update - STM32F756 Internal / QSPI
I have board using a STM32F756 that I need to update the firmware from internal flash. I am able to copy .bin file from an external flash to internal flash (Using QSPI). I do NOT want to execute the code from the external location. It is just a temporary storage space.
the below steps i followed:
- Receive program code (compiled binary) over serial connection, and write to external flash (QSPI )
- Verify program data was received without errors (checksum)
- Copy program from external flash into MCU internal flash (FLASH_STORAGE_3 0x08018000)
- Reset MCU to run new code
Till step 3 everything is working fine but facing issue while jumping to internal flash address (where i have copied the bin file from external flash to internal flash )
here is the jumping code:
JumpAddress = *(__IO uint32_t*) (FLASH_STORAGE_3 + 4);
Jump_To_Application = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) FLASH_STORAGE_3);
Jump_To_Application();
in .bin file (i have written blinky code) but it's not blinking it's always high
Could you please take a look and suggest what is the issue ??
Thanks
