MPyATE_Template/board/pin_mux.c

210 lines
8.5 KiB
C

/***********************************************************************************************************************
* This file was generated by the MCUXpresso Config Tools. Any manual edits made to this file
* will be overwritten if the respective MCUXpresso Config Tools is used to update this file.
**********************************************************************************************************************/
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
!!GlobalInfo
product: Pins v13.1
processor: LPC804
package_id: LPC804M101JHI33
mcu_data: ksdk2_0
processor_version: 13.0.1
pin_labels:
- {pin_num: '30', pin_signal: PIO0_22, label: LED_R, identifier: LED_R}
- {pin_num: '31', pin_signal: PIO0_18, label: LED_G, identifier: LED_G}
- {pin_num: '32', pin_signal: PIO0_16/ACMP_I4/ADC_3, label: LED_B, identifier: LED_B}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
#include "fsl_common.h"
#include "fsl_gpio.h"
#include "fsl_swm.h"
#include "pin_mux.h"
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitBootPins
* Description : Calls initialization functions.
*
* END ****************************************************************************************************************/
void BOARD_InitBootPins(void)
{
BOARD_InitLEDPins();
BOARD_InitADCPins();
BOARD_InitDACPins();
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitDbgUARTPins:
- options: {callFromInitBoot: 'false', coreID: core0, enableClock: 'true'}
- pin_list:
- {pin_num: '28', peripheral: USART0, signal: TXD, pin_signal: PIO0_24}
- {pin_num: '27', peripheral: USART0, signal: RXD, pin_signal: PIO0_25}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitDbgUARTPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M0P */
void BOARD_InitDbgUARTPins(void)
{
/* Enables clock for switch matrix.: enable */
CLOCK_EnableClock(kCLOCK_Swm);
/* USART0_TXD connect to P0_24 */
SWM_SetMovablePinSelect(SWM0, kSWM_USART0_TXD, kSWM_PortPin_P0_24);
/* USART0_RXD connect to P0_25 */
SWM_SetMovablePinSelect(SWM0, kSWM_USART0_RXD, kSWM_PortPin_P0_25);
/* Disable clock for switch matrix. */
CLOCK_DisableClock(kCLOCK_Swm);
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitLEDPins:
- options: {callFromInitBoot: 'true', coreID: core0, enableClock: 'true'}
- pin_list:
- {pin_num: '30', peripheral: GPIO, signal: 'PIO0, 22', pin_signal: PIO0_22, direction: OUTPUT, gpio_init_state: 'true', opendrain: enabled}
- {pin_num: '31', peripheral: GPIO, signal: 'PIO0, 18', pin_signal: PIO0_18, direction: OUTPUT, gpio_init_state: 'true', opendrain: enabled}
- {pin_num: '32', peripheral: GPIO, signal: 'PIO0, 16', pin_signal: PIO0_16/ACMP_I4/ADC_3, direction: OUTPUT, gpio_init_state: 'true', opendrain: enabled}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitLEDPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M0P */
void BOARD_InitLEDPins(void)
{
/* Enables clock for IOCON.: enable */
CLOCK_EnableClock(kCLOCK_Iocon);
/* Enables the clock for the GPIO0 module */
CLOCK_EnableClock(kCLOCK_Gpio0);
gpio_pin_config_t LED_B_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U,
};
/* Initialize GPIO functionality on pin PIO0_16 (pin 32) */
GPIO_PinInit(BOARD_INITLEDPINS_LED_B_GPIO, BOARD_INITLEDPINS_LED_B_PORT, BOARD_INITLEDPINS_LED_B_PIN, &LED_B_config);
gpio_pin_config_t LED_G_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U,
};
/* Initialize GPIO functionality on pin PIO0_18 (pin 31) */
GPIO_PinInit(BOARD_INITLEDPINS_LED_G_GPIO, BOARD_INITLEDPINS_LED_G_PORT, BOARD_INITLEDPINS_LED_G_PIN, &LED_G_config);
gpio_pin_config_t LED_R_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 1U,
};
/* Initialize GPIO functionality on pin PIO0_22 (pin 30) */
GPIO_PinInit(BOARD_INITLEDPINS_LED_R_GPIO, BOARD_INITLEDPINS_LED_R_PORT, BOARD_INITLEDPINS_LED_R_PIN, &LED_R_config);
IOCON->PIO[9] = ((IOCON->PIO[9] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_OD_MASK)))
/* Open-drain mode.: Open-drain mode enabled. Remark: This is not a true open-drain mode. */
| IOCON_PIO_OD(PIO0_16_OD_ENABLED));
IOCON->PIO[29] = ((IOCON->PIO[29] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_OD_MASK)))
/* Open-drain mode.: Open-drain mode enabled. Remark: This is not a true open-drain mode. */
| IOCON_PIO_OD(PIO0_18_OD_ENABLED));
IOCON->PIO[28] = ((IOCON->PIO[28] &
/* Mask bits to zero which are setting */
(~(IOCON_PIO_OD_MASK)))
/* Open-drain mode.: Open-drain mode enabled. Remark: This is not a true open-drain mode. */
| IOCON_PIO_OD(PIO0_22_OD_ENABLED));
/* Disable clock for switch matrix. */
CLOCK_DisableClock(kCLOCK_Swm);
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitADCPins:
- options: {callFromInitBoot: 'true', coreID: core0, enableClock: 'true'}
- pin_list:
- {pin_num: '25', peripheral: ADC0, signal: 'CH, 2', pin_signal: PIO0_14/ACMP_I3/ADC_2}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitADCPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M0P */
void BOARD_InitADCPins(void)
{
/* Enables clock for switch matrix.: enable */
CLOCK_EnableClock(kCLOCK_Swm);
/* ADC_CHN2 connect to P0_14 */
SWM_SetFixedPinSelect(SWM0, kSWM_ADC_CHN2, true);
/* Disable clock for switch matrix. */
CLOCK_DisableClock(kCLOCK_Swm);
}
/* clang-format off */
/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitDACPins:
- options: {callFromInitBoot: 'true', coreID: core0, enableClock: 'true'}
- pin_list:
- {pin_num: '26', peripheral: DAC0, signal: DACOUT0, pin_signal: PIO0_19/DACOUT}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/
/* clang-format on */
/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitDACPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
/* Function assigned for the Cortex-M0P */
void BOARD_InitDACPins(void)
{
/* Enables clock for switch matrix.: enable */
CLOCK_EnableClock(kCLOCK_Swm);
/* DAC_OUT0 connect to P0_19 */
SWM_SetFixedPinSelect(SWM0, kSWM_DAC_OUT0, true);
/* Disable clock for switch matrix. */
CLOCK_DisableClock(kCLOCK_Swm);
}
/***********************************************************************************************************************
* EOF
**********************************************************************************************************************/