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_NCS36510/TOOLCHAIN_IAR/NCS36510.icf@140:97feb9bacc10, 2017-04-12 (annotated)
- Committer:
- <>
- Date:
- Wed Apr 12 16:07:08 2017 +0100
- Revision:
- 140:97feb9bacc10
- Parent:
- 125:2e9cc70d1897
- Child:
- 142:4eea097334d6
Release 140 of the mbed library
Ports for Upcoming Targets
3841: Add nRf52840 target https://github.com/ARMmbed/mbed-os/pull/3841
3992: Introducing UBLOX_C030 platform. https://github.com/ARMmbed/mbed-os/pull/3992
Fixes and Changes
3951: [NUCLEO_F303ZE] Correct ARDUINO pin https://github.com/ARMmbed/mbed-os/pull/3951
4021: Fixing a macro to detect when RTOS was in use for the NRF52840_DK https://github.com/ARMmbed/mbed-os/pull/4021
3979: KW24D: Add missing SPI defines and Arduino connector definitions https://github.com/ARMmbed/mbed-os/pull/3979
3990: UBLOX_C027: construct a ticker-based wait, rather than calling wait_ms(), in the https://github.com/ARMmbed/mbed-os/pull/3990
4003: Fixed OBOE in async serial tx for NRF52 target, fixes #4002 https://github.com/ARMmbed/mbed-os/pull/4003
4012: STM32: Correct I2C master error handling https://github.com/ARMmbed/mbed-os/pull/4012
4020: NUCLEO_L011K4 remove unsupported tool chain files https://github.com/ARMmbed/mbed-os/pull/4020
4065: K66F: Move bss section to m_data_2 Section https://github.com/ARMmbed/mbed-os/pull/4065
4014: Issue 3763: Reduce heap allocation in the GCC linker file https://github.com/ARMmbed/mbed-os/pull/4014
4030: [STM32L0] reduce IAR heap and stack size for small targets https://github.com/ARMmbed/mbed-os/pull/4030
4109: NUCLEO_L476RG : minor serial pin update https://github.com/ARMmbed/mbed-os/pull/4109
3982: Ticker - kl25z bugfix for handling events in the past https://github.com/ARMmbed/mbed-os/pull/3982
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AnnaBridge | 125:2e9cc70d1897 | 1 | |
AnnaBridge | 125:2e9cc70d1897 | 2 | /* The memory space denoting the maximum possible amount of addressable memory */ |
AnnaBridge | 125:2e9cc70d1897 | 3 | define memory Mem with size = 4G; |
AnnaBridge | 125:2e9cc70d1897 | 4 | |
AnnaBridge | 125:2e9cc70d1897 | 5 | /* Memory regions in an address space */ |
AnnaBridge | 125:2e9cc70d1897 | 6 | define region FLASHA = Mem:[from 0x00003000 size 0x4D000]; /* 308K = 320K - 4K(FIB table) - 8K(Persistent) */ |
AnnaBridge | 125:2e9cc70d1897 | 7 | define region FLASHB = Mem:[from 0x00100000 size 0x50000]; |
AnnaBridge | 125:2e9cc70d1897 | 8 | define region RAMA = Mem:[from 0x3FFFC000 size 0x4000]; |
AnnaBridge | 125:2e9cc70d1897 | 9 | define region RAMB = Mem:[from 0x3FFF8000 size 0x4000]; |
AnnaBridge | 125:2e9cc70d1897 | 10 | /* G2H ZPRO requires RAMC to be enabled */ |
AnnaBridge | 125:2e9cc70d1897 | 11 | define region RAMC = Mem:[from 0x3FFF4000 size 0x4000]; |
AnnaBridge | 125:2e9cc70d1897 | 12 | define region RAM_ALL = Mem:[from 0x3FFF4000 size 0xC000]; |
AnnaBridge | 125:2e9cc70d1897 | 13 | |
AnnaBridge | 125:2e9cc70d1897 | 14 | /* Create a stack */ |
AnnaBridge | 125:2e9cc70d1897 | 15 | define block CSTACK with size = 0x200, alignment = 8 { }; |
AnnaBridge | 125:2e9cc70d1897 | 16 | |
AnnaBridge | 125:2e9cc70d1897 | 17 | /* No Heap is created for C library, all memory management should be handled by the application */ |
AnnaBridge | 125:2e9cc70d1897 | 18 | define block HEAP with alignment = 8, size = 0x4000 { }; |
AnnaBridge | 125:2e9cc70d1897 | 19 | |
AnnaBridge | 125:2e9cc70d1897 | 20 | /* Handle initialization */ |
AnnaBridge | 125:2e9cc70d1897 | 21 | do not initialize { section .noinit }; |
AnnaBridge | 125:2e9cc70d1897 | 22 | |
AnnaBridge | 125:2e9cc70d1897 | 23 | /* Initialize RW sections, exclude zero-initialized sections */ |
AnnaBridge | 125:2e9cc70d1897 | 24 | initialize by copy with packing = none { readwrite }; |
AnnaBridge | 125:2e9cc70d1897 | 25 | |
AnnaBridge | 125:2e9cc70d1897 | 26 | /* Initialize the code in RAM, copied over from FLASH */ |
AnnaBridge | 125:2e9cc70d1897 | 27 | initialize by copy with packing = none { readonly code section EXECINRAM }; |
AnnaBridge | 125:2e9cc70d1897 | 28 | /*keep { readonly code section .EXECINRAM* } except { readonly code section EXECINRAM };*/ |
AnnaBridge | 125:2e9cc70d1897 | 29 | |
AnnaBridge | 125:2e9cc70d1897 | 30 | /* Place startup code at a fixed address */ |
AnnaBridge | 125:2e9cc70d1897 | 31 | place at start of FLASHA { readonly section .intvec, readonly section SWVERSION,readonly section FIBTABLE,readonly section .cstartup }; |
AnnaBridge | 125:2e9cc70d1897 | 32 | |
AnnaBridge | 125:2e9cc70d1897 | 33 | /* Place code and data */ |
AnnaBridge | 125:2e9cc70d1897 | 34 | |
AnnaBridge | 125:2e9cc70d1897 | 35 | /* Place constants and initializers in FLASHA: .rodata and .data_init */ |
AnnaBridge | 125:2e9cc70d1897 | 36 | place in FLASHA { readonly }; |
AnnaBridge | 125:2e9cc70d1897 | 37 | |
AnnaBridge | 125:2e9cc70d1897 | 38 | /* Place .data, .bss, and .noinit */ |
AnnaBridge | 125:2e9cc70d1897 | 39 | /* and STACK */ |
AnnaBridge | 125:2e9cc70d1897 | 40 | /* The relocatable exception table needs to be aligned at 0x0 or multiple of 0x100, |
AnnaBridge | 125:2e9cc70d1897 | 41 | * hence, place it as first block in RAM. |
AnnaBridge | 125:2e9cc70d1897 | 42 | */ |
AnnaBridge | 125:2e9cc70d1897 | 43 | place at start of RAM_ALL { section RAM_VECTORS }; |
AnnaBridge | 125:2e9cc70d1897 | 44 | place in RAM_ALL { readonly code section EXECINRAM }; |
AnnaBridge | 125:2e9cc70d1897 | 45 | place at end of RAM_ALL { block CSTACK }; |
AnnaBridge | 125:2e9cc70d1897 | 46 | |
AnnaBridge | 125:2e9cc70d1897 | 47 | |
AnnaBridge | 125:2e9cc70d1897 | 48 | place in RAM_ALL { readwrite }; |
AnnaBridge | 125:2e9cc70d1897 | 49 | place in RAM_ALL { block HEAP }; |