Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions hal/include/hal/gpio_irq_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ typedef void (*gpio_irq_handler)(uintptr_t context, gpio_irq_event event);
* # Defined behavior
* * ::gpio_irq_init initializes the GPIO IRQ pin
* * ::gpio_irq_init attaches the interrupt handler
* * ::gpio_irq_init enables the IRQ
* * ::gpio_irq_free releases the GPIO IRQ pin
* * ::gpio_irq_set enables/disables pin IRQ event
* * ::gpio_irq_enable enables GPIO IRQ
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,69 +38,112 @@ extern "C"

typedef enum
{
// Digital naming
D0 = 25,
D1 = 24,
D2 = 35,
D3 = 4,
D4 = 22,
D5 = 23,
D6 = 27,
D7 = 28,
D8 = 32,
D9 = 12,
D10 = 13,
D11 = 7,
D12 = 6,
D13 = 5,
D14 = 40,
D15 = 39,
D16 = 29,
D17 = 11,
D18 = 34,
D19 = 33,
D20 = 16,
D21 = 31,

// Analog naming
A0 = D16,
A1 = D17,
A2 = D18,
A3 = D19,
A4 = D20,
A5 = D21,
A6 = D2,
// A7 = ??
A8 = D8,
A9 = D9,
A10 = D10,
// Apollo3 I/O pins - CSP and BGA packages
IO_0 = 0,
IO_1 = 1,
IO_2 = 2,
IO_3 = 3,
IO_4 = 4,
IO_5 = 5,
IO_6 = 6,
IO_7 = 7,
IO_8 = 8,
IO_9 = 9,
IO_10 = 10,
IO_11 = 11,
IO_12 = 12,
IO_13 = 13,
IO_14 = 14,
IO_15 = 15,
IO_16 = 16,
IO_17 = 17,
IO_18 = 18,
IO_19 = 19,
IO_20 = 20,
IO_21 = 21,
IO_22 = 22,
IO_23 = 23,
IO_24 = 24,
IO_25 = 25,
IO_26 = 26,
IO_27 = 27,
IO_28 = 28,
IO_29 = 29,
IO_39 = 39,
IO_40 = 40,
IO_41 = 41,
IO_44 = 44,
IO_47 = 47,
IO_48 = 48,
IO_49 = 49,

// Apollo3 I/O pins - BGA package only
IO_30 = 30,
IO_31 = 31,
IO_32 = 32,
IO_33 = 33,
IO_34 = 34,
IO_35 = 35,
IO_36 = 36,
IO_37 = 37,
IO_38 = 38,
IO_42 = 42,
IO_43 = 43,
IO_45 = 45,
IO_46 = 46,

#ifdef TARGET_FF_ARDUINO_UNO
// Arduino form factor pins
ARDUINO_UNO_D0 = IO_25,
ARDUINO_UNO_D1 = IO_24,
ARDUINO_UNO_D2 = IO_35,
ARDUINO_UNO_D3 = IO_4,
ARDUINO_UNO_D4 = IO_22,
ARDUINO_UNO_D5 = IO_23,
ARDUINO_UNO_D6 = IO_27,
ARDUINO_UNO_D7 = IO_28,
ARDUINO_UNO_D8 = IO_32,
ARDUINO_UNO_D9 = IO_12,
ARDUINO_UNO_D10 = IO_13,
ARDUINO_UNO_D11 = IO_7,
ARDUINO_UNO_D12 = IO_6,
ARDUINO_UNO_D13 = IO_5,
ARDUINO_UNO_D14 = IO_40,
ARDUINO_UNO_D15 = IO_39,

ARDUINO_UNO_A0 = IO_29,
ARDUINO_UNO_A1 = IO_11,
ARDUINO_UNO_A2 = IO_34,
ARDUINO_UNO_A3 = IO_33,
ARDUINO_UNO_A4 = IO_16,
ARDUINO_UNO_A5 = IO_31,
#endif

// UART
SERIAL_TX = AM_BSP_PRIM_UART_TX_PIN,
SERIAL_RX = AM_BSP_PRIM_UART_RX_PIN,
CONSOLE_TX = SERIAL_TX,
CONSOLE_RX = SERIAL_RX,

SERIAL1_TX = D1,
SERIAL1_RX = D0,
SERIAL1_TX = IO_24,
SERIAL1_RX = IO_25,

// Not connected
NC = NC_VAL
} PinName;

// LEDs
#define LED1 D13 // Blue LED
#define LED1 IO_5 // Blue LED

// I2C bus
#define I2C_SCL D15
#define I2C_SDA D14
// note: I2C_SCL and I2C_SDA defines are provided by the FF_ARDUINO_UNO header
#define QWIIC_SCL I2C_SCL
#define QWIIC_SDA I2C_SDA

// SPI bus
#define SPI_CLK D13
#define SPI_SDO D11
#define SPI_SDI D12
#define SPI_SCLK IO_5
#define SPI_MOSI IO_7
#define SPI_MISO IO_6

#if defined(MBED_CONF_TARGET_STDIO_UART_TX)
#define STDIO_UART_TX MBED_CONF_TARGET_STDIO_UART_TX
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,53 +38,110 @@ extern "C"

