Enable Heap for nRF51822
Fix the undefined symbol NRF_SRAM_END Configure SRAM part for Heap
This commit is contained in:
parent
31c9f3ef3b
commit
65f1d8f409
|
@ -28,13 +28,13 @@ extern int rt_application_init(void);
|
||||||
|
|
||||||
#ifdef __CC_ARM
|
#ifdef __CC_ARM
|
||||||
extern int Image$$RW_IRAM1$$ZI$$Limit;
|
extern int Image$$RW_IRAM1$$ZI$$Limit;
|
||||||
#define NRF_SRAM_BEGIN (&Image$$RW_IRAM1$$ZI$$Limit)
|
#define NRF_HEAP_BEGIN (&Image$$RW_IRAM1$$ZI$$Limit)
|
||||||
#elif __ICCARM__
|
#elif __ICCARM__
|
||||||
#pragma section="HEAP"
|
#pragma section="HEAP"
|
||||||
#define NRF_SRAM_BEGIN (__segment_end("HEAP"))
|
#define NRF_HEAP_BEGIN (__segment_end("HEAP"))
|
||||||
#else
|
#else
|
||||||
extern int __bss_end;
|
extern int __bss_end;
|
||||||
#define NRF_SRAM_BEGIN (&__bss_end)
|
#define NRF_HEAP_BEGIN (&__bss_end)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -58,7 +58,7 @@ void rtthread_startup(void)
|
||||||
rt_system_timer_init();
|
rt_system_timer_init();
|
||||||
|
|
||||||
#ifdef RT_USING_HEAP
|
#ifdef RT_USING_HEAP
|
||||||
rt_system_heap_init((void*)NRF_SRAM_BEGIN, (void*)NRF_SRAM_END);
|
rt_system_heap_init((void*)NRF_HEAP_BEGIN, (void*)NRF_SRAM_END);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* init scheduler system */
|
/* init scheduler system */
|
||||||
|
|
|
@ -12,6 +12,12 @@
|
||||||
#ifndef __BOARD_H__
|
#ifndef __BOARD_H__
|
||||||
#define __BOARD_H__
|
#define __BOARD_H__
|
||||||
|
|
||||||
|
// <o> Internal SRAM memory size[Kbytes] <16 or 32>
|
||||||
|
// <i>Default: 16
|
||||||
|
#define NRF_SRAM_BEGIN (0x20000000)
|
||||||
|
#define NRF_SRAM_SIZE (16 * 1024)
|
||||||
|
#define NRF_SRAM_END (NRF_SRAM_BEGIN + NRF_SRAM_SIZE)
|
||||||
|
//#endif
|
||||||
|
|
||||||
|
|
||||||
void rt_hw_board_init(void);
|
void rt_hw_board_init(void);
|
||||||
|
|
|
@ -49,10 +49,10 @@
|
||||||
|
|
||||||
/* SECTION: Memory Management */
|
/* SECTION: Memory Management */
|
||||||
/* Using Memory Pool Management*/
|
/* Using Memory Pool Management*/
|
||||||
/* #define RT_USING_MEMPOOL */
|
#define RT_USING_MEMPOOL
|
||||||
|
|
||||||
/* Using Dynamic Heap Management */
|
/* Using Dynamic Heap Management */
|
||||||
//#define RT_USING_HEAP
|
#define RT_USING_HEAP
|
||||||
|
|
||||||
/* Using Small MM */
|
/* Using Small MM */
|
||||||
#define RT_USING_SMALL_MEM
|
#define RT_USING_SMALL_MEM
|
||||||
|
|
Loading…
Reference in New Issue