ZHCSIJ2C July 2018 – April 2024 DS90UB935-Q1
PRODUCTION DATA
串行控制总线由两个信号组成:SCL 和 SDA。SCL 是串行总线时钟输入/输出信号,SDA 是串行总线数据输入/输出信号。SCL 和 SDA 信号都需要一个外部上拉电阻到 VI2C,选为 1.8V 或 3.3V。
对于标准和快速 I2C 模式,建议使用 RPU = 4.7kΩ 的上拉电阻,而对于快速+ 模式,建议使用 RPU = 470Ω 的上拉电阻。但是,可以根据容性负载和数据速率要求另外调整上拉电阻值。信号要么被拉至高电平,要么被拉至低电平。IDX 引脚将控制接口配置为两个可能的器件地址之一。上拉电阻 (RHIGH) 和下拉电阻 (RLOW) 可用于在 IDX 输入引脚上设置适当的电压。
串行总线协议由 START、START-Repeated 和 STOP 相位控制。当 SDA 切换为低电平而 SCL 为高电平时,将发生 START。当 SDA 切换为高电平而 SCL 也为高电平时,将发生 STOP。请参阅图 6-9。
为了与 I2C 目标器件通信,主机控制器(控制器)会将数据发送到目标地址并等待响应。该响应称为确认位 (ACK)。如果总线上的目标器件被正确寻址,则会通过将 SDA 总线驱动为低电平来确认 (ACK) 控制器。如果地址与器件的目标器件地址不匹配,则目标器件会通过让 SDA 拉为高电平来取消确认 (NACK) 控制器。发送数据时,总线上也会发生 ACK。当控制器在写入数据时,目标器件在成功接收到每个数据字节后都会进行 ACK。当控制器在读取数据时,控制器在接收到每个数据字节后都会进行 ACK,以便让目标器件知道控制器想要接收另一个数据字节。当控制器想要停止读取时,则会在最后一个数据字节之后发出 NACK 并在总线上创建一个停止条件。总线上的所有通信都是从启动条件或重复启动条件开始。总线上的所有通信都以停止条件结束。图 6-10 中显示了 READ,图 6-11 中显示了 WRITE。
位于串行器的任何 I2C 控制器必须支持 I2C 时钟延展。有关 I2C 接口要求和吞吐量注意事项的更多信息,请参阅 TI 应用手册通过具有双向控制通道的 FPD-Link III 进行 I2C 通信 (SNLA131)。