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:
AnnaBridge
Date:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
Parent:
171:3a7713b1edbc
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 161:aa5281ff4a02 1 /* mbed Microcontroller Library
AnnaBridge 161:aa5281ff4a02 2 * Copyright (c) 2006-2013 ARM Limited
AnnaBridge 161:aa5281ff4a02 3 *
AnnaBridge 161:aa5281ff4a02 4 * Licensed under the Apache License, Version 2.0 (the "License");
AnnaBridge 161:aa5281ff4a02 5 * you may not use this file except in compliance with the License.
AnnaBridge 161:aa5281ff4a02 6 * You may obtain a copy of the License at
AnnaBridge 161:aa5281ff4a02 7 *
AnnaBridge 161:aa5281ff4a02 8 * http://www.apache.org/licenses/LICENSE-2.0
AnnaBridge 161:aa5281ff4a02 9 *
AnnaBridge 161:aa5281ff4a02 10 * Unless required by applicable law or agreed to in writing, software
AnnaBridge 161:aa5281ff4a02 11 * distributed under the License is distributed on an "AS IS" BASIS,
AnnaBridge 161:aa5281ff4a02 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
AnnaBridge 161:aa5281ff4a02 13 * See the License for the specific language governing permissions and
AnnaBridge 161:aa5281ff4a02 14 * limitations under the License.
AnnaBridge 161:aa5281ff4a02 15 */
AnnaBridge 161:aa5281ff4a02 16 #ifndef MBED_PINNAMES_H
AnnaBridge 161:aa5281ff4a02 17 #define MBED_PINNAMES_H
AnnaBridge 161:aa5281ff4a02 18
AnnaBridge 161:aa5281ff4a02 19 #include "cmsis.h"
AnnaBridge 161:aa5281ff4a02 20
AnnaBridge 161:aa5281ff4a02 21 #ifdef __cplusplus
AnnaBridge 161:aa5281ff4a02 22 extern "C" {
AnnaBridge 161:aa5281ff4a02 23 #endif
AnnaBridge 161:aa5281ff4a02 24
AnnaBridge 161:aa5281ff4a02 25 typedef enum {
AnnaBridge 161:aa5281ff4a02 26 PIN_INPUT,
AnnaBridge 161:aa5281ff4a02 27 PIN_OUTPUT
AnnaBridge 161:aa5281ff4a02 28 } PinDirection;
AnnaBridge 161:aa5281ff4a02 29
AnnaBridge 161:aa5281ff4a02 30 #define PORT_SHIFT 4
AnnaBridge 161:aa5281ff4a02 31
AnnaBridge 161:aa5281ff4a02 32 typedef enum {
AnnaBridge 161:aa5281ff4a02 33 P0_0 = 0,
AnnaBridge 161:aa5281ff4a02 34 P0_1, P0_2, P0_3, P0_4, P0_5,_P0_6,_P0_7,_P0_8,_P0_9,_P0_10,_P0_11,_P0_12,_P0_13,_P0_14,_P0_15,
AnnaBridge 161:aa5281ff4a02 35 P1_0, P1_1, P1_2, P1_3, P1_4, P1_5, P1_6, P1_7, P1_8, P1_9, P1_10, P1_11, P1_12, P1_13, P1_14, P1_15,
AnnaBridge 161:aa5281ff4a02 36 P2_0, P2_1, P2_2, P2_3, P2_4, P2_5, P2_6, P2_7, P2_8, P2_9, P2_10, P2_11, P2_12, P2_13, P2_14, P2_15,
AnnaBridge 161:aa5281ff4a02 37 P3_0, P3_1, P3_2, P3_3, P3_4, P3_5, P3_6, P3_7, P3_8, P3_9, P3_10, P3_11, P3_12, P3_13, P3_14, P3_15,
AnnaBridge 161:aa5281ff4a02 38 P4_0, P4_1, P4_2, P4_3, P4_4, P4_5, P4_6, P4_7, P4_8, P4_9, P4_10, P4_11, P4_12, P4_13, P4_14, P4_15,
AnnaBridge 161:aa5281ff4a02 39 P5_0, P5_1, P5_2, P5_3, P5_4, P5_5, P5_6, P5_7, P5_8, P5_9, P5_10, P5_11, P5_12, P5_13, P5_14, P5_15,
AnnaBridge 161:aa5281ff4a02 40 P6_0, P6_1, P6_2, P6_3, P6_4, P6_5, P6_6, P6_7, P6_8, P6_9, P6_10, P6_11, P6_12, P6_13, P6_14, P6_15,
AnnaBridge 161:aa5281ff4a02 41 P7_0, P7_1, P7_2, P7_3, P7_4, P7_5, P7_6, P7_7, P7_8, P7_9, P7_10, P7_11, P7_12, P7_13, P7_14, P7_15,
AnnaBridge 161:aa5281ff4a02 42 P8_0, P8_1, P8_2, P8_3, P8_4, P8_5, P8_6, P8_7, P8_8, P8_9, P8_10, P8_11, P8_12, P8_13, P8_14, P8_15,
AnnaBridge 161:aa5281ff4a02 43 P9_0, P9_1, P9_2, P9_3, P9_4, P9_5, P9_6, P9_7, P9_8, P9_9, P9_10, P9_11, P9_12, P9_13, P9_14, P9_15,
AnnaBridge 161:aa5281ff4a02 44
AnnaBridge 161:aa5281ff4a02 45 // mbed Pin Names
AnnaBridge 161:aa5281ff4a02 46 LED1 = P2_4,
AnnaBridge 161:aa5281ff4a02 47 LED2 = P2_5,
AnnaBridge 161:aa5281ff4a02 48 LED3 = P7_0,
AnnaBridge 161:aa5281ff4a02 49 LED4 = P2_2,
AnnaBridge 161:aa5281ff4a02 50
AnnaBridge 161:aa5281ff4a02 51 LED_GREEN = LED1,
AnnaBridge 161:aa5281ff4a02 52 LED_YELLOW = LED2,
AnnaBridge 161:aa5281ff4a02 53 LED_ORANGE = LED3,
AnnaBridge 161:aa5281ff4a02 54 LED_RED = LED4,
AnnaBridge 161:aa5281ff4a02 55
AnnaBridge 161:aa5281ff4a02 56 USBTX = P3_15,
AnnaBridge 161:aa5281ff4a02 57 USBRX = P0_2,
AnnaBridge 161:aa5281ff4a02 58
AnnaBridge 161:aa5281ff4a02 59 // Arduiono Pin Names
AnnaBridge 161:aa5281ff4a02 60 D0 = P5_14,
AnnaBridge 161:aa5281ff4a02 61 D1 = P5_15,
AnnaBridge 161:aa5281ff4a02 62 D2 = P5_9,
AnnaBridge 161:aa5281ff4a02 63 D3 = P5_8,
AnnaBridge 161:aa5281ff4a02 64 D4 = P5_11,
AnnaBridge 161:aa5281ff4a02 65 D5 = P5_10,
AnnaBridge 161:aa5281ff4a02 66 D6 = P2_1,
AnnaBridge 161:aa5281ff4a02 67 D7 = P2_0,
AnnaBridge 161:aa5281ff4a02 68 D8 = P3_10,
AnnaBridge 161:aa5281ff4a02 69 D9 = P3_9,
AnnaBridge 161:aa5281ff4a02 70 D10 = P6_13,
AnnaBridge 161:aa5281ff4a02 71 D11 = P6_14,
AnnaBridge 161:aa5281ff4a02 72 D12 = P6_15,
AnnaBridge 161:aa5281ff4a02 73 D13 = P6_12,
AnnaBridge 161:aa5281ff4a02 74 D14 = P1_7,
AnnaBridge 161:aa5281ff4a02 75 D15 = P1_6,
AnnaBridge 161:aa5281ff4a02 76
AnnaBridge 161:aa5281ff4a02 77 A0 = P1_15,
AnnaBridge 161:aa5281ff4a02 78 A1 = P1_14,
AnnaBridge 161:aa5281ff4a02 79 A2 = P1_13,
AnnaBridge 161:aa5281ff4a02 80 A3 = P1_12,
AnnaBridge 161:aa5281ff4a02 81 A4 = P1_11,
AnnaBridge 161:aa5281ff4a02 82 A5 = P1_10,
AnnaBridge 161:aa5281ff4a02 83
AnnaBridge 161:aa5281ff4a02 84 I2C_SCL = D15,
AnnaBridge 161:aa5281ff4a02 85 I2C_SDA = D14,
AnnaBridge 161:aa5281ff4a02 86
AnnaBridge 161:aa5281ff4a02 87 USER_BUTTON0 = P7_2,
AnnaBridge 161:aa5281ff4a02 88 USER_BUTTON1 = P7_3,
AnnaBridge 161:aa5281ff4a02 89 // Standardized button names
AnnaBridge 161:aa5281ff4a02 90 BUTTON1 = USER_BUTTON0,
AnnaBridge 161:aa5281ff4a02 91
AnnaBridge 161:aa5281ff4a02 92 // Not connected
AnnaBridge 161:aa5281ff4a02 93 NC = (int)0xFFFFFFFF
AnnaBridge 161:aa5281ff4a02 94 } PinName;
AnnaBridge 161:aa5281ff4a02 95
AnnaBridge 161:aa5281ff4a02 96 typedef enum {
AnnaBridge 161:aa5281ff4a02 97 PullUp = 0,
AnnaBridge 161:aa5281ff4a02 98 PullDown = 3,
AnnaBridge 161:aa5281ff4a02 99 PullNone = 2,
AnnaBridge 161:aa5281ff4a02 100 OpenDrain = 4,
AnnaBridge 161:aa5281ff4a02 101 PullDefault = PullDown
AnnaBridge 161:aa5281ff4a02 102 } PinMode;
AnnaBridge 161:aa5281ff4a02 103
AnnaBridge 161:aa5281ff4a02 104 #define PINGROUP(pin) (((pin)>>PORT_SHIFT)&0x0f)
AnnaBridge 161:aa5281ff4a02 105 #define PINNO(pin) ((pin)&0x0f)
AnnaBridge 161:aa5281ff4a02 106
AnnaBridge 161:aa5281ff4a02 107 #ifdef __cplusplus
AnnaBridge 161:aa5281ff4a02 108 }
AnnaBridge 161:aa5281ff4a02 109 #endif
AnnaBridge 161:aa5281ff4a02 110
AnnaBridge 161:aa5281ff4a02 111 #endif