hello all, I have writtten an IAP for STM32F100RBT6B and trying to jump to my LED blinking aplication.
bootloader start address : 0x08000000 application start address:0x08009000
I am using the below code to jump from bootloader to application.. Code:
typedef (void )(*pFunction)(void); pFunction Jump_To_Application; uint32_t JumpAddress;
if (((*(__IO uint32_t*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000) {
JumpAddress = *(__IO uint32_t*) (ApplicationAddress + 4);
Jump_To_Application = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) ApplicationAddress);
Jump_To_Application(); }
when my pointer reaches "Jump_To_Application();" nothing gets updated in PC,SP.. or please suggest how can i see whether my bootloader code is jumping to application or not.
I have gone through a lot of post here but didn't find my answer. I am running bootloader code in debug mode. and using Atollic IDE. Plz help.. thanks in advance..