MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
SWM: Switch Matrix Module

Overview

The MCUXpresso SDK provides a peripheral driver for the Switch Matrix Module (SWM) module of MCUXpresso SDK devices.

The function SWM_SetMovablePinSelect() will selects a movable pin designated by its GPIO port and bit numbers to a function.

The function SWM_SetFixedMovablePinSelect() will selects a fixed movable pin designated by its GPIO port and bit numbers to a function.

The function SWM_SetFixedPinSelect() will enables a fixed-pin function in PINENABLE0 or PINENABLE1.

Files

file  fsl_swm.h
 

Functions

void SWM_SetMovablePinSelect (SWM_Type *base, swm_select_movable_t func, swm_port_pin_type_t swm_port_pin)
 Assignment of digital peripheral functions to pins. More...
 
void SWM_SetFixedPinSelect (SWM_Type *base, swm_select_fixed_pin_t func, bool enable)
 Enable the fixed-pin function. More...
 

Driver version

#define FSL_SWM_DRIVER_VERSION   (MAKE_VERSION(2, 0, 1))
 Version 2.0.1.
 

swm connections

enum  swm_port_pin_type_t {
  kSWM_PortPin_P0_0 = 0U,
  kSWM_PortPin_P0_1 = 1U,
  kSWM_PortPin_P0_2 = 2U,
  kSWM_PortPin_P0_3 = 3U,
  kSWM_PortPin_P0_4 = 4U,
  kSWM_PortPin_P0_5 = 5U,
  kSWM_PortPin_P0_6 = 6U,
  kSWM_PortPin_P0_7 = 7U,
  kSWM_PortPin_P0_8 = 8U,
  kSWM_PortPin_P0_9 = 9U,
  kSWM_PortPin_P0_10 = 10U,
  kSWM_PortPin_P0_11 = 11U,
  kSWM_PortPin_P0_12 = 12U,
  kSWM_PortPin_P0_13 = 13U,
  kSWM_PortPin_P0_14 = 14U,
  kSWM_PortPin_P0_15 = 15U,
  kSWM_PortPin_P0_16 = 16U,
  kSWM_PortPin_P0_17 = 16U
}
 SWM port_pin number. More...
 
enum  swm_select_movable_t {
  kSWM_USART0_TXD = 0U,
  kSWM_USART0_RXD = 1U,
  kSWM_USART0_RTS = 2U,
  kSWM_USART0_CTS = 3U,
  kSWM_USART0_SCLK = 4U,
  kSWM_USART1_TXD = 5U,
  kSWM_USART1_RXD = 6U,
  kSWM_USART1_SCLK = 7U,
  kSWM_SPI0_SCK = 8U,
  kSWM_SPI0_MOSI = 9U,
  kSWM_SPI0_MISO = 10U,
  kSWM_SPI0_SSEL0 = 11U,
  kSWM_SPI0_SSEL1 = 12U,
  kSWM_T0_CAP_CHN0 = 13U,
  kSWM_T0_CAP_CHN1 = 14U,
  kSWM_T0_CAP_CHN2 = 15U,
  kSWM_T0_MAT_CHN0 = 16U,
  kSWM_T0_MAT_CHN1 = 17U,
  kSWM_T0_MAT_CHN2 = 18U,
  kSWM_T0_MAT_CHN3 = 19U,
  kSWM_I2C0_SDA = 20U,
  kSWM_I2C0_SCL = 21U,
  kSWM_ACMP_OUT = 22U,
  kSWM_CLKOUT = 23U,
  kSWM_GPIO_INT_BMAT = 24U,
  kSWM_LVLSHFT_IN0 = 25U,
  kSWM_LVLSHFT_IN1 = 26U,
  kSWM_LVLSHFT_OUT0 = 27U,
  kSWM_LVLSHFT_OUT1 = 28U,
  kSWM_MOVABLE_NUM_FUNCS = 29U
}
 SWM movable selection. More...
 
