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.
TARGET_NUCLEO_F412ZG/TOOLCHAIN_IAR/stm32f412xx.icf@149:e2bfab296f20, 2017-08-16 (annotated)
- Committer:
- AnnaBridge
- Date:
- Wed Aug 16 18:12:46 2017 +0100
- Revision:
- 149:e2bfab296f20
- Parent:
- 141:794e51388b66
Release 149 of the mbed library.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AnnaBridge | 149:e2bfab296f20 | 1 | if (!isdefinedsymbol(MBED_APP_START)) { define symbol MBED_APP_START = 0x08000000; } |
AnnaBridge | 149:e2bfab296f20 | 2 | if (!isdefinedsymbol(MBED_APP_SIZE)) { define symbol MBED_APP_SIZE = 0x100000; } |
AnnaBridge | 149:e2bfab296f20 | 3 | |
<> | 132:9baf128c2fab | 4 | /* [ROM = 1024kb = 0x100000] */ |
AnnaBridge | 149:e2bfab296f20 | 5 | define symbol __intvec_start__ = MBED_APP_START; |
AnnaBridge | 149:e2bfab296f20 | 6 | define symbol __region_ROM_start__ = MBED_APP_START; |
AnnaBridge | 149:e2bfab296f20 | 7 | define symbol __region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE; |
<> | 132:9baf128c2fab | 8 | |
<> | 132:9baf128c2fab | 9 | /* [RAM = 256kb = 0x40000] Vector table dynamic copy: 113 vectors = 452 bytes (0x1C4) to be reserved in RAM */ |
<> | 132:9baf128c2fab | 10 | define symbol __NVIC_start__ = 0x20000000; |
<> | 132:9baf128c2fab | 11 | define symbol __NVIC_end__ = 0x200001C7; /* Aligned on 8 bytes */ |
<> | 132:9baf128c2fab | 12 | define symbol __region_RAM_start__ = 0x200001C8; |
<> | 132:9baf128c2fab | 13 | define symbol __region_RAM_end__ = 0x2001FFFF; |
<> | 132:9baf128c2fab | 14 | |
<> | 132:9baf128c2fab | 15 | /* Memory regions */ |
<> | 132:9baf128c2fab | 16 | define memory mem with size = 4G; |
<> | 132:9baf128c2fab | 17 | define region ROM_region = mem:[from __region_ROM_start__ to __region_ROM_end__]; |
<> | 132:9baf128c2fab | 18 | define region RAM_region = mem:[from __region_RAM_start__ to __region_RAM_end__]; |
<> | 132:9baf128c2fab | 19 | |
<> | 132:9baf128c2fab | 20 | /* Stack and Heap */ |
<> | 132:9baf128c2fab | 21 | define symbol __size_cstack__ = 0x8000; |
<> | 132:9baf128c2fab | 22 | define symbol __size_heap__ = 0x10000; |
<> | 132:9baf128c2fab | 23 | define block CSTACK with alignment = 8, size = __size_cstack__ { }; |
<> | 132:9baf128c2fab | 24 | define block HEAP with alignment = 8, size = __size_heap__ { }; |
<> | 132:9baf128c2fab | 25 | define block STACKHEAP with fixed order { block HEAP, block CSTACK }; |
<> | 132:9baf128c2fab | 26 | |
<> | 132:9baf128c2fab | 27 | initialize by copy with packing = zeros { readwrite }; |
<> | 132:9baf128c2fab | 28 | do not initialize { section .noinit }; |
<> | 132:9baf128c2fab | 29 | |
<> | 132:9baf128c2fab | 30 | place at address mem:__intvec_start__ { readonly section .intvec }; |
<> | 132:9baf128c2fab | 31 | |
<> | 132:9baf128c2fab | 32 | place in ROM_region { readonly }; |
<> | 132:9baf128c2fab | 33 | place in RAM_region { readwrite, block STACKHEAP }; |