定義術語
1、數據有效性
在 SCL 高電平期間,SDA 必須穩定,所以一般情況下,SCL 高電平寬度小,SDA 高電平寬度大,用示波器看也是這樣的。
2、起始條件和停止條件
起始條件:SCL 高電平時,SDA 由高變低。
停止條件:SCL 高電平時,SDA 由低變高。
一般每傳輸一個字節(8 bit),就會重新開始。SDA 在 SCL 是低電平期間變換數據,不可以在 SCL 高電平期間變換數據,否則會認為是起始和停止條件。
傳輸長度必須是一個字節(8 bit)
每次傳輸的字節不受限制
數據必須以 MSB 開頭進行傳輸,也就是先傳輸最高位
從機可以將時鐘線 SCL 保持在低位,迫使主機進入等待狀態。
每次傳輸完一個字節以后,從設備要進行一個回應,回應 ACK 或者 NACK。
ACK :在傳輸 8 bit 以后,在第九個 bit ,SCL 高電平,如果 SDA 是低電平,說明回應了 ACK。
NACK:在傳輸 8 bit 以后,在第九個 bit ,SCL 高電平,如果 SDA 是高電平,說明回應了 NACK。
4、write data
5、read data
6、復合格式
7、I2C Transfer Regulation
以 START 條件開始
以 STOP 條件結束
傳輸的第一個字節為 7bit 從機地址 + 1bit 讀寫位
每個總線上的設備都會比較 STRAT 信號后面的 7bit 地址與自己的地址是否匹配
每個 byte(8 bits) 后面都會有 ACK 或者 NACK
在 START 信號或者 repeated START 信號后,從機必須重置自己的總線邏輯
一個 START 后面緊跟著一個 STOP 信號,是非法格式
主機 master 可以不產生 STOP 信號,而是直接產生一個 repeated START信號+另外一個設備地址,直接開始訪問另外一個設備
8、10-bit addressing
解析如下:
A9-A0 表示 10bits 地址
-
I2C
+關注
關注
28文章
1484瀏覽量
123627 -
SCL
+關注
關注
1文章
239瀏覽量
17057 -
系統
+關注
關注
1文章
1015瀏覽量
21332
發布評論請先 登錄
相關推薦
評論