mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Committer:
mbed_official
Date:
Fri Jul 31 14:15:09 2015 +0100
Revision:
600:7d17ca308cd1
Parent:
554:edd95c0879f8
Synchronized with git revision e4cd8bbd3e05b68e5a7f466c74035a85743d45e0

Full URL: https://github.com/mbedmicro/mbed/commit/e4cd8bbd3e05b68e5a7f466c74035a85743d45e0/

Enable LPC8xx usart when configuring it

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 554:edd95c0879f8 1 /* mbed Microcontroller Library - Vectors
mbed_official 554:edd95c0879f8 2 * Copyright (c) 2006-2015 ARM Limited. All rights reserved.
mbed_official 554:edd95c0879f8 3 */
mbed_official 554:edd95c0879f8 4
mbed_official 554:edd95c0879f8 5 #ifndef MBED_VECTOR_DEFNS_H
mbed_official 554:edd95c0879f8 6 #define MBED_VECTOR_DEFNS_H
mbed_official 554:edd95c0879f8 7
mbed_official 554:edd95c0879f8 8 // Assember Macros
mbed_official 554:edd95c0879f8 9 #ifdef __ARMCC_VERSION
mbed_official 554:edd95c0879f8 10 #define EXPORT(x) EXPORT x
mbed_official 554:edd95c0879f8 11 #define WEAK_EXPORT(x) EXPORT x [WEAK]
mbed_official 554:edd95c0879f8 12 #define IMPORT(x) IMPORT x
mbed_official 554:edd95c0879f8 13 #define LABEL(x) x
mbed_official 554:edd95c0879f8 14 #else
mbed_official 554:edd95c0879f8 15 #define EXPORT(x) .global x
mbed_official 554:edd95c0879f8 16 #define WEAK_EXPORT(x) .weak x
mbed_official 554:edd95c0879f8 17 #define IMPORT(x) .global x
mbed_official 554:edd95c0879f8 18 #define LABEL(x) x:
mbed_official 554:edd95c0879f8 19 #endif
mbed_official 554:edd95c0879f8 20
mbed_official 554:edd95c0879f8 21 // RealMonitor
mbed_official 554:edd95c0879f8 22 // Requires RAM (0x40000040-0x4000011F) to be allocated by the linker
mbed_official 554:edd95c0879f8 23
mbed_official 554:edd95c0879f8 24 // RealMonitor entry points
mbed_official 554:edd95c0879f8 25 #define rm_init_entry 0x7fffff91
mbed_official 554:edd95c0879f8 26 #define rm_undef_handler 0x7fffffa0
mbed_official 554:edd95c0879f8 27 #define rm_prefetchabort_handler 0x7fffffb0
mbed_official 554:edd95c0879f8 28 #define rm_dataabort_handler 0x7fffffc0
mbed_official 554:edd95c0879f8 29 #define rm_irqhandler2 0x7fffffe0
mbed_official 554:edd95c0879f8 30 //#define rm_RunningToStopped 0x7ffff808 // ARM - MBED64
mbed_official 554:edd95c0879f8 31 #define rm_RunningToStopped 0x7ffff820 // ARM - PHAT40
mbed_official 554:edd95c0879f8 32
mbed_official 554:edd95c0879f8 33 // Unofficial RealMonitor entry points and variables
mbed_official 554:edd95c0879f8 34 #define RM_MSG_SWI 0x00940000
mbed_official 554:edd95c0879f8 35 #define StateP 0x40000040
mbed_official 554:edd95c0879f8 36
mbed_official 554:edd95c0879f8 37 // VIC register addresses
mbed_official 554:edd95c0879f8 38 #define VIC_Base 0xfffff000
mbed_official 554:edd95c0879f8 39 #define VICAddress_Offset 0xf00
mbed_official 554:edd95c0879f8 40 #define VICVectAddr0_Offset 0x100
mbed_official 554:edd95c0879f8 41 #define VICVectAddr2_Offset 0x108
mbed_official 554:edd95c0879f8 42 #define VICVectAddr3_Offset 0x10c
mbed_official 554:edd95c0879f8 43 #define VICVectAddr31_Offset 0x17c
mbed_official 554:edd95c0879f8 44 #define VICIntEnClr_Offset 0x014
mbed_official 554:edd95c0879f8 45 #define VICIntEnClr (*(volatile unsigned long *)(VIC_Base + 0x014))
mbed_official 554:edd95c0879f8 46 #define VICVectAddr2 (*(volatile unsigned long *)(VIC_Base + 0x108))
mbed_official 554:edd95c0879f8 47 #define VICVectAddr3 (*(volatile unsigned long *)(VIC_Base + 0x10C))
mbed_official 554:edd95c0879f8 48
mbed_official 554:edd95c0879f8 49 // ARM Mode bits and Interrupt flags in PSRs
mbed_official 554:edd95c0879f8 50 #define Mode_USR 0x10
mbed_official 554:edd95c0879f8 51 #define Mode_FIQ 0x11
mbed_official 554:edd95c0879f8 52 #define Mode_IRQ 0x12
mbed_official 554:edd95c0879f8 53 #define Mode_SVC 0x13
mbed_official 554:edd95c0879f8 54 #define Mode_ABT 0x17
mbed_official 554:edd95c0879f8 55 #define Mode_UND 0x1B
mbed_official 554:edd95c0879f8 56 #define Mode_SYS 0x1F
mbed_official 554:edd95c0879f8 57 #define I_Bit 0x80 // when I bit is set, IRQ is disabled
mbed_official 554:edd95c0879f8 58 #define F_Bit 0x40 // when F bit is set, FIQ is disabled
mbed_official 554:edd95c0879f8 59
mbed_official 554:edd95c0879f8 60 // MCU RAM
mbed_official 554:edd95c0879f8 61 #define LPC2460_RAM_ADDRESS 0x40000000 // RAM Base
mbed_official 554:edd95c0879f8 62 #define LPC2460_RAM_SIZE 0x10000 // 64KB
mbed_official 554:edd95c0879f8 63
mbed_official 554:edd95c0879f8 64 // ISR Stack Allocation
mbed_official 554:edd95c0879f8 65 #define UND_stack_size 0x00000040
mbed_official 554:edd95c0879f8 66 #define SVC_stack_size 0x00000040
mbed_official 554:edd95c0879f8 67 #define ABT_stack_size 0x00000040
mbed_official 554:edd95c0879f8 68 #define FIQ_stack_size 0x00000000
mbed_official 554:edd95c0879f8 69 #define IRQ_stack_size 0x00000040
mbed_official 554:edd95c0879f8 70
mbed_official 554:edd95c0879f8 71 #define ISR_stack_size (UND_stack_size + SVC_stack_size + ABT_stack_size + FIQ_stack_size + IRQ_stack_size)
mbed_official 554:edd95c0879f8 72
mbed_official 554:edd95c0879f8 73 // Full Descending Stack, so top-most stack points to just above the top of RAM
mbed_official 554:edd95c0879f8 74 #define LPC2460_STACK_TOP (LPC2460_RAM_ADDRESS + LPC2460_RAM_SIZE)
mbed_official 554:edd95c0879f8 75 #define USR_STACK_TOP (LPC2460_STACK_TOP - ISR_stack_size)
mbed_official 554:edd95c0879f8 76
mbed_official 554:edd95c0879f8 77 #endif