首先IIC英文全稱為 Inter-Integrated CircuitBUS,又叫集成電路總線,該總線由 NXP(原 PHILIPS)公司設計,多用于主控制器和從器件間的主從通信,在小數據量場合使用,傳輸距離短(板級通信),任意時刻只能有一個主機等特性。
IIC總線簡介
IIC協議是一種總線協議,是串行的,是同步的,是半雙工的。它通信速率最高就只有幾百 KB/s 。
有許多設備掛載在總線上,每個設備之間用唯一地址來區別。
IIC總線通信時序
只有當 SCL 為高電平時,SDA 的數據才有效;
所以起始條件為:當 SCL 為高電平時,SDA 由高到低(下降沿);
終止條件為:當 SCL 為高地平時,SDA 由低到高(上升沿)。
每當主機向從機發送完一個字節的數據,主機總是需要等待從機給出一個應答信號,以確認從機是否成功接收到了數據,從機應答主機所需要的時鐘仍是主機提供的,應答出現在每一次主機完成 8 個數據位傳輸后緊跟著的時鐘周期,低電平 0 表示應答,1 表示非應答。
通信流程
IIC通信始終是由主機發起的,一個標準通信通常由四部分組成:開始信號、從機地址傳輸、數據傳輸、停止信號。
IIC 總線采用了的是 7 位尋址約定,規定了開始信號后的第一個字節為尋址字節,用來尋址被控器件,并規定第一個字節的第 8 位表示數據的傳送方向。
S 為起始信號;從機地址為 7 位;T 為傳輸方向(1 為讀,0 為寫);A 為應答位;F 為終止信號。
主控器發送開始信號后,立即發送尋址字節;
這時,總線上的所有器件都將尋址字節中的 7 位地址與自己器件地址比較,如果兩者相同,則該器件認為被主機尋址,然后發送應答信號,根據讀/寫位確定自身是作為發送器還是接收器;
接著就開始了數據傳輸,結束時由主機發出終止信號;
期間如果需要改變數據傳輸方向,則需要主機重新發出開始信號、從機地址+讀寫位。
編輯:hfy
-
集成電路
+關注
關注
5388文章
11547瀏覽量
361835 -
數據傳輸
+關注
關注
9文章
1891瀏覽量
64606 -
IIC總線
+關注
關注
1文章
66瀏覽量
20304 -
IIC通信
+關注
關注
0文章
19瀏覽量
3017
發布評論請先 登錄
相關推薦
評論