]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11XX_11CXX/TARGET_LPC11XX/PinNames.h
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / hal / TARGET_NXP / TARGET_LPC11XX_11CXX / TARGET_LPC11XX / 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  12
31 #define PIN_SHIFT   8
32
33 typedef enum {
34     // LPC1114 Pin Names (PORT[15:12] + PIN[11:8] + IOCON offset[7:0])
35
36     P0_0  = (0 << PORT_SHIFT) | (0  << PIN_SHIFT) | 0x0c,
37     P0_1  = (0 << PORT_SHIFT) | (1  << PIN_SHIFT) | 0x10,
38     P0_2  = (0 << PORT_SHIFT) | (2  << PIN_SHIFT) | 0x1c,
39     P0_3  = (0 << PORT_SHIFT) | (3  << PIN_SHIFT) | 0x2c,
40     P0_4  = (0 << PORT_SHIFT) | (4  << PIN_SHIFT) | 0x30,
41     P0_5  = (0 << PORT_SHIFT) | (5  << PIN_SHIFT) | 0x34,
42     P0_6  = (0 << PORT_SHIFT) | (6  << PIN_SHIFT) | 0x4c,
43     P0_7  = (0 << PORT_SHIFT) | (7  << PIN_SHIFT) | 0x50,
44     P0_8  = (0 << PORT_SHIFT) | (8  << PIN_SHIFT) | 0x60,
45     P0_9  = (0 << PORT_SHIFT) | (9  << PIN_SHIFT) | 0x64,
46     P0_11 = (0 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x74,
47
48     P1_0  = (1 << PORT_SHIFT) | (0  << PIN_SHIFT) | 0x78,
49     P1_1  = (1 << PORT_SHIFT) | (1  << PIN_SHIFT) | 0x7c,
50     P1_2  = (1 << PORT_SHIFT) | (2  << PIN_SHIFT) | 0x80,
51     P1_4  = (1 << PORT_SHIFT) | (4  << PIN_SHIFT) | 0x94,
52     P1_5  = (1 << PORT_SHIFT) | (5  << PIN_SHIFT) | 0xa0,
53     P1_6  = (1 << PORT_SHIFT) | (6  << PIN_SHIFT) | 0xa4,
54     P1_7  = (1 << PORT_SHIFT) | (7  << PIN_SHIFT) | 0xa8,
55     P1_8  = (1 << PORT_SHIFT) | (8  << PIN_SHIFT) | 0x14,
56     P1_9  = (1 << PORT_SHIFT) | (9  << PIN_SHIFT) | 0x38,
57     P1_10 = (1 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x6c,
58     P1_11 = (1 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x98,
59
60     P2_0  = (2 << PORT_SHIFT) | (0  << PIN_SHIFT) | 0x08,
61     P2_1  = (2 << PORT_SHIFT) | (1  << PIN_SHIFT) | 0x28,
62     P2_2  = (2 << PORT_SHIFT) | (2  << PIN_SHIFT) | 0x5c,
63     P2_3  = (2 << PORT_SHIFT) | (3  << PIN_SHIFT) | 0x8c,
64     P2_4  = (2 << PORT_SHIFT) | (4  << PIN_SHIFT) | 0x40,
65     P2_5  = (2 << PORT_SHIFT) | (5  << PIN_SHIFT) | 0x44,
66     P2_6  = (2 << PORT_SHIFT) | (6  << PIN_SHIFT) | 0x00,
67     P2_7  = (2 << PORT_SHIFT) | (7  << PIN_SHIFT) | 0x20,
68     P2_8  = (2 << PORT_SHIFT) | (8  << PIN_SHIFT) | 0x24,
69     P2_9  = (2 << PORT_SHIFT) | (9  << PIN_SHIFT) | 0x54,
70     P2_10 = (2 << PORT_SHIFT) | (10 << PIN_SHIFT) | 0x58,
71     P2_11 = (2 << PORT_SHIFT) | (11 << PIN_SHIFT) | 0x70,
72    
73     P3_0  = (3 << PORT_SHIFT) | (0  << PIN_SHIFT) | 0x84,
74     P3_1  = (3 << PORT_SHIFT) | (1  << PIN_SHIFT) | 0x88,
75     P3_2  = (3 << PORT_SHIFT) | (2  << PIN_SHIFT) | 0x9c,
76     P3_3  = (3 << PORT_SHIFT) | (3  << PIN_SHIFT) | 0xac,
77     P3_4  = (3 << PORT_SHIFT) | (4  << PIN_SHIFT) | 0x3c,
78     P3_5  = (3 << PORT_SHIFT) | (5  << PIN_SHIFT) | 0x48,
79
80     // mbed DIP Pin Names (CQ board)
81 //    p4  = P0_0,
82     p5  = P0_9,
83     p6  = P0_8,
84     p7  = P0_6,
85     p8  = P1_5,
86     p9  = P1_7,
87     p10 = P1_6,
88     p11 = P0_7,
89     p12 = P1_0,
90     p13 = P1_1,
91     p14 = P1_2,
92     p15 = P0_11,
93     p16 = P1_0,
94     p17 = P1_1,
95     p18 = P1_2,
96     p20 = P1_4,
97     p22 = P0_2,
98     p23 = P0_11,
99     p24 = P0_2,
100     p25 = P1_8,
101     p26 = P1_9,
102     p27 = P0_4,
103     p28 = P0_5,
104     p29 = P0_3,
105     p30 = P0_1,
106
107     // Other mbed Pin Names
108     LED1 = P1_5,
109     LED2 = P0_7,
110     LED3 = P1_5,
111     LED4 = P0_7,
112
113     USBTX = P1_7,
114     USBRX = P1_6,
115
116     // mbed DIP Pin Names (LPCXpresso LPC1114)
117 //    xp4  = P0_0,
118     xp5  = P0_9,
119     xp6  = P0_8,
120     xp7  = P2_11,
121     xp8  = P0_2,
122     xp9  = P1_7,
123     xp10 = P1_6,
124     xp11 = P0_7,
125     xp12 = P2_0,
126     xp13 = P2_1,
127     xp14 = P2_2,
128     xp15 = P0_11,
129     xp16 = P1_0,
130     xp17 = P1_1,
131     xp18 = P1_2,
132     xp20 = P1_4,
133     xp21 = P1_5,
134     xp22 = P1_8,
135     xp23 = P0_6,
136     xp25 = P3_0,
137     xp26 = P3_1,
138     xp27 = P3_2,
139
140     xp29 = P3_3,
141     xp30 = P2_10,
142     xp31 = P2_9,
143     xp32 = P2_8,
144     xp33 = P2_7,
145     xp34 = P2_6,
146     xp35 = P2_5,
147     xp36 = P2_4,
148     xp37 = P2_3,
149     xp38 = P1_11,
150     xp39 = P1_10,
151     xp40 = P1_9,
152     xp41 = P0_4,
153     xp42 = P0_5,
154     xp43 = P0_3,
155     xp44 = P0_1,
156
157     // Other mbed Pin Names
158     xLED1 = P0_7,
159         
160         // DIP Package Names
161         
162         dp1  = P0_8,
163         dp2  = P0_9,
164         dp4  = P0_11,
165         dp5  = P0_5,
166         dp6  = P0_6,
167         dp9  = P1_0,
168         dp10 = P1_1,
169         dp11 = P1_2,
170         dp13 = P1_4,
171         dp14 = P1_5,
172         dp15 = P1_6,
173         dp16 = P1_7,
174         dp17 = P1_8,
175         dp18 = P1_9,
176 //      dp23 = P0_0,
177         dp24 = P0_1,
178         dp25 = P0_2,
179         dp26 = P0_3,
180         dp27 = P0_4,
181         dp28 = P0_7,
182         
183         dip1  = P0_8,
184         dip2  = P0_9,
185         dip4  = P0_11,
186         dip5  = P0_5,
187         dip6  = P0_6,
188         dip9  = P1_0,
189         dip10 = P1_1,
190         dip11 = P1_2,
191         dip13 = P1_4,
192         dip14 = P1_5,
193         dip15 = P1_6,
194         dip16 = P1_7,
195         dip17 = P1_8,
196         dip18 = P1_9,
197 //      dip23 = P0_0,
198         dip24 = P0_1,
199         dip25 = P0_2,
200         dip26 = P0_3,
201         dip27 = P0_4,
202         dip28 = P0_7,
203         
204         
205
206     // Not connected
207     NC = (int)0xFFFFFFFF,
208 } PinName;
209
210 typedef enum {
211     CHANNEL0 = WAKEUP0_IRQn,
212     CHANNEL1 = WAKEUP1_IRQn,
213     CHANNEL2 = WAKEUP2_IRQn,
214     CHANNEL3 = WAKEUP3_IRQn,
215     CHANNEL4 = WAKEUP4_IRQn,
216     CHANNEL5 = WAKEUP5_IRQn,
217     CHANNEL6 = WAKEUP6_IRQn,
218     CHANNEL7 = WAKEUP7_IRQn
219 } Channel;
220
221 typedef enum {
222     PullUp = 2,
223     PullDown = 1,
224     PullNone = 0,
225     Repeater = 3,
226     OpenDrain = 4,
227     PullDefault = PullDown
228 } PinMode;
229
230 #ifdef __cplusplus
231 }
232 #endif
233
234 #endif