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