]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PinNames.h
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / hal / TARGET_NXP / TARGET_LPC11UXX / TARGET_LPC11U24_401 / PinNames.h
1 /* mbed Microcontroller Library
2  * Copyright (c) 2006-2013 ARM Limited
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #ifndef MBED_PINNAMES_H
17 #define MBED_PINNAMES_H
18
19 #include "cmsis.h"
20
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24
25 typedef enum {
26     PIN_INPUT,
27     PIN_OUTPUT
28 } PinDirection;
29
30 #define PORT_SHIFT  5
31
32 typedef enum {
33     // LPC11U Pin Names
34     P0_0 = 0,
35     P0_1 = 1,
36     P0_2 = 2,
37     P0_3 = 3,
38     P0_4 = 4,
39     P0_5 = 5,
40     P0_6 = 6,
41     P0_7 = 7,
42     P0_8 = 8,
43     P0_9 = 9,
44     P0_10 = 10,
45     P0_11 = 11,
46     P0_12 = 12,
47     P0_13 = 13,
48     P0_14 = 14,
49     P0_15 = 15,
50     P0_16 = 16,
51     P0_17 = 17,
52     P0_18 = 18,
53     P0_19 = 19,
54     P0_20 = 20,
55     P0_21 = 21,
56     P0_22 = 22,
57     P0_23 = 23,
58     P0_24 = 24,
59     P0_25 = 25,
60     P0_26 = 26,
61     P0_27 = 27,
62
63     P1_0 = 32,
64     P1_1 = 33,
65     P1_2 = 34,
66     P1_3 = 35,
67     P1_4 = 36,
68     P1_5 = 37,
69     P1_6 = 38,
70     P1_7 = 39,
71     P1_8 = 40,
72     P1_9 = 41,
73     P1_10 = 42,
74     P1_11 = 43,
75     P1_12 = 44,
76     P1_13 = 45,
77     P1_14 = 46,
78     P1_15 = 47,
79     P1_16 = 48,
80     P1_17 = 49,
81     P1_18 = 50,
82     P1_19 = 51,
83     P1_20 = 52,
84     P1_21 = 53,
85     P1_22 = 54,
86     P1_23 = 55,
87     P1_24 = 56,
88     P1_25 = 57,
89     P1_26 = 58,
90     P1_27 = 59,
91     P1_28 = 60,
92     P1_29 = 61,
93
94     P1_31 = 63,
95
96     // mbed DIP Pin Names
97     p5  = P0_9,
98     p6  = P0_8,
99     p7  = P1_29,
100     p8  = P0_2,
101     p9  = P1_27,
102     p10 = P1_26,
103     p11 = P1_22,
104     p12 = P1_21,
105     p13 = P1_20,
106     p14 = P1_23,
107     p15 = P0_11,
108     p16 = P0_12,
109     p17 = P0_13,
110     p18 = P0_14,
111     p19 = P0_16,
112     p20 = P0_22,
113     p21 = P0_7,
114     p22 = P0_17,
115     p23 = P1_17,
116     p24 = P1_18,
117     p25 = P1_24,
118     p26 = P1_25,
119     p27 = P0_4,
120     p28 = P0_5,
121     p29 = P1_5,
122     p30 = P1_2,
123
124     p33 = P0_3,
125     p34 = P1_15,
126     p35 = P0_20,
127     p36 = P0_21,
128
129     // Other mbed Pin Names
130     LED1 = P1_8,
131     LED2 = P1_9,
132     LED3 = P1_10,
133     LED4 = P1_11,
134
135     USBTX = P0_19,
136     USBRX = P0_18,
137
138     // for Arch V1.1
139     D0 = P0_18,
140     D1 = P0_19,
141     D2 = P0_17,
142     D3 = P1_17,
143     D4 = P1_18,
144     D5 = P1_24,
145     D6 = P1_25,
146     D7 = P1_5,
147     D8 = P1_26,
148     D9 = P1_27,
149     D10 = P0_2,
150     D11 = P0_9,  // P1_29 for Arch V1.0
151     D12 = P0_8,
152     D13 = P1_29, // P0_9 for Arch V1.0
153
154     D14 = P0_5,
155     D15 = P0_4,
156
157     A0 = P0_11,
158     A1 = P0_12,
159     A2 = P0_13,
160     A3 = P0_14,
161     A4 = P0_16,
162     A5 = P0_22,
163
164     I2C_SCL = D15,
165     I2C_SDA = D14,
166
167     // Not connected
168     NC = (int)0xFFFFFFFF,
169 } PinName;
170
171 typedef enum {
172     CHANNEL0 = FLEX_INT0_IRQn,
173     CHANNEL1 = FLEX_INT1_IRQn,
174     CHANNEL2 = FLEX_INT2_IRQn,
175     CHANNEL3 = FLEX_INT3_IRQn,
176     CHANNEL4 = FLEX_INT4_IRQn,
177     CHANNEL5 = FLEX_INT5_IRQn,
178     CHANNEL6 = FLEX_INT6_IRQn,
179     CHANNEL7 = FLEX_INT7_IRQn
180 } Channel;
181
182 typedef enum {
183     PullUp = 2,
184     PullDown = 1,
185     PullNone = 0,
186     Repeater = 3,
187     OpenDrain = 4,
188     PullDefault = PullDown
189 } PinMode;
190
191 #ifdef __cplusplus
192 }
193 #endif
194
195 #endif