I cannot get a FreeRTOS system to work from starting
address 0x8000 with a secondary bootloader.
I’m using a NXP LPC2148 microcontroller.
My application program crash when vTaskStartScheduler()
If application program is located on flash address 0x0000,
Anyone did something like this ?.
1) vTaskStartScheduler() is called in supervisor mode.
2) Interrupt vector table is remaped to RAM with MEMMAP=2.
First 64 bytes, from address 0x8000 are copied to RAM
3) Linker script memory areas:
flash (rx): ORIGIN = 0x00008000, LENGTH = 468K
ram_ivt(rwx): ORIGIN = 0x40000000, LENGTH = 64
ram (rwx): ORIGIN = 0x40000040, LENGTH = 32K-64
4) Secondary bootloader, jumps to user program (0x8000)
in supervisor mode also.
5) FreeRTOS version: 6.0.2
6) Toolchain: GCC 4.1.1
7) MCU: LPC2148.
Thanks in advance.