![]() |
Kinetis SDK v.2.0 API Reference Manual
Rev. 0
NXP Semiconductors
|
The MCUXpresso SDK provides a peripheral driver for the I/O pin configuration (IOCON) module of MCUXpresso SDK devices.
The function IOCONPinMuxSet() sets a pinmux for a single pin according to the selected configuration.
The function IOCON_SetPinMuxing() sets a pinmux for group of pins according to the selected configuration.
Example use of IOCON API to selection of GPIO mode.
Files | |
file | fsl_iocon.h |
Data Structures | |
struct | iocon_group_t |
Array of IOCON pin definitions passed to IOCON_SetPinMuxing() must be in this format. More... | |
Macros | |
#define | IOCON_FUNC0 IOCON_PIO_FUNC(0) |
IOCON function and mode selection definitions. More... | |
#define | IOCON_FUNC1 IOCON_PIO_FUNC(1) |
Selects pin function 1. | |
#define | IOCON_FUNC2 IOCON_PIO_FUNC(2) |
Selects pin function 2. | |
#define | IOCON_FUNC3 IOCON_PIO_FUNC(3) |
Selects pin function 3. | |
#define | IOCON_FUNC4 IOCON_PIO_FUNC(4) |
Selects pin function 4. | |
#define | IOCON_FUNC5 IOCON_PIO_FUNC(5) |
Selects pin function 5. | |
#define | IOCON_FUNC6 IOCON_PIO_FUNC(6) |
Selects pin function 6. | |
#define | IOCON_FUNC7 IOCON_PIO_FUNC(7) |
Selects pin function 7. | |
#define | IOCON_MODE_PULLUP IOCON_PIO_MODE(0) |
Selects pull-up function. | |
#define | IOCON_MODE_REPEATER IOCON_PIO_MODE(1) |
Selects pin repeater function. | |
#define | IOCON_MODE_INACT IOCON_PIO_MODE(2) |
No addition pin function. | |
#define | IOCON_MODE_PULLDOWN IOCON_PIO_MODE(3) |
Selects pull-down function. | |
#define | IOCON_HYS_EN (0x1 << 5) |
Enables hysteresis ?? | |
#define | IOCON_GPIO_MODE IOCON_PIO_SLEW0(1) |
GPIO Mode. | |
#define | IOCON_I2C_SLEW IOCON_PIO_SLEW0(1) |
I2C Slew Rate Control. | |
#define | IOCON_INV_EN IOCON_PIO_INVERT(1) |
Enables invert function on input. | |
#define | IOCON_ANALOG_EN IOCON_PIO_DIGIMODE(0) |
Enables analog function by setting 0 to bit 7. | |
#define | IOCON_DIGITAL_EN IOCON_PIO_DIGIMODE(1) |
Enables digital function by setting 1 to bit 7(default) | |
#define | IOCON_STDI2C_EN IOCON_PIO_FILTEROFF(1) |
I2C standard mode/fast-mode. | |
#define | IOCON_INPFILT_OFF IOCON_PIO_FILTEROFF(1) |
Input filter Off for GPIO pins. | |
#define | IOCON_INPFILT_ON IOCON_PIO_FILTEROFF(0) |
Input filter On for GPIO pins. | |
#define | IOCON_SLEW1_OFF IOCON_PIO_SLEW1(0) |
Driver Slew Rate Control. | |
#define | IOCON_SLEW1_ON IOCON_PIO_SLEW1(1) |
Driver Slew Rate Control. | |
#define | IOCON_FASTI2C_EN (IOCON_INPFILT_ON | IOCON_SLEW1_ON) |
I2C Fast-mode Plus and high-speed slave. | |
#define | IOCON_OPENDRAIN_EN IOCON_PIO_OD(1) |
Enables open-drain function. | |
#define | IOCON_S_MODE_0CLK IOCON_PIO_SSEL(0) |
Bypass input filter. | |
#define | IOCON_S_MODE_1CLK IOCON_PIO_SSEL(1) |
Input pulses shorter than 1 filter clock are rejected. | |
#define | IOCON_S_MODE_2CLK IOCON_PIO_SSEL(2) |
Input pulses shorter than 2 filter clock2 are rejected. | |
#define | IOCON_S_MODE_3CLK IOCON_PIO_SSEL(3) |
Input pulses shorter than 3 filter clock2 are rejected. | |
Functions | |
__STATIC_INLINE void | IOCON_PinMuxSet (IOCON_Type *base, uint8_t port, uint8_t pin, uint32_t modefunc) |
Sets I/O Control pin mux. More... | |
__STATIC_INLINE void | IOCON_SetPinMuxing (IOCON_Type *base, const iocon_group_t *pinArray, uint32_t arrayLength) |
Set all I/O Control pin muxing. More... | |
__STATIC_INLINE void | IOCON_PullSet (IOCON_Type *base, uint8_t port, uint8_t pin, uint8_t pull_select) |
Sets I/O Control pin mux pull select. More... | |
__STATIC_INLINE void | IOCON_FuncSet (IOCON_Type *base, uint8_t port, uint8_t pin, uint8_t func) |
Sets I/O Control pin mux pull select. More... | |
Driver version | |
#define | LPC_IOCON_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
IOCON driver version 2.0.0. More... | |
struct iocon_group_t |
#define LPC_IOCON_DRIVER_VERSION (MAKE_VERSION(2, 0, 0)) |
#define IOCON_FUNC0 IOCON_PIO_FUNC(0) |
__STATIC_INLINE void IOCON_PinMuxSet | ( | IOCON_Type * | base, |
uint8_t | port, | ||
uint8_t | pin, | ||
uint32_t | modefunc | ||
) |
base | : The base of IOCON peripheral on the chip |
port | : GPIO port to mux |
pin | : GPIO pin to mux |
modefunc | : OR'ed values of type IOCON_* |
__STATIC_INLINE void IOCON_SetPinMuxing | ( | IOCON_Type * | base, |
const iocon_group_t * | pinArray, | ||
uint32_t | arrayLength | ||
) |
base | : The base of IOCON peripheral on the chip |
pinArray | : Pointer to array of pin mux selections |
arrayLength | : Number of entries in pinArray |
__STATIC_INLINE void IOCON_PullSet | ( | IOCON_Type * | base, |
uint8_t | port, | ||
uint8_t | pin, | ||
uint8_t | pull_select | ||
) |
base | : The base of IOCON peripheral on the chip |
port | : GPIO port to mux |
pin | : GPIO pin to mux |
pull_select | : OR'ed values of type IOCON_* |
__STATIC_INLINE void IOCON_FuncSet | ( | IOCON_Type * | base, |
uint8_t | port, | ||
uint8_t | pin, | ||
uint8_t | func | ||
) |
base | : The base of IOCON peripheral on the chip |
port | : GPIO port to mux |
pin | : GPIO pin to mux |
func | : Pinmux function |