lpcware

freeRTOS can not run on peripheral RAM

Discussion created by lpcware Employee on Jun 15, 2016
Latest reply on Jun 18, 2016 by lpcware
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

Outcomes