typedef enum
{
// Apollo3 I/O pins - CSP and BGA packages
IO_0 = 0,
IO_1 = 1,
IO_2 = 2,
IO_3 = 3,
IO_4 = 4,
IO_5 = 5,
IO_6 = 6,
IO_7 = 7,
IO_8 = 8,
IO_9 = 9,
IO_10 = 10,
IO_11 = 11,
IO_12 = 12,
IO_13 = 13,
IO_14 = 14,
IO_15 = 15,
IO_16 = 16,
IO_17 = 17,
IO_18 = 18,
IO_19 = 19,
IO_20 = 20,
IO_21 = 21,
IO_22 = 22,
IO_23 = 23,
IO_24 = 24,
IO_25 = 25,
IO_26 = 26,
IO_27 = 27,
IO_28 = 28,
IO_29 = 29,
IO_39 = 39,
IO_40 = 40,
IO_41 = 41,
IO_44 = 44,
IO_47 = 47,
IO_48 = 48,
IO_49 = 49,

// Apollo3 I/O pins - BGA package only
IO_30 = 30,
IO_31 = 31,
IO_32 = 32,
IO_33 = 33,
IO_34 = 34,
IO_35 = 35,
IO_36 = 36,
IO_37 = 37,
IO_38 = 38,
IO_42 = 42,
IO_43 = 43,
IO_45 = 45,
IO_46 = 46,

// Digital naming
D0 = 0,
D1 = 1,
D2 = 2,
D3 = 3,
D4 = 4,
D5 = 5,
D6 = 6,
D7 = 7,
D8 = 8,
D9 = 9,
D10 = 10,
D11 = 11,
D12 = 12,
D13 = 13,
D14 = 14,
D15 = 15,
D16 = 16,
D17 = 17,
D18 = 18,
D19 = 19,
// D20 = ??
// D21 = ??
D22 = 22,
D23 = 23,
D24 = 24,
D25 = 25,
D26 = 26,
D27 = 27,
D28 = 28,
D29 = 29,
// D30 = ??
D31 = 31,
D32 = 32,
D33 = 33,
D34 = 34,
D35 = 35,
D36 = 36,
D37 = 37,
D38 = 38,
D39 = 39,
D40 = 40,
D41 = 41,
D42 = 42,
D43 = 43,
D44 = 44,
D45 = 45,
D0 = IO_0,
D1 = IO_1,
D2 = IO_2,
D3 = IO_3,
D4 = IO_4,
D5 = IO_5,
D6 = IO_6,
D7 = IO_7,
D8 = IO_8,
D9 = IO_9,
D10 = IO_10,
D11 = IO_11,
D12 = IO_12,
D13 = IO_13,
D14 = IO_14,
D15 = IO_15,
D16 = IO_16,
D17 = IO_17,
D18 = IO_18,
D19 = IO_19,

// D20 and D21 used as SWD debug pins, not broken out

D22 = IO_22,
D23 = IO_23,
D24 = IO_24,
D25 = IO_25,
D26 = IO_26,
D27 = IO_27,
D28 = IO_28,
D29 = IO_29,

// D30 not broken out from Artemis module

D31 = IO_31,
D32 = IO_32,
D33 = IO_33,
D34 = IO_34,
D35 = IO_35,
D36 = IO_36,
D37 = IO_37,
D38 = IO_38,
D39 = IO_39,
D40 = IO_40,
D41 = IO_41,
D42 = IO_42,
D43 = IO_43,
D44 = IO_44,
D45 = IO_45,

// Analog naming
A11 = D11,
Expand All @@ -98,26 +155,6 @@ typedef enum
A34 = D34,
A35 = D35,

// LEDs
LED_BLUE = AM_BSP_GPIO_LED_BLUE,

// mbed original LED naming
LED1 = AM_BSP_GPIO_LED0,
LED2 = D42,

// I2C
I2C_SCL = AM_BSP_QWIIC_I2C_SCL_PIN,
I2C_SDA = AM_BSP_QWIIC_I2C_SDA_PIN,

// Qwiic
QWIIC_SCL = I2C_SCL,
QWIIC_SDA = I2C_SDA,

// SPI
SPI_CLK = AM_BSP_PRIM_SPI_CLK_PIN,
SPI_SDO = AM_BSP_PRIM_SPI_SDO_PIN,
SPI_SDI = AM_BSP_PRIM_SPI_SDI_PIN,

// UART
SERIAL_TX = AM_BSP_PRIM_UART_TX_PIN,
SERIAL_RX = AM_BSP_PRIM_UART_RX_PIN,
Expand All @@ -131,6 +168,21 @@ typedef enum
NC = NC_VAL
} PinName;

// LEDs
#define LED1 IO_5 // Blue LED

// I2C bus
#define I2C_SCL IO_39
#define I2C_SDA IO_40

#define QWIIC_SCL I2C_SCL
#define QWIIC_SDA I2C_SDA

// SPI bus
#define SPI_SCLK IO_5
#define SPI_MOSI IO_7
#define SPI_MISO IO_6

#if defined(MBED_CONF_TARGET_STDIO_UART_TX)
#define STDIO_UART_TX MBED_CONF_TARGET_STDIO_UART_TX
#else
Expand Down
Loading