Hi. I’m working with LPC2368 and Freertos. My application is working fine. Now I need to implement a bootloader to upgrade the firmware from external flash memory (SPI). The first thing I did to test was to write a very simple bootloader that jumps to address 0x1000 (where user application should be). Then I move the application code so that its entry point is 0x1000. I did that by modifying the memory map, setting flash starting address at 0x1000. The application compiled ok, and was loaded at 0x1000. The problem is that it keeps reseting. I followed the code step by step, and the problem seems to be in function:
void vPortISRStartFirstTask( void )
/* Simply start the scheduler. This is included here as it can only be
called from ARM mode. */
when the call to portRESTORE_CONTEXT() is made, the application restarts.
Any idea how to make this work?