| #! armcc -E |
| ; command above MUST be in first line (no comment above!) |
| |
| /* |
| ;-------- <<< Use Configuration Wizard in Context Menu >>> ------------------ |
| */ |
| |
| /*--------------------- Flash Configuration ------------------------- |
| ; <h> Flash Configuration |
| ; <o0> Flash Base Address <0x0-0xFFFFFFFF:8> |
| ; <o1> Flash Size (in Bytes) <0x0-0xFFFFFFFF:8> |
| ; </h> |
| *----------------------------------------------------------------------------*/ |
| #define __ROM_BASE 0x00000000 |
| #define __ROM_SIZE 0x00200000 |
| |
| /*--------------------- Embedded RAM Configuration --------------------------- |
| ; <h> RAM Configuration |
| ; <o0> RAM Base Address <0x0-0xFFFFFFFF:8> |
| ; <o1> RAM Size (in Bytes) <0x0-0xFFFFFFFF:8> |
| ; </h> |
| *----------------------------------------------------------------------------*/ |
| #define __RAM_BASE 0x20000000 |
| #define __RAM_SIZE 0x00200000 |
| |
| /*--------------------- Stack / Heap Configuration --------------------------- |
| ; <h> Stack / Heap Configuration |
| ; <o0> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> |
| ; <o1> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> |
| ; </h> |
| *----------------------------------------------------------------------------*/ |
| #define __STACK_SIZE 0x00000400 |
| #define __HEAP_SIZE 0x00000C00 |
| |
| |
| /*---------------------------------------------------------------------------- |
| User Stack & Heap boundery definition |
| *----------------------------------------------------------------------------*/ |
| #define __STACK_TOP (__RAM_BASE + __RAM_SIZE) |
| #define __HEAP_BASE (__RAM_BASE + __RAM_SIZE - __STACK_SIZE - __HEAP_SIZE) |
| |
| |
| /*---------------------------------------------------------------------------- |
| Scatter File Definitions definition |
| *----------------------------------------------------------------------------*/ |
| #define __RO_BASE __ROM_BASE |
| #define __RO_SIZE __ROM_SIZE |
| |
| #define __RW_BASE (__RAM_BASE ) |
| #define __RW_SIZE (__RAM_SIZE - __STACK_SIZE - __HEAP_SIZE) |
| |
| |
| |
| LR_ROM __RO_BASE __RO_SIZE { ; load region size_region |
| ER_ROM __RO_BASE __RO_SIZE { ; load address = execution address |
| *.o (RESET, +First) |
| *(InRoot$$Sections) |
| .ANY (+RO) |
| } |
| |
| RW_RAM __RW_BASE __RW_SIZE { ; RW data |
| .ANY (+RW +ZI) |
| } |
| |
| ARM_LIB_HEAP __HEAP_BASE EMPTY __HEAP_SIZE { ; Reserve empty region for heap |
| } |
| |
| ARM_LIB_STACK __STACK_TOP EMPTY -__STACK_SIZE { ; Reserve empty region for stack |
| } |
| } |