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