FlexIO 是用在 Kinetis 和 S32K 微控制器系列上的新外设模块。它具有高度可配置性,能够模拟各种通信协议,例如本文档中提到的UART、I2C、SPI、I2S和LIN,以及其它一些通讯协议,像J1850、I3C、曼彻斯特。FlexIO 作为微控制器的一个独立外设模块,并不能替代任何通信外设。FlexIO 的主要特点是可以根据用户的需求来直接构建自己的外设。本文的示例代码基于 S32K SDK(包含在S32DS_v2018 中的软件开发套件中)和 Bare Metal 的配置代码,以便于更好地了解什么是FlexIO。通过这些示例,用户可以模拟不同的通信协议和 PWM 信号。