mirror of https://github.com/ARMmbed/mbed-os.git
248 lines
4.6 KiB
C
248 lines
4.6 KiB
C
/* mbed Microcontroller Library
|
|
* Copyright (c) 2006-2018 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"
|
|
|
|
/* Pins used by mbed OS to identify STDIO UART pins */
|
|
#define STDIO_UART_TX USBTX
|
|
#define STDIO_UART_RX USBRX
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
PIN_INPUT,
|
|
PIN_OUTPUT
|
|
} PinDirection;
|
|
|
|
typedef enum {
|
|
/* MPS2 EXP Pin Names */
|
|
EXP0 = 0,
|
|
EXP1 = 1,
|
|
EXP2 = 2,
|
|
EXP3 = 3,
|
|
EXP4 = 4,
|
|
EXP5 = 5,
|
|
EXP6 = 6,
|
|
EXP7 = 7,
|
|
EXP8 = 8,
|
|
EXP9 = 9,
|
|
EXP10 = 10,
|
|
EXP11 = 11,
|
|
EXP12 = 12,
|
|
EXP13 = 13,
|
|
EXP14 = 14,
|
|
EXP15 = 15,
|
|
EXP16 = 16,
|
|
EXP17 = 17,
|
|
EXP18 = 18,
|
|
EXP19 = 19,
|
|
EXP20 = 20,
|
|
EXP21 = 21,
|
|
EXP22 = 22,
|
|
EXP23 = 23,
|
|
EXP24 = 24,
|
|
EXP25 = 25,
|
|
EXP26 = 26,
|
|
EXP27 = 27,
|
|
EXP28 = 28,
|
|
EXP29 = 29,
|
|
EXP30 = 30,
|
|
EXP31 = 31,
|
|
EXP32 = 32,
|
|
EXP33 = 33,
|
|
EXP34 = 34,
|
|
EXP35 = 35,
|
|
EXP36 = 36,
|
|
EXP37 = 37,
|
|
EXP38 = 38,
|
|
EXP39 = 39,
|
|
EXP40 = 40,
|
|
EXP41 = 41,
|
|
EXP42 = 42,
|
|
EXP43 = 43,
|
|
EXP44 = 44,
|
|
EXP45 = 45,
|
|
EXP46 = 46,
|
|
EXP47 = 47,
|
|
EXP48 = 48,
|
|
EXP49 = 49,
|
|
EXP50 = 50,
|
|
EXP51 = 51,
|
|
|
|
// Other mbed Pin Names
|
|
|
|
/* User leds */
|
|
USERLED1 = 100,
|
|
USERLED2 = 101,
|
|
/* User switches */
|
|
USERSW1 = 110,
|
|
USERSW2 = 111,
|
|
|
|
/* MCC leds */
|
|
LED1 = 200,
|
|
LED2 = 201,
|
|
LED3 = 202,
|
|
LED4 = 203,
|
|
LED5 = 204,
|
|
LED6 = 205,
|
|
LED7 = 206,
|
|
LED8 = 207,
|
|
|
|
/* MCC Switches */
|
|
SW1 = 210,
|
|
SW2 = 211,
|
|
SW3 = 212,
|
|
SW4 = 213,
|
|
SW5 = 214,
|
|
SW6 = 215,
|
|
SW7 = 216,
|
|
SW8 = 217,
|
|
|
|
/* MPS2 SPI header pins J21 */
|
|
SPI_MOSI = 300,
|
|
SPI_MISO = 301,
|
|
SPI_SCLK = 302,
|
|
SPI_SSEL = 303,
|
|
|
|
/* MPS2 CLCD SPI */
|
|
CLCD_MOSI = 304,
|
|
CLCD_MISO = 305,
|
|
CLCD_SCLK = 306,
|
|
CLCD_SSEL = 307,
|
|
CLCD_RESET = 308,
|
|
CLCD_RS = 309,
|
|
CLCD_RD = 310,
|
|
CLCD_BL_CTRL = 311,
|
|
|
|
/* MPS2 shield 0 SPI */
|
|
SHIELD_0_SPI_MOSI = EXP13,
|
|
SHIELD_0_SPI_MISO = EXP14,
|
|
SHIELD_0_SPI_SCK = EXP11,
|
|
SHIELD_0_SPI_nCS = EXP12,
|
|
|
|
/* MPS2 shield 1 SPI */
|
|
SHIELD_1_SPI_MOSI = EXP39,
|
|
SHIELD_1_SPI_MISO = EXP40,
|
|
SHIELD_1_SPI_SCK = EXP44,
|
|
SHIELD_1_SPI_nCS = EXP38,
|
|
|
|
/* MPS2 shield ADC SPI */
|
|
ADC_MOSI = EXP18,
|
|
ADC_MISO = EXP17,
|
|
ADC_SCLK = EXP19,
|
|
ADC_SSEL = EXP16,
|
|
|
|
/* MPS2 UART */
|
|
MCC_TX = 400,
|
|
MCC_RX = 401,
|
|
USBTX = 402,
|
|
USBRX = 403,
|
|
XB_TX = EXP24,
|
|
XB_RX = EXP23,
|
|
SH0_TX = EXP4,
|
|
SH0_RX = EXP0,
|
|
SH1_TX = EXP30,
|
|
SH1_RX = EXP26,
|
|
|
|
/* MPS2 I2C touchscreen and audio */
|
|
TSC_SDA = 500,
|
|
TSC_SCL = 501,
|
|
AUD_SDA = 502,
|
|
AUD_SCL = 503,
|
|
|
|
/* MPS2 I2C for shield */
|
|
SHIELD_0_SDA = EXP15,
|
|
SHIELD_0_SCL = EXP5,
|
|
SHIELD_1_SDA = EXP41,
|
|
SHIELD_1_SCL = EXP31,
|
|
|
|
/* MPS2 shield Analog pins */
|
|
A0_0 = 600,
|
|
A0_1 = 601,
|
|
A0_2 = 602,
|
|
A0_3 = 603,
|
|
A0_4 = 604,
|
|
A0_5 = 605,
|
|
A1_0 = 606,
|
|
A1_1 = 607,
|
|
A1_2 = 608,
|
|
A1_3 = 609,
|
|
A1_4 = 610,
|
|
A1_5 = 611,
|
|
/* MPS2 Shield Digital pins */
|
|
D0_0 = EXP0,
|
|
D0_1 = EXP4,
|
|
D0_2 = EXP2,
|
|
D0_3 = EXP3,
|
|
D0_4 = EXP1,
|
|
D0_5 = EXP6,
|
|
D0_6 = EXP7,
|
|
D0_7 = EXP8,
|
|
D0_8 = EXP9,
|
|
D0_9 = EXP10,
|
|
D0_10 = EXP12,
|
|
D0_11 = EXP13,
|
|
D0_12 = EXP14,
|
|
D0_13 = EXP11,
|
|
D0_14 = EXP15,
|
|
D0_15 = EXP5,
|
|
|
|
D1_0 = EXP26,
|
|
D1_1 = EXP30,
|
|
D1_2 = EXP28,
|
|
D1_3 = EXP29,
|
|
D1_4 = EXP27,
|
|
D1_5 = EXP32,
|
|
D1_6 = EXP33,
|
|
D1_7 = EXP34,
|
|
D1_8 = EXP35,
|
|
D1_9 = EXP36,
|
|
D1_10 = EXP38,
|
|
D1_11 = EXP39,
|
|
D1_12 = EXP40,
|
|
D1_13 = EXP44,
|
|
D1_14 = EXP41,
|
|
D1_15 = EXP31,
|
|
|
|
/* Not connected */
|
|
NC = (int)0xFFFFFFFF,
|
|
} PinName;
|
|
|
|
typedef enum {
|
|
ALTERNATE_FUNC = 0, /* The pin is used for alternative function */
|
|
GPIO_FUNC = 1 /* The pin is used for GPIO function */
|
|
} PinFunction;
|
|
|
|
typedef enum {
|
|
PullUp = 2,
|
|
PullDown = 1,
|
|
PullNone = 0,
|
|
Repeater = 3,
|
|
OpenDrain = 4,
|
|
PullDefault = PullDown
|
|
} PinMode;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|