mirror of https://github.com/ARMmbed/mbed-os.git
235 lines
5.6 KiB
C
235 lines
5.6 KiB
C
/* mbed Microcontroller Library
|
|
* Copyright (c) 2006-2013 ARM Limited
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
#ifndef MBED_PINNAMES_H
|
|
#define MBED_PINNAMES_H
|
|
|
|
#include "cmsis.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
PIN_INPUT,
|
|
PIN_OUTPUT
|
|
} PinDirection;
|
|
|
|
#define PORT_SHIFT 12
|
|
#define PIN_SHIFT 8
|
|
|
|
typedef enum {
|
|
// LPC1114 Pin Names (PORT[15:12] + PIN[11:8] + IOCON offset[7:0])
|
|
|
|
P0_0 = (0 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x0c,
|
|
P0_1 = (0 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x10,
|
|
P0_2 = (0 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x1c,
|
|
P0_3 = (0 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0x2c,
|
|
P0_4 = (0 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x30,
|
|
P0_5 = (0 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x34,
|
|
P0_6 = (0 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0x4c,
|
|
P0_7 = (0 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0x50,
|
|
P0_8 = (0 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x60,
|
|
P0_9 = (0 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x64,
|
|
P0_11 = (0 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x74,
|
|
|
|
P1_0 = (1 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x78,
|
|
P1_1 = (1 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x7c,
|
|
P1_2 = (1 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x80,
|
|
P1_4 = (1 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x94,
|
|
P1_5 = (1 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0xa0,
|
|
P1_6 = (1 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0xa4,
|
|
P1_7 = (1 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0xa8,
|
|
P1_8 = (1 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x14,
|
|
P1_9 = (1 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x38,
|
|
P1_10 = (1 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x6c,
|
|
P1_11 = (1 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x98,
|
|
|
|
P2_0 = (2 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x08,
|
|
P2_1 = (2 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x28,
|
|
P2_2 = (2 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x5c,
|
|
P2_3 = (2 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0x8c,
|
|
P2_4 = (2 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x40,
|
|
P2_5 = (2 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x44,
|
|
P2_6 = (2 << PORT_SHIFT) | (6 << PIN_SHIFT) | 0x00,
|
|
P2_7 = (2 << PORT_SHIFT) | (7 << PIN_SHIFT) | 0x20,
|
|
P2_8 = (2 << PORT_SHIFT) | (8 << PIN_SHIFT) | 0x24,
|
|
P2_9 = (2 << PORT_SHIFT) | (9 << PIN_SHIFT) | 0x54,
|
|
P2_10 = (2 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x58,
|
|
P2_11 = (2 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x70,
|
|
|
|
P3_0 = (3 << PORT_SHIFT) | (0 << PIN_SHIFT) | 0x84,
|
|
P3_1 = (3 << PORT_SHIFT) | (1 << PIN_SHIFT) | 0x88,
|
|
P3_2 = (3 << PORT_SHIFT) | (2 << PIN_SHIFT) | 0x9c,
|
|
P3_3 = (3 << PORT_SHIFT) | (3 << PIN_SHIFT) | 0xac,
|
|
P3_4 = (3 << PORT_SHIFT) | (4 << PIN_SHIFT) | 0x3c,
|
|
P3_5 = (3 << PORT_SHIFT) | (5 << PIN_SHIFT) | 0x48,
|
|
|
|
// mbed DIP Pin Names (CQ board)
|
|
// p4 = P0_0,
|
|
p5 = P0_9,
|
|
p6 = P0_8,
|
|
p7 = P0_6,
|
|
p8 = P1_5,
|
|
p9 = P1_7,
|
|
p10 = P1_6,
|
|
p11 = P0_7,
|
|
p12 = P1_0,
|
|
p13 = P1_1,
|
|
p14 = P1_2,
|
|
p15 = P0_11,
|
|
p16 = P1_0,
|
|
p17 = P1_1,
|
|
p18 = P1_2,
|
|
p20 = P1_4,
|
|
p22 = P0_2,
|
|
p23 = P0_11,
|
|
p24 = P0_2,
|
|
p25 = P1_8,
|
|
p26 = P1_9,
|
|
p27 = P0_4,
|
|
p28 = P0_5,
|
|
p29 = P0_3,
|
|
p30 = P0_1,
|
|
|
|
// Other mbed Pin Names
|
|
LED1 = P1_5,
|
|
LED2 = P0_7,
|
|
LED3 = P1_5,
|
|
LED4 = P0_7,
|
|
|
|
USBTX = P1_7,
|
|
USBRX = P1_6,
|
|
|
|
// mbed DIP Pin Names (LPCXpresso LPC1114)
|
|
// xp4 = P0_0,
|
|
xp5 = P0_9,
|
|
xp6 = P0_8,
|
|
xp7 = P2_11,
|
|
xp8 = P0_2,
|
|
xp9 = P1_7,
|
|
xp10 = P1_6,
|
|
xp11 = P0_7,
|
|
xp12 = P2_0,
|
|
xp13 = P2_1,
|
|
xp14 = P2_2,
|
|
xp15 = P0_11,
|
|
xp16 = P1_0,
|
|
xp17 = P1_1,
|
|
xp18 = P1_2,
|
|
xp20 = P1_4,
|
|
xp21 = P1_5,
|
|
xp22 = P1_8,
|
|
xp23 = P0_6,
|
|
xp25 = P3_0,
|
|
xp26 = P3_1,
|
|
xp27 = P3_2,
|
|
|
|
xp29 = P3_3,
|
|
xp30 = P2_10,
|
|
xp31 = P2_9,
|
|
xp32 = P2_8,
|
|
xp33 = P2_7,
|
|
xp34 = P2_6,
|
|
xp35 = P2_5,
|
|
xp36 = P2_4,
|
|
xp37 = P2_3,
|
|
xp38 = P1_11,
|
|
xp39 = P1_10,
|
|
xp40 = P1_9,
|
|
xp41 = P0_4,
|
|
xp42 = P0_5,
|
|
xp43 = P0_3,
|
|
xp44 = P0_1,
|
|
|
|
// Other mbed Pin Names
|
|
xLED1 = P0_7,
|
|
|
|
// DIP Package Names
|
|
|
|
dp1 = P0_8,
|
|
dp2 = P0_9,
|
|
dp4 = P0_11,
|
|
dp5 = P0_5,
|
|
dp6 = P0_6,
|
|
dp9 = P1_0,
|
|
dp10 = P1_1,
|
|
dp11 = P1_2,
|
|
dp13 = P1_4,
|
|
dp14 = P1_5,
|
|
dp15 = P1_6,
|
|
dp16 = P1_7,
|
|
dp17 = P1_8,
|
|
dp18 = P1_9,
|
|
// dp23 = P0_0,
|
|
dp24 = P0_1,
|
|
dp25 = P0_2,
|
|
dp26 = P0_3,
|
|
dp27 = P0_4,
|
|
dp28 = P0_7,
|
|
|
|
dip1 = P0_8,
|
|
dip2 = P0_9,
|
|
dip4 = P0_11,
|
|
dip5 = P0_5,
|
|
dip6 = P0_6,
|
|
dip9 = P1_0,
|
|
dip10 = P1_1,
|
|
dip11 = P1_2,
|
|
dip13 = P1_4,
|
|
dip14 = P1_5,
|
|
dip15 = P1_6,
|
|
dip16 = P1_7,
|
|
dip17 = P1_8,
|
|
dip18 = P1_9,
|
|
// dip23 = P0_0,
|
|
dip24 = P0_1,
|
|
dip25 = P0_2,
|
|
dip26 = P0_3,
|
|
dip27 = P0_4,
|
|
dip28 = P0_7,
|
|
|
|
|
|
|
|
// Not connected
|
|
NC = (int)0xFFFFFFFF,
|
|
} PinName;
|
|
|
|
typedef enum {
|
|
CHANNEL0 = WAKEUP0_IRQn,
|
|
CHANNEL1 = WAKEUP1_IRQn,
|
|
CHANNEL2 = WAKEUP2_IRQn,
|
|
CHANNEL3 = WAKEUP3_IRQn,
|
|
CHANNEL4 = WAKEUP4_IRQn,
|
|
CHANNEL5 = WAKEUP5_IRQn,
|
|
CHANNEL6 = WAKEUP6_IRQn,
|
|
CHANNEL7 = WAKEUP7_IRQn
|
|
} Channel;
|
|
|
|
typedef enum {
|
|
PullUp = 2,
|
|
PullDown = 1,
|
|
PullNone = 0,
|
|
Repeater = 3,
|
|
OpenDrain = 4,
|
|
PullDefault = PullDown
|
|
} PinMode;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|