MCUXpresso_LPC54102/boards/lpcxpresso54102/project_template/pin_mux.c

540 lines
27 KiB
C

/*
* Copyright 2018-2019 NXP.
* All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
!!GlobalInfo
product: Pins v5.0
processor: LPC54102J512
package_id: LPC54102J512BD64
mcu_data: ksdk2_0
processor_version: 0.0.27
board: LPCXpresso54102
pin_labels:
- {pin_num: '20', pin_signal: VSSA, label: GND}
- {pin_num: '55', pin_signal: VSS55, label: GND}
- {pin_num: '25', pin_signal: VSS25, label: GND}
- {pin_num: '9', pin_signal: VSS9, label: GND}
- {pin_num: '22', pin_signal: VREFP, label: 'SJ2[2]'}
- {pin_num: '21', pin_signal: VREFN, label: 'SJ1[2]'}
- {pin_num: '23', pin_signal: VDDA, label: VDD_LPC54102_IC}
- {pin_num: '56', pin_signal: VDD56, label: VDD_LPC54102_IC}
- {pin_num: '34', pin_signal: VDD34, label: VDD_LPC54102_IC}
- {pin_num: '24', pin_signal: VDD24, label: VDD_LPC54102_IC}
- {pin_num: '8', pin_signal: VDD8, label: VDD_LPC54102_IC}
- {pin_num: '35', pin_signal: RTCXOUT, label: Y1(32.768k)}
- {pin_num: '33', pin_signal: RTCXIN, label: Y1(32.768k)}
- {pin_num: '64', pin_signal: RESET, label: 'J7[10]/J7[9]/SW3/U3[8]/nRESET_TRGT'}
- {pin_num: '10', pin_signal: PIO1_17, label: 'J8[9]/P1_17_IR_LEARN_EN'}
- {pin_num: '7', pin_signal: PIO1_16/CT32B0_MAT0/CT32B0_CAP0/SPI1_SSEL1, label: 'J2[3]/P1_16-CT32B0_MAT0'}
- {pin_num: '62', pin_signal: PIO1_15/SCT0_OUT5/CT32B1_CAP3/SPI1_SSEL0, label: 'J1[15]/P1_15-SCTOUT5-SPI1_SSEL0'}
- {pin_num: '57', pin_signal: PIO1_14/U2_RXD/SCT0_OUT7/SPI1_MISO, label: 'J1[11]/P1_14-SPI1_MISO'}
- {pin_num: '54', pin_signal: PIO1_13/U3_TXD/CT32B1_MAT1/SPI1_MOSI, label: 'J2[13]/P1_13-U3_TXD'}
- {pin_num: '51', pin_signal: PIO1_12/U3_RXD/CT32B1_MAT0/SPI1_SCK, label: 'J2[15]/P1_12-U3_RXD'}
- {pin_num: '42', pin_signal: PIO1_11/U1_RTS/CT32B1_CAP0, label: 'J2[12]/P1_11-U1_RTS'}
- {pin_num: '30', pin_signal: PIO1_10/U1_TXD/SCT0_OUT4, label: 'J2[18]/P1_10-U1_TXD'}
- {pin_num: '29', pin_signal: PIO1_9/SPI0_MOSI/CT32B0_CAP2, label: 'J8[7]/P1_9-BTLE_CMD_DAT'}
- {pin_num: '28', pin_signal: PIO1_8/ADC_11/SPI1_MISO/CT32B1_MAT3/CT32B1_CAP3, label: 'J8[6]/P1_8-ADC11'}
- {pin_num: '27', pin_signal: PIO1_7/ADC_10/SPI1_MOSI/CT32B1_MAT2/CT32B1_CAP2, label: 'J1[13]/P1_7-SPI1_MOSI-CT32B1_MAT2'}
- {pin_num: '26', pin_signal: PIO1_6/ADC_9/SPI1_SCK/CT32B1_CAP2/CT32B1_MAT2, label: 'J1[9]/P1_6-SPI1_SCK'}
- {pin_num: '19', pin_signal: PIO1_5/ADC_8/SPI1_SSEL0/CT32B1_CAP0/CT32B1_MAT3, label: 'J8[12]/P1_5-ADC8'}
- {pin_num: '18', pin_signal: PIO1_4/ADC_7/SPI1_SSEL1/SCT0_OUT7/SPI0_MISO/CT32B0_MAT1, label: 'JS16[2]/P1_4-ADC7-SPI1_SSEL1'}
- {pin_num: '16', pin_signal: PIO1_2/ADC_5/SPI1_SSEL3/SCT0_OUT5, label: 'JS15[2]/P1_2-ADC5-SPI1_SSEL3'}
- {pin_num: '15', pin_signal: PIO1_1/ADC_4/SWO/SCT0_OUT4, label: 'J8[4]/P1_1-ADC4'}
- {pin_num: '14', pin_signal: PIO1_0/ADC_3/U2_RTS/CT32B3_MAT1/CT32B0_CAP0, label: 'J8[2]/P1_0-ADC3'}
- {pin_num: '3', pin_signal: PIO0_25/I2C1_SCL/U1_CTS/CT32B0_CAP2/CT32B1_CAP1, label: 'J2[14]/P0_25-U1_CTS-I2C1_SCL'}
- {pin_num: '1', pin_signal: PIO0_23/I2C0_SCL/CT32B0_CAP0, label: 'J1[1]/P0_23-I2C0_SCL'}
- {pin_num: '63', pin_signal: PIO0_22/CLKIN/U0_RXD/CT32B3_MAT3, label: 'J2[19]/P0_22-MAG_DRDY_INT'}
- {pin_num: '61', pin_signal: PIO0_21/CLKOUT/U0_TXD/CT32B3_MAT0, label: 'J2[17]/P0_21-CLKOUT-CT32B3_MAT0'}
- {pin_num: '60', pin_signal: PIO0_20/U3_RXD/U0_SCLK/CT32B3_CAP0, label: 'J3[8]/BRIDGE_GPIO'}
- {pin_num: '59', pin_signal: PIO0_19/U3_SCLK/SCT0_OUT1/CT32B0_MAT1, label: 'J3[7]/U8[J5]/BRIDGE_INTR'}
- {pin_num: '58', pin_signal: PIO0_18/U3_TXD/SCT0_OUT0/CT32B0_MAT0, label: 'J2[9]/P0_18-CT32B0_MAT0-ACCL_INT1'}
- {pin_num: '46', pin_signal: PIO0_11/SPI0_SCK/U1_RXD/CT32B2_MAT1, label: 'J1[16]/P0_11-DMIC_CLKIN'}
- {pin_num: '45', pin_signal: PIO0_10/U2_SCLK/SCT0_OUT3/CT32B3_MAT0, label: 'J1[18]/P0_10-BTLE_CONN'}
- {pin_num: '44', pin_signal: PIO0_9/U2_TXD/SCT0_OUT2/CT32B3_CAP0/SPI0_SSEL0, label: 'J1[20]/P0_9-DMIC_DATA'}
- {pin_num: '43', pin_signal: PIO0_8/U2_RXD/SCT0_OUT1/CT32B0_MAT3, label: 'J2[7]/P0_8-CT32B0_MAT3'}
- {pin_num: '41', pin_signal: PIO0_7/U1_SCLK/SCT0_OUT0/CT32B0_MAT2/CT32B0_CAP2, label: 'J2[5]/P0_7-CT32B0_MAT2'}
- {pin_num: '40', pin_signal: PIO0_6/U1_TXD/CT32B0_MAT1, label: 'J2[1]/P0_6-CT32B0_MAT1'}
- {pin_num: '39', pin_signal: PIO0_5/U1_RXD/SCT0_OUT6/CT32B0_MAT0, label: 'J2[20]/P0_5-U1_RXD'}
- {pin_num: '38', pin_signal: PIO0_4/U0_SCLK/SPI0_SSEL2/CT32B0_CAP2, label: 'J1[19]/P0_4-GYR_INT1'}
- {pin_num: '37', pin_signal: PIO0_3/U0_RTS/CT32B1_MAT3, label: 'J1[17]/P0_3-CT32B1_MAT3'}
- {pin_num: '36', pin_signal: PIO0_2/U0_CTS/CT32B2_CAP1, label: 'J2[11]/P0_2-ARDUINO_INT'}
- {pin_num: '6', pin_signal: PIO0_28/I2C2_SDA/CT32B2_MAT0, label: 'J3[10]/JS2[1]/BRIDGE_SDA', identifier: LINK2MCU_SDA}
- {pin_num: '4', pin_signal: PIO0_26/I2C1_SDA/CT32B0_CAP3, label: 'J2[16]/P0_26-I2C1_SDA-CT32B0_CAP3'}
- {pin_num: '5', pin_signal: PIO0_27/I2C2_SCL/CT32B2_CAP0, label: 'J3[9]/JS1[1]/BRIDGE_SCL', identifier: LINK2MCU_SCL}
- {pin_num: '2', pin_signal: PIO0_24/I2C0_SDA/CT32B0_CAP1/CT32B0_MAT0, label: 'J1[3]/SW1/P0_24-I2C0_SDA-WAKEUP', identifier: SW1}
- {pin_num: '13', pin_signal: PIO0_31/ADC_2/U2_CTS/CT32B2_CAP2/CT32B0_CAP3/CT32B0_MAT3, label: 'SW2/D2[3]/P0_31-CT32B0_MAT3-ISP_EN-BLUE', identifier: SW2;LED_BLUE}
- {pin_num: '11', pin_signal: PIO0_29/ADC_0/SCT0_OUT2/CT32B0_MAT3/CT32B0_CAP1/CT32B0_MAT1, label: 'J1[12]/D2[1]/P0_29-CT32B0_MAT1-RED', identifier: LED_RED}
- {pin_num: '12', pin_signal: PIO0_30/ADC_1/SCT0_OUT3/CT32B0_MAT2/CT32B0_CAP2, label: 'J1[14]/D2[4]/P0_30-CT32B0_MAT2-GRN', identifier: LED_GREEN}
- {pin_num: '31', pin_signal: PIO0_0/U0_RXD/SPI0_SSEL0/CT32B0_CAP0/SCT0_OUT3, label: 'U13[4]/TO_MUX_P0_0-ISP_RX', identifier: DEBUG_UART_RX}
- {pin_num: '32', pin_signal: PIO0_1/U0_TXD/SPI0_SSEL1/CT32B0_CAP1/SCT0_OUT1, label: 'U15[3]/U4[4]/P0_1-ISP_TX', identifier: DEBUG_UART_TX}
- {pin_num: '53', pin_signal: PIO0_17/SPI0_SSEL3/U1_RTS/CT32B3_MAT2/SWDIO, label: 'P1[2]/U10[4]/IF_TMS_SWDIO', identifier: DEBUG_SWD_SWDIO}
- {pin_num: '52', pin_signal: PIO0_16/SPI0_SSEL2/U1_CTS/CT32B3_MAT1/SWCLK, label: 'U3[4]/TCK-SWDCLK_TRGT', identifier: DEBUG_SWD_SWDCLK}
- {pin_num: '50', pin_signal: PIO0_15/SPI0_SSEL1/SWO/CT32B2_MAT2, label: 'U3[12]/TDO-SWO_TRGT', identifier: DEBUG_SWD_SWO}
- {pin_num: '48', pin_signal: PIO0_13/SPI0_MISO/SCT0_OUT4/CT32B2_MAT0, label: 'J3[3]/U8[J1]/BRIDGE_MISO', identifier: BRIDGE_T_MISO}
- {pin_num: '47', pin_signal: PIO0_12/SPI0_MOSI/U1_TXD/CT32B2_MAT3, label: 'J3[2]/U8[J2]/BRIDGE_MOSI', identifier: BRIDGE_T_MOSI}
- {pin_num: '17', pin_signal: PIO1_3/ADC_6/SPI1_SSEL2/SCT0_OUT6/SPI0_SCK/CT32B0_CAP1, label: 'J3[4]/U8[K9]/BRIDGE_SCK', identifier: BRIDGE_T_SCK}
- {pin_num: '49', pin_signal: PIO0_14/SPI0_SSEL0/SCT0_OUT5/CT32B2_MAT1, label: 'J3[1]/U8[K10]/BRIDGE_SSEL', identifier: BRIDGE_T_SSEL}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
#include "fsl_common.h"
#include "fsl_gpio.h"
#include "pin_mux.h"
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitBootPins
* Description : Calls initialization functions.
*
* END ****************************************************************************************************************/
void BOARD_InitBootPins(void)
{
BOARD_InitPins_cm4();
BOARD_InitDEBUG_UARTPins();
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitPins_cm4:
- options: {callFromInitBoot: 'true', prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '50', peripheral: SWD, signal: SWO, pin_signal: PIO0_15/SPI0_SSEL1/SWO/CT32B2_MAT2, identifier: '', mode: inactive}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitPins_cm4
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitPins_cm4(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
IOCON->PIO[0][15] = ((IOCON->PIO[0][15] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_MODE_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT015 (pin 50) is configured as SWO. */
| IOCON_PIO_FUNC(PIO015_FUNC_ALT2)
/* Selects function mode (on-chip pull-up/pull-down resistor control).
* : Inactive.
* Inactive (no pull-down/pull-up resistor enabled). */
| IOCON_PIO_MODE(PIO015_MODE_INACTIVE)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO015_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitLink2MCUPins:
- options: {callFromInitBoot: 'false', prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '5', peripheral: I2C2, signal: SCL, pin_signal: PIO0_27/I2C2_SCL/CT32B2_CAP0, i2c_slew: i2c}
- {pin_num: '6', peripheral: I2C2, signal: SDA, pin_signal: PIO0_28/I2C2_SDA/CT32B2_MAT0, i2c_slew: i2c}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitLink2MCUPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitLink2MCUPins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
IOCON->PIO[0][27] = ((IOCON->PIO[0][27] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_I2CSLEW_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT027 (pin 5) is configured as I2C2_SCL. */
| IOCON_PIO_FUNC(PIO027_FUNC_ALT1)
/* Controls slew rate of I2C pad.
* : I2C mode. */
| IOCON_PIO_I2CSLEW(PIO027_I2CSLEW_I2C_MODE)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO027_DIGIMODE_DIGITAL));
IOCON->PIO[0][28] = ((IOCON->PIO[0][28] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_I2CSLEW_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT028 (pin 6) is configured as I2C2_SDA. */
| IOCON_PIO_FUNC(PIO028_FUNC_ALT1)
/* Controls slew rate of I2C pad.
* : I2C mode. */
| IOCON_PIO_I2CSLEW(PIO028_I2CSLEW_I2C_MODE)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO028_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitBUTTONsPins:
- options: {prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '2', peripheral: GPIO, signal: 'PIO0, 24', pin_signal: PIO0_24/I2C0_SDA/CT32B0_CAP1/CT32B0_MAT0, direction: INPUT}
- {pin_num: '13', peripheral: GPIO, signal: 'PIO0, 31', pin_signal: PIO0_31/ADC_2/U2_CTS/CT32B2_CAP2/CT32B0_CAP3/CT32B0_MAT3, identifier: SW2, direction: INPUT}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitBUTTONsPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitBUTTONsPins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
/* Enables the clock for the GPIO0 module */
CLOCK_EnableClock(kCLOCK_Gpio0);
gpio_pin_config_t SW1_config = {
.pinDirection = kGPIO_DigitalInput,
.outputLogic = 0U
};
/* Initialize GPIO functionality on pin PIO0_24 (pin 2) */
GPIO_PinInit(BOARD_SW1_GPIO, BOARD_SW1_PORT, BOARD_SW1_PIN, &SW1_config);
gpio_pin_config_t SW2_config = {
.pinDirection = kGPIO_DigitalInput,
.outputLogic = 0U
};
/* Initialize GPIO functionality on pin PIO0_31 (pin 13) */
GPIO_PinInit(BOARD_SW2_GPIO, BOARD_SW2_PORT, BOARD_SW2_PIN, &SW2_config);
IOCON->PIO[0][24] = ((IOCON->PIO[0][24] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT024 (pin 2) is configured as PIO0_24. */
| IOCON_PIO_FUNC(PIO024_FUNC_ALT0)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO024_DIGIMODE_DIGITAL));
IOCON->PIO[0][31] = ((IOCON->PIO[0][31] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT031 (pin 13) is configured as PIO0_31. */
| IOCON_PIO_FUNC(PIO031_FUNC_ALT0)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO031_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitLEDsPins:
- options: {prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '11', peripheral: GPIO, signal: 'PIO0, 29', pin_signal: PIO0_29/ADC_0/SCT0_OUT2/CT32B0_MAT3/CT32B0_CAP1/CT32B0_MAT1, direction: OUTPUT, gpio_init_state: 'true'}
- {pin_num: '12', peripheral: GPIO, signal: 'PIO0, 30', pin_signal: PIO0_30/ADC_1/SCT0_OUT3/CT32B0_MAT2/CT32B0_CAP2, direction: OUTPUT, gpio_init_state: 'true'}
- {pin_num: '13', peripheral: GPIO, signal: 'PIO0, 31', pin_signal: PIO0_31/ADC_2/U2_CTS/CT32B2_CAP2/CT32B0_CAP3/CT32B0_MAT3, identifier: LED_BLUE, direction: OUTPUT,
gpio_init_state: 'true'}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitLEDsPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitLEDsPins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
/* Enables the clock for the GPIO0 module */
CLOCK_EnableClock(kCLOCK_Gpio0);
gpio_pin_config_t LED_RED_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U
};
/* Initialize GPIO functionality on pin PIO0_29 (pin 11) */
GPIO_PinInit(BOARD_LED_RED_GPIO, BOARD_LED_RED_PORT, BOARD_LED_RED_PIN, &LED_RED_config);
gpio_pin_config_t LED_GREEN_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U
};
/* Initialize GPIO functionality on pin PIO0_30 (pin 12) */
GPIO_PinInit(BOARD_LED_GREEN_GPIO, BOARD_LED_GREEN_PORT, BOARD_LED_GREEN_PIN, &LED_GREEN_config);
gpio_pin_config_t LED_BLUE_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U
};
/* Initialize GPIO functionality on pin PIO0_31 (pin 13) */
GPIO_PinInit(BOARD_LED_BLUE_GPIO, BOARD_LED_BLUE_PORT, BOARD_LED_BLUE_PIN, &LED_BLUE_config);
IOCON->PIO[0][29] = ((IOCON->PIO[0][29] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT029 (pin 11) is configured as PIO0_29. */
| IOCON_PIO_FUNC(PIO029_FUNC_ALT0)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO029_DIGIMODE_DIGITAL));
IOCON->PIO[0][30] = ((IOCON->PIO[0][30] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT030 (pin 12) is configured as PIO0_30. */
| IOCON_PIO_FUNC(PIO030_FUNC_ALT0)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO030_DIGIMODE_DIGITAL));
IOCON->PIO[0][31] = ((IOCON->PIO[0][31] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT031 (pin 13) is configured as PIO0_31. */
| IOCON_PIO_FUNC(PIO031_FUNC_ALT0)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO031_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitDEBUG_UARTPins:
- options: {callFromInitBoot: 'true', prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '31', peripheral: USART0, signal: RXD, pin_signal: PIO0_0/U0_RXD/SPI0_SSEL0/CT32B0_CAP0/SCT0_OUT3, direction: INPUT}
- {pin_num: '32', peripheral: USART0, signal: TXD, pin_signal: PIO0_1/U0_TXD/SPI0_SSEL1/CT32B0_CAP1/SCT0_OUT1, direction: OUTPUT}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitDEBUG_UARTPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitDEBUG_UARTPins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
IOCON->PIO[0][0] = ((IOCON->PIO[0][0] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT00 (pin 31) is configured as U0_RXD. */
| IOCON_PIO_FUNC(PIO00_FUNC_ALT1)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO00_DIGIMODE_DIGITAL));
IOCON->PIO[0][1] = ((IOCON->PIO[0][1] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT01 (pin 32) is configured as U0_TXD. */
| IOCON_PIO_FUNC(PIO01_FUNC_ALT1)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO01_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitSWD_DEBUGPins:
- options: {prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '53', peripheral: SWD, signal: SWDIO, pin_signal: PIO0_17/SPI0_SSEL3/U1_RTS/CT32B3_MAT2/SWDIO, direction: OUTPUT}
- {pin_num: '52', peripheral: SWD, signal: SWCLK, pin_signal: PIO0_16/SPI0_SSEL2/U1_CTS/CT32B3_MAT1/SWCLK}
- {pin_num: '50', peripheral: SWD, signal: SWO, pin_signal: PIO0_15/SPI0_SSEL1/SWO/CT32B2_MAT2}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitSWD_DEBUGPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitSWD_DEBUGPins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
IOCON->PIO[0][15] = ((IOCON->PIO[0][15] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT015 (pin 50) is configured as SWO. */
| IOCON_PIO_FUNC(PIO015_FUNC_ALT2)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO015_DIGIMODE_DIGITAL));
IOCON->PIO[0][16] = ((IOCON->PIO[0][16] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT016 (pin 52) is configured as SWCLK. */
| IOCON_PIO_FUNC(PIO016_FUNC_ALT5)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO016_DIGIMODE_DIGITAL));
IOCON->PIO[0][17] = ((IOCON->PIO[0][17] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT017 (pin 53) is configured as SWDIO. */
| IOCON_PIO_FUNC(PIO017_FUNC_ALT5)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO017_DIGIMODE_DIGITAL));
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitSPI_BridgePins:
- options: {prefix: BOARD_, coreID: cm4, enableClock: 'true'}
- pin_list:
- {pin_num: '48', peripheral: SPI0, signal: MISO, pin_signal: PIO0_13/SPI0_MISO/SCT0_OUT4/CT32B2_MAT0, direction: INPUT}
- {pin_num: '47', peripheral: SPI0, signal: MOSI, pin_signal: PIO0_12/SPI0_MOSI/U1_TXD/CT32B2_MAT3, direction: OUTPUT}
- {pin_num: '49', peripheral: SPI0, signal: SSEL0, pin_signal: PIO0_14/SPI0_SSEL0/SCT0_OUT5/CT32B2_MAT1, direction: OUTPUT}
- {pin_num: '17', peripheral: SPI0, signal: SCK, pin_signal: PIO1_3/ADC_6/SPI1_SSEL2/SCT0_OUT6/SPI0_SCK/CT32B0_CAP1, direction: OUTPUT}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitSPI_BridgePins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M4F */
void BOARD_InitSPI_BridgePins(void)
{
/* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
CLOCK_EnableClock(kCLOCK_Iocon);
IOCON->PIO[0][12] = ((IOCON->PIO[0][12] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT012 (pin 47) is configured as SPI0_MOSI. */
| IOCON_PIO_FUNC(PIO012_FUNC_ALT1)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO012_DIGIMODE_DIGITAL));
IOCON->PIO[0][13] = ((IOCON->PIO[0][13] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT013 (pin 48) is configured as SPI0_MISO. */
| IOCON_PIO_FUNC(PIO013_FUNC_ALT1)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO013_DIGIMODE_DIGITAL));
IOCON->PIO[0][14] = ((IOCON->PIO[0][14] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT014 (pin 49) is configured as SPI0_SSEL0. */
| IOCON_PIO_FUNC(PIO014_FUNC_ALT1)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO014_DIGIMODE_DIGITAL));
IOCON->PIO[1][3] = ((IOCON->PIO[1][3] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK)))
/* Selects pin function.
* : PORT13 (pin 17) is configured as SPI0_SCK. */
| IOCON_PIO_FUNC(PIO13_FUNC_ALT5)
/* Select Analog/Digital mode.
* : Digital mode. */
| IOCON_PIO_DIGIMODE(PIO13_DIGIMODE_DIGITAL));
}
/***********************************************************************************************************************
* EOF
**********************************************************************************************************************/