ZHCACH2 march 2023 PCA9306
在 I2C 通信中,每個事務都包含來自控制器的 8 位(1 字節)信息,后跟來自目標器件的一位信息。目標器件發送的位可以是 0(通常表示為 ACK 位),也可以是 1(通常表示為 NACK 位)。當目標發送 ACK 位時,這表示已正確收到傳輸的數據,而沒有任何錯誤。當目標發送 NACK 位時,這表示接收器未正確接收到傳輸的數據或地址。在 I2C 系統中,有幾種一般情況可能導致生成 NACK。了解 I2C 總線 應用手冊的 ACK 和 NACK 一節中對這些情況進行了詳細說明。
圖 2-1 中的示例展示了 I2C 控制器嘗試寫入地址 0x55h 的目標器件時發生了 NACK 以及 I2C 目標 NACK(不會在第 9 個時鐘脈沖上將 SDA 驅動為低電平)。