freeRTOS can not run on peripheral RAM

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

freeRTOS can not run on peripheral RAM

511 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by phuockal on Mon Apr 25 00:17:44 MST 2016
Dear all,

I am using LPC4078 with freeRTOS version 7.53 copied from LPC open.

freeRTOS was running smoothly on CPU RAM. Then I want to spend CPU RAM for graphic library and move freeRTOS heap memory on onchip peripheral RAM, but I got system hard fault.

freeRTOS using heap_1.c with static memory allocation.

the following code in file heap_1.c was running fine:
static unsigned char ucHeap[ configTOTAL_HEAP_SIZE ];

but just add the __BSS(RAM2), I got hard fault:
#include "cr_section_macros.h"
...
__BSS(RAM2) static unsigned char ucHeap[ configTOTAL_HEAP_SIZE ];

I am afraid that the RAM2 (peripheral RAM) was use without initialization. I had try to find the way to initialize it. but it seem to be no need to manually initialization.

please tell me what was happening in that case, and how to use peripheral RAM for freeRTOS. Please tell me what I was wrong

Thanks in advance,

Best regards
Labels (1)
0 Kudos
2 Replies

393 Views
lpcware
NXP Employee
NXP Employee
bump
0 Kudos

393 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by phuockal on Mon Apr 25 00:35:35 MST 2016
Dear all,

I just add more information about my problem:

on file freeRTOSConfig.h:

#define configTOTAL_HEAP_SIZE( ( size_t ) ( 22*1024 ) )

onchip peripheral RAM of LPC4078 is 32KB. Building project was successful without, no out of memory was reported.
report after build:
text   data    bss    dec    hexfilename
299396   2036  63284 364716  590acApplication.axf

in my application, no dynamic memory was declared.
system crash immediately after start.

thank you very much for your help
0 Kudos