i'm playing with stm32f407g-disc1 evaluation board and exploring the possibility to update firmware via USB host port (the micro USB one) from a USB memory stick.
From AN3990 i understand that i need to flash the smt32f4 mcu with the "firmware upgrade application" and set my application to start from memory address 0x08008000.
I modified "system_stm32f4xx.c" in the firmware upgrade application with:
Code: Select all
#define VECT_TAB_OFFSET 0x8000
Connecting a usb stick with my image.bin to the micro USB and hitting the reset button i get the blue LED on which turns off after a few seconds and then the green LED turns on signaling my application has been downloaded to stm32f4.
If i check the stm32f4 memory content with CUBEprogrammer i can see that my application is effectively stored at address 0x08008000
The problem is that my application (simple LED blink) never starts, either if i press user button after download or after board hardware reset.
So i'm missing something or have done something wrong.
From this thread i've read about the build_opt.h file:
viewtopic.php?t=1611
i use STM32 core 2.5.0, the build.opt.h file is not generatated when i export the compilation, so i created it manually and added the following:
Code: Select all
-DVECT_TAB_OFFSET=0x00008000U
However still my blink application won't start so there's defintely something wrong i'm doing here
![Smile :)](./images/smilies/icon_e_smile.gif)
Don't know if it helps but looking at my bin files with and without the build_opt.h they look the same in size
Can you help?
Thank you!