NXP-SCCK GPIOs and Peripherals
This device is sold as the NXP LPC43S67-A70CM Secure Cloud Connectivity Kit, order code OM13086. In the ZentriOS documentation we refer to it as the NXP-SCCK.
See also:
Contents
The following tables show the GPIOs and pins of the NXP-SCCK.
GPIO assignment is fixed, unless otherwise noted.
The Application GPIOs and pins are reassignable in a ZentriOS app. See ZentriOS SDK.
ZentriOS GPIOs
GPIO # | Function | MCU Pin |
---|---|---|
0 | Factory Reset | P2_2 |
1 | UART0_TX | P6_4 |
2 | UART0_RX | P2_1 |
3 | UART1_TX | P1_13 |
4 | UART1_RX | P1_14 |
5 | I2C1_SDA | P2_3 |
6 | I2C1_SCL | P2_4 |
7 | Reserved | - |
8 | Reserved | - |
9 | Reserved | - |
WLAN Pins
Description | MCU Pin |
---|---|
Power | P2_12 |
Reset | P1_7 |
SDIO_CLK | CLK_2 |
SDIO_CMD | P1_6 |
SDIO_D0 | P1_9 |
SDIO_D1 | P1_10 |
SDIO_D2 | P1_11 |
SDIO_D3 | P1_12 |
QUAD SPI
Description | MCU Pin |
---|---|
CLK | P3_3 |
CS | P3_8 |
MOSI | P3_7 |
MISO | P3_6 |
SIO2 | P3_5 |
SIO3 | P3_4 |
Application GPIOs - Reassignable
These GPIOs may be reassigned using a ZentriOS app.
GPIO # | Function | MCU Pin |
---|---|---|
10 | LED_BLUE | P6_9 |
11 | LED_GREEN | P2_7 |
12 | LED_RED | P6_11 |
13 | GPIO | P1_0 |
14 | GPIO | P1_2 |
15 | GPIO | P1_1 |
16 | GPIO | P6_2 |
17 | GPIO | P3_2 |
18 | GPIO | P2_9 |
19 | GPIO | P1_8 |
20 | GPIO | P2_13 |
21 | GPIO | P1_3 |
22 | GPIO | P1_4 |
23 | GPIO | P1_5 |
24 | LCD_CMD_GPIO | P6_5 |
25 | GPIO | P2_6 |
Dynamic GPIOs can be reassigned using the PLATFORM_GPIO_DECLARE1
macro, defined in the ZentriOS SDK file:
/api/platforms/OM13086SCCK/platform_dynamic_gpio.h
Parameters are as follows:
#define PLATFORM_GPIO_DECLARE(_gpio_num, _group, _group_pin, _port, _port_pin, func)
Default dynamic GPIO functions are assigned in the following file in the ZentriOS SDK api directory:
/api/platforms/OM13086SCCK/platform_dynamic_gpio.c
The extract below shows the default GPIO functions and pins. This symbol is defined as WEAK
in platform_dynamic_gpio.c
. The weak
annotation allows the application to override these default definitions at compile-time. In your application, include a modified copy of the table below, without the WEAK
annotation:
const zos_platform_gpio_t const zos_platform_dynamic_gpio[PLATFORM_DYNAMIC_GPIO_COUNT] =
{
PLATFORM_GPIO_DECLARE(10, LPC_PIN_GROUP_6, 9, LPC_GPIO_PORT_3, 5, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(11, LPC_PIN_GROUP_2, 7, LPC_GPIO_PORT_0, 7, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(12, LPC_PIN_GROUP_6, 11, LPC_GPIO_PORT_3, 7, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(13, LPC_PIN_GROUP_1, 0, LPC_GPIO_PORT_0, 4, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(14, LPC_PIN_GROUP_1, 2, LPC_GPIO_PORT_0, 9, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(15, LPC_PIN_GROUP_1, 1, LPC_GPIO_PORT_0, 8, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(16, LPC_PIN_GROUP_6, 2, LPC_GPIO_PORT_3, 1, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(17, LPC_PIN_GROUP_3, 2, LPC_GPIO_PORT_5, 9, SCU_MODE_FUNC4),
PLATFORM_GPIO_DECLARE(18, LPC_PIN_GROUP_2, 9, LPC_GPIO_PORT_1, 10, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(19, LPC_PIN_GROUP_1, 8, LPC_GPIO_PORT_1, 1, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(20, LPC_PIN_GROUP_2, 13, LPC_GPIO_PORT_1, 13, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(21, LPC_PIN_GROUP_1, 3, LPC_GPIO_PORT_0, 10, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(22, LPC_PIN_GROUP_1, 4, LPC_GPIO_PORT_0, 11, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(23, LPC_PIN_GROUP_1, 5, LPC_GPIO_PORT_1, 8, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(24, LPC_PIN_GROUP_6, 5, LPC_GPIO_PORT_3, 4, SCU_MODE_FUNC0),
PLATFORM_GPIO_DECLARE(25, LPC_PIN_GROUP_2, 6, LPC_GPIO_PORT_5, 6, SCU_MODE_FUNC4),
};