mbed-os/targets/TARGET_ARM_SSG/TARGET_CM3DS_MPS2/PinNames.h

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