物理結(jié)構(gòu)上,I2C總線只有兩根雙向信號線,一根是數(shù)據(jù)線SDA,另一根是時鐘線SCL。
SCL(串行時鐘線):上升沿將數(shù)據(jù)輸入到每個EEPROM器件中;下降沿驅(qū)動EEPROM器件輸出數(shù)據(jù)。
SDA(串行數(shù)據(jù)線):雙向數(shù)據(jù)線,為OD門,與其它任意數(shù)量的OD與OC門成“線與”關(guān)系。
圖2 I2C總線內(nèi)部結(jié)構(gòu)
I2C總線通過上拉電阻接正電源。當(dāng)總線空閑時,兩根線均為高電平。連到總線上的任一器件輸出的低電平,都將使總線信號變低,即各器件的SDA及SCL都是線“與”關(guān)系。
I2C有三種速率,如下:
普通模式(100kHz);
快速模式(400kHz);
高速模式(3.4MHz)。
I2C總線數(shù)據(jù)有效性
I2C總線進行數(shù)據(jù)傳送時,時鐘信號SCL為高電平期間,數(shù)據(jù)線SDA上的數(shù)據(jù)必須保持穩(wěn)定,只有在時鐘線SCL上的信號為低電平期間,數(shù)據(jù)線SDA上的高電平或低電平狀態(tài)才允許變化,如圖3所示。