enum  swm_select_fixed_pin_t {
  kSWM_ACMP_INPUT1 = SWM_PINENABLE0_ACMP_I1_MASK,
  kSWM_ACMP_INPUT2 = SWM_PINENABLE0_ACMP_I2_MASK,
  kSWM_ACMP_INPUT3 = SWM_PINENABLE0_ACMP_I3_MASK,
  kSWM_ACMP_INPUT4 = SWM_PINENABLE0_ACMP_I4_MASK,
  kSWM_SWCLK = SWM_PINENABLE0_SWCLK_MASK,
  kSWM_SWDIO = SWM_PINENABLE0_SWDIO_MASK,
  kSWM_RESETN = SWM_PINENABLE0_RESETN_MASK,
  kSWM_CLKIN = SWM_PINENABLE0_CLKIN_MASK,
  kSWM_WKCLKIN = SWM_PINENABLE0_WKCLKIN_MASK,
  kSWM_VDDCMP = SWM_PINENABLE0_VDDCMP_MASK,
  kSWM_ADC_CHN0 = SWM_PINENABLE0_ADC_0_MASK,
  kSWM_ADC_CHN1 = SWM_PINENABLE0_ADC_1_MASK,
  kSWM_ADC_CHN2 = SWM_PINENABLE0_ADC_2_MASK,
  kSWM_ADC_CHN3 = SWM_PINENABLE0_ADC_3_MASK,
  kSWM_ADC_CHN4 = SWM_PINENABLE0_ADC_4_MASK,
  kSWM_ADC_CHN5 = SWM_PINENABLE0_ADC_5_MASK,
  kSWM_ADC_CHN6 = SWM_PINENABLE0_ADC_6_MASK,
  kSWM_ADC_CHN7 = SWM_PINENABLE0_ADC_7_MASK,
  kSWM_ADC_CHN8 = SWM_PINENABLE0_ADC_8_MASK,
  kSWM_ADC_CHN9 = SWM_PINENABLE0_ADC_9_MASK,
  kSWM_ADC_CHN10 = SWM_PINENABLE0_ADC_10_MASK,
  kSWM_ADC_CHN11 = SWM_PINENABLE0_ADC_11_MASK,
  kSWM_FIXEDPIN_NUM_FUNCS = 0x200001U
}
 SWM fixed pin selection. More...
 

Enumeration Type Documentation

Enumerator
kSWM_PortPin_P0_0 

port_pin number P0_0.

kSWM_PortPin_P0_1 

port_pin number P0_1.

kSWM_PortPin_P0_2 

port_pin number P0_2.

kSWM_PortPin_P0_3 

port_pin number P0_3.

kSWM_PortPin_P0_4 

port_pin number P0_4.

kSWM_PortPin_P0_5 

port_pin number P0_5.

kSWM_PortPin_P0_6 

port_pin number P0_6.

kSWM_PortPin_P0_7 

port_pin number P0_7.

kSWM_PortPin_P0_8 

port_pin number P0_8.

kSWM_PortPin_P0_9 

port_pin number P0_9.

kSWM_PortPin_P0_10 

port_pin number P0_10.

kSWM_PortPin_P0_11 

port_pin number P0_11.

kSWM_PortPin_P0_12 

port_pin number P0_12.

kSWM_PortPin_P0_13 

port_pin number P0_13.

kSWM_PortPin_P0_14 

port_pin number P0_14.

kSWM_PortPin_P0_15 

port_pin number P0_15.

kSWM_PortPin_P0_16 

port_pin number P0_16.

kSWM_PortPin_P0_17 

port_pin number P0_17.

Enumerator
kSWM_USART0_TXD 

Movable function as USART0_TXD.

kSWM_USART0_RXD 

Movable function as USART0_RXD.

kSWM_USART0_RTS 

Movable function as USART0_RTS.

kSWM_USART0_CTS 

Movable function as USART0_CTS.

kSWM_USART0_SCLK 

Movable function as USART0_SCLK.

kSWM_USART1_TXD 

Movable function as USART1_TXD.

kSWM_USART1_RXD 

Movable function as USART1_RXD.

kSWM_USART1_SCLK 

Movable function as USART1_SCLK.

kSWM_SPI0_SCK 

Movable function as SPI0_SCK.

kSWM_SPI0_MOSI 

Movable function as SPI0_MOSI.

kSWM_SPI0_MISO 

Movable function as SPI0_MISO.

kSWM_SPI0_SSEL0 

Movable function as SPI0_SSEL0.

