ZHCSZ90 November 2025 LM51251A-Q1
PRODUCTION DATA
CFG 引腳用于設(shè)置器件地址(8 個地址)。
I2C 總線是控制器與一系列接收器器件之間的通信鏈路。該鏈路是使用一條雙線總線建立的,這條總線包含串行時鐘信號 (SCL) 和串行數(shù)據(jù)信號 (SDA)。在串行數(shù)據(jù)線路用于控制器與接收器終端之間雙向數(shù)據(jù)通信的所有情況下,串行時鐘均來源于控制器。每個器件都有一個開漏輸出可用于在串行數(shù)據(jù)線路 (SDA) 上傳輸數(shù)據(jù)。為了在數(shù)據(jù)傳輸期間將漏極輸出拉至高電平,必須在串行數(shù)據(jù)線路上放置一個外部上拉電阻器。該器件上配有一個接收器 I2C 接口,這個接口支持以標(biāo)準(zhǔn)模式、快速模式和快速+ 模式運行,數(shù)據(jù)速率分別高達(dá) 100kbit/s、400kbit/s 和 1000kbit/s,并可實現(xiàn)與 I2C 標(biāo)準(zhǔn) 3.0 兼容的自動遞增尋址。如下圖所示,數(shù)據(jù)傳輸由一個來自控制器的起始位啟動。在 SCL 信號的高電平期間,當(dāng) SDA 線路從高電平轉(zhuǎn)換為低電平時,會識別到啟動條件。接收到起始位后,該器件將在 SDA 輸入端接收串行數(shù)據(jù),并檢查是否存在有效地址和控制信息。如果為器件設(shè)置了接收器地址位,則器件會發(fā)出確認(rèn)脈沖并準(zhǔn)備接收寄存器地址和數(shù)據(jù)。在接收到停止條件或接收到發(fā)送給器件的數(shù)據(jù)字時,數(shù)據(jù)傳輸即完成。停止條件是指在 SCL 信號的高電平期間,SDA 輸入從低電平轉(zhuǎn)換到高電平。SDA 線路的所有其他轉(zhuǎn)換必須在 SCL 信號的低電平期間完成。在接收到有效地址、子地址和數(shù)據(jù)字后,會發(fā)出確認(rèn)。I2C 接口通過寄存器地址實現(xiàn)自動定序,以便在一次給定的 I2C 傳輸中可以發(fā)送多個數(shù)據(jù)字。
圖 6-30 I2C 啟動/停止/確認(rèn)協(xié)議
圖 6-31 I2C 數(shù)據(jù)傳輸時序
圖 6-32 最長上升/下降時間的 I2C 數(shù)據(jù)傳輸時序不支持時鐘延展。如果器件在繁忙期間被尋址且無法處理接收到的數(shù)據(jù),則其不會確認(rèn)相關(guān)事務(wù)。如果控制器在器件未完全啟動時,啟動 I2C 事務(wù),將無法確認(rèn)該器件。
該器件支持四種不同的讀取/寫入操作:
圖 6-33 顯示了對定義寄存器地址進(jìn)行單次讀取的格式。首先,控制器發(fā)出一個啟動條件,后跟一個 7 位 I2C 地址。接下來,控制器寫入 0 以表示其會執(zhí)行寫操作。接收到接收器的確認(rèn)后,控制器會經(jīng)由總線發(fā)送 8 位寄存器地址。在第二次確認(rèn)之后,器件會將內(nèi)部 I2C 寄存器編號設(shè)置為定義的值。然后,控制器發(fā)出重復(fù)啟動條件,并發(fā)出 7 位 I2C 地址后跟 1 以表示其執(zhí)行讀取操作。在接收到第三次確認(rèn)時,控制器將總線釋放給器件。然后,器件在總線上返回寄存器的 8 位數(shù)據(jù)值??刂破鬟M(jìn)行否定確認(rèn) (nACK) 并發(fā)出停止條件。該操作結(jié)束寄存器讀取。
順序讀取操作是單個讀取協(xié)議的擴展,如圖 6-34 所示??刂破鞔_認(rèn)收到一個數(shù)據(jù)字節(jié),器件會自動遞增寄存器地址并返回下一個寄存器的數(shù)據(jù)。停止數(shù)據(jù)傳輸?shù)姆椒ㄊ强刂破鞑淮_認(rèn)最后一個數(shù)據(jù)字節(jié)并發(fā)送停止條件。
圖 6-35 顯示了對定義的寄存器地址進(jìn)行單次寫入的格式。首先,控制器發(fā)出一個啟動條件,后跟一個 7 位 I2C 地址。接下來,控制器寫入 0 以表示其要執(zhí)行寫操作。接收到接收器的確認(rèn)后,控制器會經(jīng)由總線發(fā)送 8 位寄存器地址。在第二次確認(rèn)之后,器件將 I2C 寄存器地址設(shè)置為定義的值,控制器對其寫入 8 位數(shù)據(jù)值。收到第三次確認(rèn)后,器件會將 I2C 寄存器地址自動遞增 1,而控制器會發(fā)出停止條件。該操作結(jié)束寄存器寫入。
順序?qū)懭氩僮魇菃蝹€寫入?yún)f(xié)議的擴展,如 圖 6-36 所示。如果控制器在器件發(fā)出 ACK 后沒有發(fā)送停止條件,則器件會自動將寄存器地址遞增 1,并且控制器可以寫入下一個寄存器。