anonymous wrote on Wednesday, January 21, 2009:
I’ve been messing around with FreeRTOS for the PIC32MX460512L and have successfully managed to create a project from scratch and create two tasks which blink some LEDs. However, checking the Memory Usage Gauge in MPLAB shows that my very simple system is taking up 131471 out of 134140 words of ROM and 31404 out of 32768 words of RAM!!
I only found out about this when I tried to incorporate FreeRTOS into an existing PIC32 project. Without FreeRTOS, this project consumes 35160 words of ROM and 8460 words of RAM. However, once I add the FreeRTOS files in, the linker brings up these error messages:
Executing: "C:\Program Files\Microchip\MPLAB C32 Suite\bin\pic32-gcc.exe" -mprocessor=32MX360F512L "Main.o" "list.o" "queue.o" "tasks.o" "port.o" "port_asm.o" "heap_2.o" -o"BD176-01.elf" -Wl,-L"C:\Program Files\Microchip\MPLAB C32\lib",-L"C:\Program Files\Microchip\MPLAB C32\pic32mx\lib",–defsym=__MPLAB_BUILD=1,-Map="BD176-01.map"
C:\Program Files\Microchip\MPLAB C32 Suite\pic32mx\bin\ld.exe: region kseg1_data_mem is full (BD176-01.elf section .bss)
C:\Program Files\Microchip\MPLAB C32 Suite\pic32mx\bin\ld.exe: address 0xa00091b0 of BD176-01.elf section .heap is not within region kseg1_data_mem
C:\Program Files\Microchip\MPLAB C32 Suite\pic32mx\bin\ld.exe: address 0xa00095b0 of BD176-01.elf section .stack is not within region kseg1_data_mem
C:\Program Files\Microchip\MPLAB C32 Suite\pic32mx\bin\ld.exe: address 0xa0009800 of BD176-01.elf section .ramfunc is not within region kseg1_data_mem
Link step failed.