Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
5 years, 1 month ago.
Bootloader jump
I am trying to read bin file from SD card and writing into flash memory. and trying to jump the application location. But it is jumping the wrong location. what could be the problem.
MCU - STM32F429zi
Application location = 0x0800c000
_disable_irq(); uint32_t JumpAddress = (*(IO uint32_t*)(APP_ADDRESS + 4)); pFunction Jump = (pFunction)JumpAddress; HAL_RCC_DeInit(); HAL_DeInit(); SysTick->CTRL = 0; SysTick->LOAD = 0; SysTick->VAL = 0;
SCB->VTOR = APP_ADDRESS; set_MSP(*(IO uint32_t*)(APP_ADDRESS)); Jump();
2 Answers
5 years, 1 month ago.
Hi Raj,
You have to write your own bootloader which jumps to the address Application location = 0x0800c000
Regards, Pekka
5 years, 1 month ago.
Although mbed has special command for bootloader jump mbed_start_application(ADDRESS), it is not implemented for every target i think :(