Dear all,
I'm working on bootloader over KL27. I put the bootloader at address 0x0, and the application at 0x4000.
After I write the new application into flash memory, I try to restart the application by pointing to application startup address, but it fail and restart the code from 0 (from the bootloader).
The launch code is the following. Is it correct?
Any ideas?
Thanks
Marco
appStartAddress = APPLICATION_START_ADDRESS;
p_appStartAddress = (uint32_t *) appStartAddress;
// Read the first location of application section
// which contains the address of stack pointer.
// If it is 0xFFFFFFFF then the application section is empty.
if (*p_appStartAddress == 0xFFFFFFFF)
{
while (1)
{
// Wait indefinitely
}
}
// Start address is valid...
// Pointer to the Application Section
void (*applicationCodeEntry)(void);
// Rebase the Stack Pointer
__set_MSP(*(uint32_t *) APPLICATION_START_ADDRESS);
// Rebase the vector table base address
SCB->VTOR = ((uint32_t) APPLICATION_START_ADDRESS & SCB_VTOR_TBLOFF_Msk);
// Load the Reset Handler address of the application
applicationCodeEntry = (void (*)(void))(unsigned *)(*(unsigned *)(APPLICATION_START_ADDRESS + 4));
// Jump to user Reset Handler in the application
applicationCodeEntry();
Hi,
You can refer this link. bootloader
Have a great day,
TIC
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 days after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Hi,
Please use the led demo as application. And show me how you go to application.
Have a great day,
TIC
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 days after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------