![]() |
MCUXpresso SDK API Reference Manual
Rev 2.16.000
NXP Semiconductors
|
The MCUXpresso SDK provides a driver for the Input multiplexing (INPUTMUX).
It configures the inputs to the pin interrupt block, DMA trigger, and frequency measure function. Once configured, the clock is not needed for the inputmux.
INPUTMUX_AttachSignal function configures the specified input
Refer to the driver examples codes located at <SDK_ROOT>/boards/<BOARD>/driver_examples/inputmux
Files | |
file | fsl_inputmux.h |
file | fsl_inputmux_connections.h |
Functions | |
void | INPUTMUX_Init (INPUTMUX_Type *base) |
Initialize INPUTMUX peripheral. More... | |
void | INPUTMUX_AttachSignal (INPUTMUX_Type *base, uint32_t index, inputmux_connection_t connection) |
Attaches a signal. More... | |
void | INPUTMUX_EnableSignal (INPUTMUX_Type *base, inputmux_signal_t signal, bool enable) |
Enable/disable a signal. More... | |
void | INPUTMUX_Deinit (INPUTMUX_Type *base) |
Deinitialize INPUTMUX peripheral. More... | |
Input multiplexing connections | |
enum | _inputmux_connection_t { kINPUTMUX_SctGpi0ToSct0 = 0U + (SCT0_INMUX0 << PMUX_SHIFT) , kINPUTMUX_DebugHaltedToSct0 = 23U + (SCT0_INMUX0 << PMUX_SHIFT) , kINPUTMUX_I2sSharedWs1ToTimer0Captsel = 24U + (TIMER0CAPTSEL0 << PMUX_SHIFT) , kINPUTMUX_I2sSharedWs1ToTimer1Captsel = 24U + (TIMER1CAPTSEL0 << PMUX_SHIFT) , kINPUTMUX_I2sSharedWs1ToTimer2Captsel = 24U + (TIMER2CAPTSEL0 << PMUX_SHIFT) , kINPUTMUX_GpioPort1Pin31ToPintsel = 63U + (PINTSEL0 << PMUX_SHIFT) , kINPUTMUX_HashDmaRxToDma0 = 21U + (DMA0_ITRIG_INMUX0 << PMUX_SHIFT) , kINPUTMUX_Dma0Adc0Ch1TrigoutToTriginChannels = 22U + (DMA0_OTRIG_INMUX0 << PMUX_SHIFT) , kINPUTMUX_FreqmeGpioClk_bRef = 7u + (FREQMEAS_REF_REG << PMUX_SHIFT) , kINPUTMUX_FreqmeGpioClk_bTarget = 7u + (FREQMEAS_TARGET_REG << PMUX_SHIFT) , kINPUTMUX_I2sSharedWs1ToTimer3Captsel = 24U + (TIMER3CAPTSEL0 << PMUX_SHIFT) , kINPUTMUX_GpioPort0Pin31ToPintSecsel = 31U + (PINTSECSEL0 << PMUX_SHIFT) , kINPUTMUX_HashDmaRxToDma1 = 14U + (DMA1_ITRIG_INMUX0 << PMUX_SHIFT) } |
INPUTMUX connections type. More... | |
enum | _inputmux_signal_t { kINPUTMUX_HashCryptToDmac0Ch0RequestEna = 0U + (DMA0_REQ_ENA_ID << ENA_SHIFT) , kINPUTMUX_Adc0FIFO1ToDmac0Ch22RequestEna = 22U + (DMA0_REQ_ENA_ID << ENA_SHIFT) , kINPUTMUX_Flexcomm3TxToDmac1Ch9RequestEna = 9U + (DMA1_REQ_ENA_ID << ENA_SHIFT) , kINPUTMUX_Dmac0InputTriggerHashOutEna = 21U + (DMA0_ITRIG_ENA_ID << ENA_SHIFT) } |
INPUTMUX signal enable/disable type. More... | |
typedef enum _inputmux_connection_t | inputmux_connection_t |
INPUTMUX connections type. | |
typedef enum _inputmux_signal_t | inputmux_signal_t |
INPUTMUX signal enable/disable type. | |
#define | SCT0_INMUX0 0x00U |
Periphinmux IDs. | |
#define | TIMER0CAPTSEL0 0x20U |
#define | TIMER1CAPTSEL0 0x40U |
#define | TIMER2CAPTSEL0 0x60U |
#define | PINTSEL_PMUX_ID 0xC0U |
#define | PINTSEL0 0xC0U |
#define | DMA0_ITRIG_INMUX0 0xE0U |
#define | DMA0_OTRIG_INMUX0 0x160U |
#define | FREQMEAS_REF_REG 0x180U |
#define | FREQMEAS_TARGET_REG 0x184U |
#define | TIMER3CAPTSEL0 0x1A0U |
#define | TIMER4CAPTSEL0 0x1C0U |
#define | PINTSECSEL0 0x1E0U |
#define | DMA1_ITRIG_INMUX0 0x200U |
#define | DMA1_OTRIG_INMUX0 0x240U |
#define | DMA0_REQ_ENA_ID 0x740U |
#define | DMA1_REQ_ENA_ID 0x760U |
#define | DMA0_ITRIG_ENA_ID 0x780U |
#define | DMA1_ITRIG_ENA_ID 0x7A0U |
#define | ENA_SHIFT 8U |
#define | PMUX_SHIFT 20U |
Driver version | |
#define | FSL_INPUTMUX_DRIVER_VERSION (MAKE_VERSION(2, 0, 7)) |
Group interrupt driver version for SDK. | |
enum _inputmux_signal_t |
void INPUTMUX_Init | ( | INPUTMUX_Type * | base | ) |
This function enables the INPUTMUX clock.
base | Base address of the INPUTMUX peripheral. |
None. |
void INPUTMUX_AttachSignal | ( | INPUTMUX_Type * | base, |
uint32_t | index, | ||
inputmux_connection_t | connection | ||
) |
This function attaches multiplexed signals from INPUTMUX to target signals. For example, to attach GPIO PORT0 Pin 5 to PINT peripheral, do the following:
In this example, INTMUX has 8 registers for PINT, PINT_SEL0~PINT_SEL7. With parameter index
specified as 2, this function configures register PINT_SEL2.
base | Base address of the INPUTMUX peripheral. |
index | The serial number of destination register in the group of INPUTMUX registers with same name. |
connection | Applies signal from source signals collection to target signal. |
None. |
void INPUTMUX_EnableSignal | ( | INPUTMUX_Type * | base, |
inputmux_signal_t | signal, | ||
bool | enable | ||
) |
This function gates the INPUTPMUX clock.
base | Base address of the INPUTMUX peripheral. |
signal | Enable signal register id and bit offset. |
enable | Selects enable or disable. |
None. |
void INPUTMUX_Deinit | ( | INPUTMUX_Type * | base | ) |
This function disables the INPUTMUX clock.
base | Base address of the INPUTMUX peripheral. |
None. |