匯流排 IIC匯流排

2021-10-08 12:05:31 字數 1337 閱讀 1523

i2c匯流排是飛利浦(phlips)公司推出的一種半雙工序列匯流排,用於連線微控制器及其外圍裝置, i2c序列匯流排有兩根雙向訊號線。一根是資料線sda,另一根是時鐘線scl。 它僅通過兩根訊號線就可以完成對所有掛載在i2c匯流排上的從器件進行操作。這樣的好處是可以大大的節省我們微處理器的io口資源。

iic匯流排可以掛載多個主裝置和多個從裝置,同一時刻只能有乙個主裝置

兩根訊號線都接上拉電阻,匯流排在空閒狀態下為高電平

在資料傳輸過程中,時鐘訊號為高電平期間,資料線上的資料必須保持穩定,只有在時鐘線為低電平期間,資料線上的狀態才允許變化

讀寫時序

如果從機需要延遲下乙個資料位元組開始傳送的時間,可以通過把scl電平拉低並保持來強制主機進入等待狀態

d1-d7位為位址位,理論上iic匯流排可以最多掛載2^7 -1=127個從裝置

i2c匯流排上的仲裁分兩部分:scl線的同步和sda線的仲裁。

1 scl線的同步(時鐘同步)

scl同步是由於匯流排具有線「與」的邏輯功能,即只要有乙個節點傳送低電平時,匯流排上就表現為低電平。當所有的節點都傳送高電平時,匯流排才能表現為高電平。正是由於線「與」邏輯功能的原理,當多個節點同時傳送時鐘訊號時,在匯流排上表現的是統一的時鐘訊號。這就是scl的同步原理

2 sda仲裁

sda線的仲裁也是建立在匯流排具有線「與」邏輯功能的原理上的。節點在傳送1位資料後,比較匯流排上所呈現的資料與自己傳送的是否一致。是,繼續傳送;否則,退出競爭。sda線的仲裁可以保證i2c匯流排系統在多個主節點同時企圖控制匯流排時通訊正常進行並且資料不丟失。匯流排系統通過仲裁只允許乙個主節點可以繼續佔據匯流排

SPI匯流排與IIC匯流排

spi的4種標準時序圖 下面主要總結一下2種匯流排的異同點 1 iic匯流排不是全雙工,2根線scl sda。spi匯流排實現全雙工,4根線sck cs mosi miso 2 iic匯流排是多主機匯流排,通過sda上的位址資訊來鎖定從裝置。spi匯流排只有乙個主裝置,主裝置通過cs片選來確定從裝置...

IIC匯流排協議

i2c匯流排進行資料傳送時,時鐘訊號為高電平期間,資料線上的資料必須保持穩定,只有在時鐘線上的訊號為低電平期間,資料線上的高電平或低電平狀態才允許變化。起始和終止訊號 scl線為高電平期間,sda線由高電平向低電平的變化表示起始訊號 scl線為高電平期間,sda線由低電平向高電平的變化表示終止訊號。...

IIC匯流排分析

1.2440晶元內含義iic控制器,其中有iicscl,iicsda線與外設iic裝置相連,如at24c02 at24c08等。iic規範中要求具有主從結構體,從裝置不能發起資料傳輸。主裝置先傳送含有裝置位址的命令,iic匯流排上 的各個iic裝置發現正好對應為自己的位址,則接受處理這個命令。2.i...