Skip to content

Commit c9adf3c

Browse files
author
Cruz Monrreal
authored
Merge pull request #8307 from NXPmicro/Add-Support_RapidIoT
Add support for RapidIoT
2 parents 514ee00 + 9a47915 commit c9adf3c

File tree

10 files changed

+950
-0
lines changed

10 files changed

+950
-0
lines changed
Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
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_PERIPHERALNAMES_H
17+
#define MBED_PERIPHERALNAMES_H
18+
19+
#include "cmsis.h"
20+
21+
#ifdef __cplusplus
22+
extern "C" {
23+
#endif
24+
25+
typedef enum {
26+
OSC32KCLK = 0,
27+
} RTCName;
28+
29+
typedef enum {
30+
UART_0 = 0,
31+
UART_2 = 2,
32+
UART_3 = 3,
33+
UART_4 = 4,
34+
} UARTName;
35+
36+
#define STDIO_UART_TX USBTX
37+
#define STDIO_UART_RX USBRX
38+
#define STDIO_UART UART_0
39+
40+
typedef enum {
41+
I2C_0 = 0,
42+
I2C_1 = 1,
43+
} I2CName;
44+
45+
#define TPM_SHIFT 8
46+
typedef enum {
47+
PWM_1 = (0 << TPM_SHIFT) | (0), // FTM0 CH0
48+
PWM_2 = (0 << TPM_SHIFT) | (1), // FTM0 CH1
49+
PWM_3 = (0 << TPM_SHIFT) | (2), // FTM0 CH2
50+
PWM_4 = (0 << TPM_SHIFT) | (3), // FTM0 CH3
51+
PWM_5 = (0 << TPM_SHIFT) | (4), // FTM0 CH4
52+
PWM_6 = (0 << TPM_SHIFT) | (5), // FTM0 CH5
53+
PWM_7 = (0 << TPM_SHIFT) | (6), // FTM0 CH6
54+
PWM_8 = (0 << TPM_SHIFT) | (7), // FTM0 CH7
55+
PWM_9 = (1 << TPM_SHIFT) | (0), // FTM1 CH0
56+
PWM_10 = (1 << TPM_SHIFT) | (1), // FTM1 CH1
57+
PWM_11 = (1 << TPM_SHIFT) | (2), // FTM1 CH2
58+
PWM_12 = (1 << TPM_SHIFT) | (3), // FTM1 CH3
59+
PWM_13 = (1 << TPM_SHIFT) | (4), // FTM1 CH4
60+
PWM_14 = (1 << TPM_SHIFT) | (5), // FTM1 CH5
61+
PWM_15 = (1 << TPM_SHIFT) | (6), // FTM1 CH6
62+
PWM_16 = (1 << TPM_SHIFT) | (7), // FTM1 CH7
63+
PWM_17 = (2 << TPM_SHIFT) | (0), // FTM2 CH0
64+
PWM_18 = (2 << TPM_SHIFT) | (1), // FTM2 CH1
65+
PWM_19 = (2 << TPM_SHIFT) | (2), // FTM2 CH2
66+
PWM_20 = (2 << TPM_SHIFT) | (3), // FTM2 CH3
67+
PWM_21 = (2 << TPM_SHIFT) | (4), // FTM2 CH4
68+
PWM_22 = (2 << TPM_SHIFT) | (5), // FTM2 CH5
69+
PWM_23 = (2 << TPM_SHIFT) | (6), // FTM2 CH6
70+
PWM_24 = (2 << TPM_SHIFT) | (7), // FTM2 CH7
71+
PWM_25 = (3 << TPM_SHIFT) | (0), // FTM3 CH0
72+
PWM_26 = (3 << TPM_SHIFT) | (1), // FTM3 CH1
73+
PWM_27 = (3 << TPM_SHIFT) | (2), // FTM3 CH2
74+
PWM_28 = (3 << TPM_SHIFT) | (3), // FTM3 CH3
75+
PWM_29 = (3 << TPM_SHIFT) | (4), // FTM3 CH4
76+
PWM_30 = (3 << TPM_SHIFT) | (5), // FTM3 CH5
77+
PWM_31 = (3 << TPM_SHIFT) | (6), // FTM3 CH6
78+
PWM_32 = (3 << TPM_SHIFT) | (7), // FTM3 CH7
79+
} PWMName;
80+
81+
#define ADC_INSTANCE_SHIFT 8
82+
#define ADC_B_CHANNEL_SHIFT 5
83+
typedef enum {
84+
ADC0_SE4b = (0 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 4,
85+
ADC0_SE5b = (0 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 5,
86+
ADC0_SE6b = (0 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 6,
87+
ADC0_SE7b = (0 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 7,
88+
ADC0_SE8 = (0 << ADC_INSTANCE_SHIFT) | 8,
89+
ADC0_SE9 = (0 << ADC_INSTANCE_SHIFT) | 9,
90+
ADC0_SE12 = (0 << ADC_INSTANCE_SHIFT) | 12,
91+
ADC0_SE13 = (0 << ADC_INSTANCE_SHIFT) | 13,
92+
ADC0_SE14 = (0 << ADC_INSTANCE_SHIFT) | 14,
93+
ADC0_SE15 = (0 << ADC_INSTANCE_SHIFT) | 15,
94+
ADC0_SE16 = (0 << ADC_INSTANCE_SHIFT) | 16,
95+
ADC0_SE17 = (0 << ADC_INSTANCE_SHIFT) | 17,
96+
ADC0_SE18 = (0 << ADC_INSTANCE_SHIFT) | 18,
97+
ADC0_SE21 = (0 << ADC_INSTANCE_SHIFT) | 21,
98+
ADC0_SE22 = (0 << ADC_INSTANCE_SHIFT) | 22,
99+
ADC0_SE23 = (0 << ADC_INSTANCE_SHIFT) | 23,
100+
ADC1_SE4a = (1 << ADC_INSTANCE_SHIFT) | 4,
101+
ADC1_SE5a = (1 << ADC_INSTANCE_SHIFT) | 5,
102+
ADC1_SE6a = (1 << ADC_INSTANCE_SHIFT) | 6,
103+
ADC1_SE7a = (1 << ADC_INSTANCE_SHIFT) | 7,
104+
ADC1_SE4b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 4,
105+
ADC1_SE5b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 5,
106+
ADC1_SE6b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 6,
107+
ADC1_SE7b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 7,
108+
ADC1_SE8 = (1 << ADC_INSTANCE_SHIFT) | 8,
109+
ADC1_SE9 = (1 << ADC_INSTANCE_SHIFT) | 9,
110+
ADC1_SE12 = (1 << ADC_INSTANCE_SHIFT) | 12,
111+
ADC1_SE13 = (1 << ADC_INSTANCE_SHIFT) | 13,
112+
ADC1_SE14 = (1 << ADC_INSTANCE_SHIFT) | 14,
113+
ADC1_SE15 = (1 << ADC_INSTANCE_SHIFT) | 15,
114+
ADC1_SE16 = (1 << ADC_INSTANCE_SHIFT) | 16,
115+
ADC1_SE17 = (1 << ADC_INSTANCE_SHIFT) | 17,
116+
ADC1_SE18 = (1 << ADC_INSTANCE_SHIFT) | 18,
117+
ADC1_SE23 = (1 << ADC_INSTANCE_SHIFT) | 23,
118+
} ADCName;
119+
120+
typedef enum {
121+
DAC_0 = 0
122+
} DACName;
123+
124+
125+
typedef enum {
126+
SPI_0 = 0,
127+
SPI_1 = 1,
128+
SPI_2 = 2,
129+
} SPIName;
130+
131+
#ifdef __cplusplus
132+
}
133+
#endif
134+
135+
#endif
Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
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+
17+
#include "PeripheralPins.h"
18+
19+
/************RTC***************/
20+
const PinMap PinMap_RTC[] = {
21+
{NC, OSC32KCLK, 0},
22+
};
23+
24+
/************ADC***************/
25+
const PinMap PinMap_ADC[] = {
26+
{PTA17, ADC1_SE17, 0},
27+
{PTB0 , ADC0_SE8 , 0},
28+
{PTB1 , ADC0_SE9 , 0},
29+
{PTB2 , ADC0_SE12, 0},
30+
{PTB3 , ADC0_SE13, 0},
31+
{PTB6 , ADC1_SE12, 0},
32+
{PTB7 , ADC1_SE13, 0},
33+
{PTB10, ADC1_SE14, 0},
34+
{PTB11, ADC1_SE15, 0},
35+
{PTC0 , ADC0_SE14, 0},
36+
{PTC1 , ADC0_SE15, 0},
37+
{PTC2, ADC0_SE4b, 0},
38+
{PTC8, ADC1_SE4b, 0},
39+
{PTC9, ADC1_SE5b, 0},
40+
{PTC10, ADC1_SE6b, 0},
41+
{PTC11, ADC1_SE7b, 0},
42+
{PTD1, ADC0_SE5b, 0},
43+
{PTD5, ADC0_SE6b, 0},
44+
{PTD6, ADC0_SE7b, 0},
45+
{PTE0, ADC1_SE4a, 0},
46+
{PTE1, ADC1_SE5a, 0},
47+
{PTE2, ADC1_SE6a, 0},
48+
{PTE3, ADC1_SE7a, 0},
49+
//{PTE24, ADC0_SE17, 0}, //I2C pull up
50+
//{PTE25, ADC0_SE18, 0}, //I2C pull up
51+
{NC , NC , 0}
52+
};
53+
54+
/************DAC***************/
55+
const PinMap PinMap_DAC[] = {
56+
{DAC0_OUT, DAC_0, 0},
57+
{NC , NC , 0}
58+
};
59+
60+
/************I2C***************/
61+
const PinMap PinMap_I2C_SDA[] = {
62+
{PTD9 , I2C_0, 2},
63+
{PTB1 , I2C_0, 2},
64+
{PTC11, I2C_1, 2},
65+
{NC , NC , 0}
66+
};
67+
68+
const PinMap PinMap_I2C_SCL[] = {
69+
{PTD8 , I2C_0, 2},
70+
{PTB0 , I2C_0, 2},
71+
{PTC10, I2C_1, 2},
72+
{NC , NC , 0}
73+
};
74+
75+
/************UART***************/
76+
const PinMap PinMap_UART_TX[] = {
77+
{PTB17, UART_0, 3},
78+
{PTC17, UART_3, 3},
79+
{PTD3 , UART_2, 3},
80+
{PTE24, UART_4, 3},
81+
{NC , NC , 0}
82+
};
83+
84+
const PinMap PinMap_UART_RX[] = {
85+
{PTB16, UART_0, 3},
86+
{PTE25, UART_4, 3},
87+
{PTC16, UART_3, 3},
88+
{PTD2 , UART_2, 3},
89+
{NC , NC , 0}
90+
};
91+
92+
const PinMap PinMap_UART_CTS[] = {
93+
{NC , NC , 0}
94+
};
95+
96+
const PinMap PinMap_UART_RTS[] = {
97+
{NC , NC , 0}
98+
};
99+
100+
/************SPI***************/
101+
const PinMap PinMap_SPI_SCLK[] = {
102+
{PTE2 , SPI_1, 2},
103+
{PTB21, SPI_2, 2},
104+
{PTC5 , SPI_0, 2},
105+
{PTD5 , SPI_1, 7},
106+
{NC , NC , 0}
107+
};
108+
109+
const PinMap PinMap_SPI_MOSI[] = {
110+
{PTE1 , SPI_1, 2},
111+
{PTE3 , SPI_1, 7},
112+
{PTB22, SPI_2, 2},
113+
{PTC6 , SPI_0, 2},
114+
{PTD6 , SPI_1, 7},
115+
{NC , NC , 0}
116+
};
117+
118+
const PinMap PinMap_SPI_MISO[] = {
119+
{PTE1 , SPI_1, 7},
120+
{PTE3 , SPI_1, 2},
121+
{PTB23, SPI_2, 2},
122+
{PTC7 , SPI_0, 2},
123+
{PTD7 , SPI_1, 7},
124+
{NC , NC , 0}
125+
};
126+
127+
const PinMap PinMap_SPI_SSEL[] = {
128+
{PTE4 , SPI_1, 2},
129+
{PTB20, SPI_2, 2},
130+
{PTC4 , SPI_0, 2},
131+
{PTD4 , SPI_1, 7},
132+
{NC , NC , 0}
133+
};
134+
135+
/************PWM***************/
136+
const PinMap PinMap_PWM[] = {
137+
{PTA0 , PWM_6 , 3},
138+
{PTA1 , PWM_7 , 3},
139+
{PTA2 , PWM_8 , 3},
140+
{PTA3 , PWM_1 , 3},
141+
{PTA4 , PWM_2 , 3},
142+
{PTA5 , PWM_3 , 3},
143+
{PTA6 , PWM_4 , 3},
144+
{PTA7 , PWM_5 , 3},
145+
{PTA8 , PWM_9 , 3},
146+
{PTA9 , PWM_10, 3},
147+
{PTA10, PWM_17, 3},
148+
{PTA11, PWM_18, 3},
149+
{PTA12, PWM_9 , 3},
150+
{PTA13, PWM_10, 3},
151+
152+
{PTB0 , PWM_9 , 3},
153+
{PTB1 , PWM_10, 3},
154+
{PTB18, PWM_17, 3},
155+
{PTB19, PWM_18, 3},
156+
157+
{PTC1 , PWM_1 , 4},
158+
{PTC2 , PWM_2 , 4},
159+
{PTC3 , PWM_3 , 4},
160+
{PTC4 , PWM_4 , 4},
161+
{PTC5 , PWM_3 , 7},
162+
{PTC8 , PWM_29, 3},
163+
{PTC9 , PWM_30, 3},
164+
{PTC10, PWM_31, 3},
165+
{PTC11, PWM_32, 3},
166+
167+
{PTD0 , PWM_25, 4},
168+
{PTD1 , PWM_26, 4},
169+
{PTD2 , PWM_27, 4},
170+
{PTD3 , PWM_28, 4},
171+
{PTD4 , PWM_5 , 4},
172+
{PTD5 , PWM_6 , 4},
173+
{PTD6 , PWM_7 , 4},
174+
{PTD4 , PWM_5 , 4},
175+
{PTD7 , PWM_8 , 4},
176+
177+
{PTE5 , PWM_25, 6},
178+
{PTE6 , PWM_26, 6},
179+
180+
{NC , NC , 0}
181+
};

0 commit comments

Comments
 (0)