kSWM_SPI0_SSEL1 

Movable function as SPI0_SSEL1.

kSWM_T0_CAP_CHN0 

Movable function as Timer Capture Channel 0.

kSWM_T0_CAP_CHN1 

Movable function as Timer Capture Channel 1.

kSWM_T0_CAP_CHN2 

Movable function as Timer Capture Channel 2.

kSWM_T0_MAT_CHN0 

Movable function as Timer Match Channel 0.

kSWM_T0_MAT_CHN1 

Movable function as Timer Match Channel 1.

kSWM_T0_MAT_CHN2 

Movable function as Timer Match Channel 2.

kSWM_T0_MAT_CHN3 

Movable function as Timer Match Channel 3.

kSWM_I2C0_SDA 

Movable function as I2C1_SDA.

kSWM_I2C0_SCL 

Movable function as I2C1_SCL.

kSWM_ACMP_OUT 

Movable function as ACMP_OUT.

kSWM_CLKOUT 

Movable function as CLKOUT.

kSWM_GPIO_INT_BMAT 

Movable function as GPIO_INT_BMAT.

kSWM_LVLSHFT_IN0 

Movable function as LVLSHFT_IN0.

kSWM_LVLSHFT_IN1 

Movable function as LVLSHFT_IN1.

kSWM_LVLSHFT_OUT0 

Movable function as LVLSHFT_OUT0.

kSWM_LVLSHFT_OUT1 

Movable function as LVLSHFT_OUT1.

kSWM_MOVABLE_NUM_FUNCS 

Movable function number.

Enumerator
kSWM_ACMP_INPUT1 

Fixed-pin function as ACMP_INPUT1.

kSWM_ACMP_INPUT2 

Fixed-pin function as ACMP_INPUT2.

kSWM_ACMP_INPUT3 

Fixed-pin function as ACMP_INPUT3.

kSWM_ACMP_INPUT4 

Fixed-pin function as ACMP_INPUT4.

kSWM_SWCLK 

Fixed-pin function as SWCLK.

kSWM_SWDIO 

Fixed-pin function as SWDIO.

kSWM_RESETN 

Fixed-pin function as RESETN.

kSWM_CLKIN 

Fixed-pin function as CLKIN.

kSWM_WKCLKIN 

Fixed-pin function as CLKIN.

kSWM_VDDCMP 

Fixed-pin function as VDDCMP.

kSWM_ADC_CHN0 

Fixed-pin function as ADC_CHN0.

kSWM_ADC_CHN1 

Fixed-pin function as ADC_CHN1.

kSWM_ADC_CHN2 

Fixed-pin function as ADC_CHN2.

kSWM_ADC_CHN3 

Fixed-pin function as ADC_CHN3.

kSWM_ADC_CHN4 

Fixed-pin function as ADC_CHN4.

kSWM_ADC_CHN5 

Fixed-pin function as ADC_CHN5.

kSWM_ADC_CHN6 

Fixed-pin function as ADC_CHN6.

kSWM_ADC_CHN7 

Fixed-pin function as ADC_CHN7.

kSWM_ADC_CHN8 

Fixed-pin function as ADC_CHN8.

kSWM_ADC_CHN9 

Fixed-pin function as ADC_CHN9.

kSWM_ADC_CHN10 

Fixed-pin function as ADC_CHN10.

kSWM_ADC_CHN11 

Fixed-pin function as ADC_CHN11.

kSWM_FIXEDPIN_NUM_FUNCS 

Fixed-pin function number.

Function Documentation

void SWM_SetMovablePinSelect ( SWM_Type *  base,
swm_select_movable_t  func,
swm_port_pin_type_t  swm_port_pin 
)

This function will selects a pin (designated by its GPIO port and bit numbers) to a function.

Parameters
baseSWM peripheral base address.
funcany function name that is movable.
swm_port_pinany pin which has a GPIO port number and bit number.
void SWM_SetFixedPinSelect ( SWM_Type *  base,
swm_select_fixed_pin_t  func,
bool  enable 
)

This function will enables a fixed-pin function in PINENABLE0 or PINENABLE1.

Parameters
baseSWM peripheral base address.
funcany function name that is fixed pin.
enableenable or disable.