MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
The MCUXpresso SDK provides a peripheral driver for the Input/Output Pad Controller.
The IOPCTL, working in conjunction with the PIMCTL, enables the chip to share one pad for multiple signals from different peripheral interfaces.
Files | |
file | fsl_iopctl.h |
Data Structures | |
struct | iopctl_group_t |
Array of IOPCTL pin definitions passed to IOPCTL_SetPinMuxing() must be in this format. More... | |
Macros | |
#define | IOPCTL_FUNC0 0x0 |
IOPCTL function and mode selection definitions. More... | |
#define | IOPCTL_FUNC1 0x1 |
Selects pin function 1. | |
#define | IOPCTL_FUNC2 0x2 |
Selects pin function 2. | |
#define | IOPCTL_FUNC3 0x3 |
Selects pin function 3. | |
#define | IOPCTL_FUNC4 0x4 |
Selects pin function 4. | |
#define | IOPCTL_FUNC5 0x5 |
Selects pin function 5. | |
#define | IOPCTL_FUNC6 0x6 |
Selects pin function 6. | |
#define | IOPCTL_FUNC7 0x7 |
Selects pin function 7. | |
#define | IOPCTL_FUNC8 0x8 |
Selects pin function 8. | |
#define | IOPCTL_FUNC9 0x9 |
Selects pin function 9. | |
#define | IOPCTL_FUNC10 0xA |
Selects pin function 10. | |
#define | IOPCTL_FUNC11 0xB |
Selects pin function 11. | |
#define | IOPCTL_FUNC12 0xC |
Selects pin function 12. | |
#define | IOPCTL_FUNC13 0xD |
Selects pin function 13. | |
#define | IOPCTL_FUNC14 0xE |
Selects pin function 14. | |
#define | IOPCTL_FUNC15 0xF |
Selects pin function 15. | |
#define | IOPCTL_PUPD_EN (0x1 << 4) |
Enables Pullup / Pulldown. | |
#define | IOPCTL_PULLDOWN_EN (0x0 << 5) |
Selects pull-down function. | |
#define | IOPCTL_PULLUP_EN (0x1 << 5) |
Selects pull-up function. | |
#define | IOPCTL_INBUF_EN (0x1 << 6) |
Enables buffer function on input. | |
#define | IOPCTL_SLEW_RATE (0x0 << 7) |
Slew Rate Control. | |
#define | IOPCTL_FULLDRIVE_EN (0x1 << 8) |
Selects full drive. | |
#define | IOPCTL_ANAMUX_EN (0x1 << 9) |
Enables analog mux function by setting 0 to bit 7. | |
#define | IOPCTL_PSEDRAIN_EN (0x1 << 10) |
Enables pseudo output drain function. | |
#define | IOPCTL_INV_EN (0x1 << 11) |
Enables invert function on input. | |
Functions | |
__STATIC_INLINE void | IOPCTL_PinMuxSet (IOPCTL_Type *base, uint8_t port, uint8_t pin, uint32_t modefunc) |
Sets I/O Pad Control pin mux. More... | |
__STATIC_INLINE void | IOPCTL_SetPinMuxing (IOPCTL_Type *base, const iopctl_group_t *pinArray, uint32_t arrayLength) |
Set all I/O Control pin muxing. More... | |
Driver version | |
#define | LPC_IOPCTL_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
IOPCTL driver version 2.0.0. More... | |
struct iopctl_group_t |
#define LPC_IOPCTL_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
#define IOPCTL_FUNC0 0x0 |
__STATIC_INLINE void IOPCTL_PinMuxSet | ( | IOPCTL_Type * | base, |
uint8_t | port, | ||
uint8_t | pin, | ||
uint32_t | modefunc | ||
) |
base | : The base of IOPCTL peripheral on the chip |
port | : Port to mux |
pin | : Pin to mux |
modefunc | : OR'ed values of type IOPCTL_* |
__STATIC_INLINE void IOPCTL_SetPinMuxing | ( | IOPCTL_Type * | base, |
const iopctl_group_t * | pinArray, | ||
uint32_t | arrayLength | ||
) |
base | : The base of IOPCTL peripheral on the chip |
pinArray | : Pointer to array of pin mux selections |
arrayLength | : Number of entries in pinArray |