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.

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?

UserRevisionLine numberNew 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 };