S32 SDK
Flexible I/O (FlexIO)

Detailed Description

The FlexIO is a highly configurable module providing a wide range of functionality including:

Several drivers are provided for this device, implementing a variety of communication protocols. There is also a common layer on which all the drivers are based, allowing more driver instances, either of the same type or different types, to function in parallel on the same FlexIO device. Each driver instance needs a certain number of FlexIO resources (shifters and timers) and as long as there are enough free resources new driver instances can be initialized. The table below shows the driver types and the number of resources needed by each one:

Drivers Timers Shifters Pins
SPI 2 2 4
I2C 2 2 2
I2S 2 2 4
UART 1 1 1

The number of timers and shifters available on a specific device can be found in the reference manual.

Modules

 FlexIO Common Driver
 Common services for FlexIO drivers.
 
 FlexIO I2C Driver
 I2C communication over FlexIO module (FLEXIO_I2C)
 
 FlexIO I2S Driver
 I2S communication over FlexIO module (FLEXIO_I2S)
 
 FlexIO SPI Driver
 SPI communication over FlexIO module (FLEXIO_SPI)
 
 FlexIO UART Driver
 UART communication over FlexIO module (FLEXIO_UART)