LinuxBSP实战课(pin驱动篇):IOMUX控制器的原理

科技布道师 2024-03-06 06:27:33

IOMUX 控制器简介

IOMUX 控制器工作原理

引脚输出

引脚输入

PIN 在设备树中的配置

PIN 在驱动中的注册

IOMUX 控制器简介

我们知道,芯片包含数量有限的引脚,其中大部分有多种信号选择。这些信号到引脚和引脚到信号的选择是由输入输出多路复用器称为IOMUX决定的。IOMUX也被用来配置其它引脚的特性,比如说电压水平和驱动强度等等。

IOMUX 控制器有以下3种功能:

SW_MUX_CTL_PAD_<PAD_NAME> 用于配置每个 PAD 的 8 个交替(ALT)多路复用器模式字段中的1个,并启用焊盘输入路径的强制(SION位)。以 SW_MUX_CTL_PAD_GPIO_IO00 为例:SW_PAD_CTL_PAD_<PAD_NAME> 用来配置每个 PAD 的设置。以 SW_PAD_CTL_PAD_GPIO_IO00 为例:

除了我们常见的方向控制、输出控制等,具体还包括其他的各种电气属性配置,具体包括有 :

a. DSE 驱动能力

DSE 可以调整芯片内部与引脚串联电阻R0 的大小,从而改变引脚的驱动能力。例如,R0 的初始值为260 欧姆,在3.3V 电压下其电流驱动能力为12.69mA,通过DSE 可以把R0 的值配置为原值的1/2、1/3…1/7 等。

b. FSEL1 压摆率配置

压摆率是指电压转换速率,可理解为电压由波谷升到波峰的时间。增大压摆率可减少输出电压的上升时间。引脚通过 FSEL1 支持低速和高速压摆率这两种配置。

c. OD 开漏输出配置

通过ODE 可以设置引脚是否工作在开漏输出模式。在该模式时引脚可以输出高阻态和低电平,输出高阻态时可由外部上拉电阻拉至高电平。开漏输出模式常用在一些通讯总线中,如I2C。

当多个 PAD 驱动模块输入时,控制模块的输入路径。以 SAI1_IPP_IND_SAI_MCLK_SELECT_INPUT 为例:IOMUX 控制器工作原理

0 阅读:0

科技布道师

简介:感谢大家的关注