The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.
Dependents: hello SerialTestv11 SerialTestv12 Sierpinski ... more
mbed 2
This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.
Diff: TARGET_K66F/TOOLCHAIN_ARM_STD/MK66FN2M0xxx18.sct
- Revision:
- 127:25aea2a3f4e3
- Parent:
- 124:2241e3a39974
- Child:
- 141:794e51388b66
--- a/TARGET_K66F/TOOLCHAIN_ARM_STD/MK66FN2M0xxx18.sct Fri Sep 16 13:57:13 2016 +0100 +++ b/TARGET_K66F/TOOLCHAIN_ARM_STD/MK66FN2M0xxx18.sct Fri Sep 30 16:49:46 2016 +0100 @@ -7,12 +7,12 @@ ** Compiler: Keil ARM C/C++ Compiler ** Reference manual: K66P144M180SF5RMV2, Rev. 1, Mar 2015 ** Version: rev. 3.0, 2015-03-25 -** Build: b151009 +** Build: b160406 ** ** Abstract: ** Linker file for the Keil ARM C/C++ Compiler ** -** Copyright (c) 2015 Freescale Semiconductor, Inc. +** Copyright (c) 2016 Freescale Semiconductor, Inc. ** All rights reserved. ** ** Redistribution and use in source and binary forms, with or without modification, @@ -47,6 +47,10 @@ */ #define __ram_vector_table__ 1 +/* Heap 1/4 of ram and stack 1/8 */ +#define __stack_size__ 0x8000 +#define __heap_size__ 0x10000 + #if (defined(__ram_vector_table__)) #define __ram_vector_table_size__ 0x00000400 #else @@ -71,24 +75,44 @@ #define m_data_2_start 0x20000000 #define m_data_2_size 0x00030000 +/* Sizes */ +#if (defined(__stack_size__)) + #define Stack_Size __stack_size__ +#else + #define Stack_Size 0x0400 +#endif -LR_m_text m_interrupts_start m_text_size+m_interrupts_size+m_flash_config_size { ; load region size_region +#if (defined(__heap_size__)) + #define Heap_Size __heap_size__ +#else + #define Heap_Size 0x0400 +#endif + +LR_m_text m_interrupts_start m_text_start+m_text_size-m_interrupts_start { ; load region size_region VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address * (RESET,+FIRST) } - ER_m_flash_config m_flash_config_start m_flash_config_size { ; load address = execution address + ER_m_flash_config m_flash_config_start FIXED m_flash_config_size { ; load address = execution address * (FlashConfig) } ER_m_text m_text_start m_text_size { ; load address = execution address * (InRoot$$Sections) .ANY (+RO) } + +#if (defined(__ram_vector_table__)) + VECTOR_RAM m_interrupts_ram_start EMPTY m_interrupts_ram_size { + } +#else + VECTOR_RAM m_interrupts_start EMPTY 0 { + } +#endif RW_m_data m_data_start m_data_size { ; RW data .ANY (+RW +ZI) } - RW_IRAM1 m_data_2_start m_data_2_size { ; RW data + RW_m_data_2 m_data_2_start m_data_2_size-Stack_Size-Heap_Size { ; RW data .ANY (+RW +ZI) } - VECTOR_RAM m_interrupts_ram_start EMPTY m_interrupts_ram_size { + RW_IRAM1 ImageLimit(RW_m_data_2) { ; Heap region growing up } -} \ No newline at end of file +}