ZHDA360A June   2015  – October 2026 INA209 , INA219 , INA220 , INA220-Q1 , INA223 , INA226 , INA226-Q1 , INA230 , INA231 , INA3221 , INA3221-Q1 , LM8323 , LM8325-1 , LM8327 , LM8328 , LM8330 , LM8333 , LM8335 , OPT3001 , OPT3001-Q1 , OPT3002 , OPT3004 , OPT3006 , OPT3007 , P82B715 , P82B96 , PCA6107 , PCA9306 , PCA9306-Q1 , PCA9515A , PCA9515B , PCA9518 , PCA9534 , PCA9534A , PCA9535 , PCA9536 , PCA9538 , PCA9539 , PCA9543A , PCA9544A , PCA9545A , PCA9546A , PCA9548A , PCA9554 , PCA9554A , PCA9555 , PCA9557 , PCF8574 , PCF8574A , PCF8575 , PCF8575C , TCA4311A , TCA5405 , TCA6408A , TCA6416A , TCA6418E , TCA6424A , TCA6507 , TCA8418 , TCA8418E , TCA8424 , TCA9406 , TCA9509 , TCA9517 , TCA9517A , TCA9534 , TCA9534A , TCA9535 , TCA9538 , TCA9539 , TCA9539-Q1 , TCA9543A , TCA9544A , TCA9545A , TCA9546A , TCA9548A , TCA9554 , TCA9554A , TCA9555 , TCA9617A , TCA9617B , TCA9800 , TCA9801 , TCA9802 , TCA9803

 

  1.   1
  2.   摘要
  3.   商标
  4. 1电气特性
    1. 1.1 通过漏极开路实现双向通信
      1. 1.1.1 漏极开路拉低
      2. 1.1.2 漏极开路释放总线
  5. 2I2C 接口
    1. 2.1 常规 I2C 运行
      1. 2.1.1 启动条件和停止条件
      2. 2.1.2 重复 START 条件
    2. 2.2 数据有效性与字节格式
    3. 2.3 确认 (ACK) 和否定确认 (NACK)
  6. 3I2C 数据
    1. 3.1 在 I2C 总线上向目标器件写入
    2. 3.2 在 I2C 总线上从目标器件读取
  7. 4修订历史记录

确认 (ACK) 和否定确认 (NACK)

每个数据字节(包括地址字节)后跟一个来自接收器的 ACK 位。ACK 位允许接收器与发送器通信,指示已成功接收该字节且可发送另一个字节。

在接收器可以发送 ACK 之前,发送器必须释放 SDA 线。要发送 ACK 位,接收器应在 ACK/NACK 相关时钟周期(周期 9)的低电平阶段下拉 SDA 线,以使 SDA 线在 ACK/NACK 相关时钟周期的高电平阶段保持稳定的低电平。必须将建立和保持时间考虑在内。

当 SDA 线在 ACK/NACK 相关时钟周期内保持高电平时,会被解释为 NACK。有几种情况会导致生成 NACK:

  1. 接收器正在执行某些实时功能且尚未准备好与控制器开始通信,因而无法接收或发送。
  2. 在传输过程中,接收器收到其无法理解的数据或命令。
  3. 在传输过程中,接收器无法接收更多数据字节。
  4. 控制器/接收器已完成数据读取,并通过 NACK 向目标器件指示这一情况。
 NACK 波形示例图 2-3 NACK 波形示例