I2C串行總線的組成據工作原理

1、常用的串行擴展總線有:I2C總線、單總線、SPI總線

2、I2C總線只有兩根雙向信號線。一種是數據線SDA,另一種是時鐘線SCL。

3、I2C總線通過上拉電阻接正電源。當總線空閒時,兩根線均爲高電平。連到總線上的


任一器件輸出的低電平,都將使總線的信號變低,即各器件的SDA及SCL都是線“與”關


系。

4、I2C總線進行數據傳送時,時鐘信號爲高電平期間,數據線上的數據必須保持穩定,


只有在時鐘線上的信號爲低電平期間,數據線上的高電平或低電平狀態才允許變化。

5、SCL線爲高電平期間,SDA線由高電平向低電平的變化表示起始信號;SCL線爲高電平


期間,SDA線由低電平向高電平的變化表示終止信號。

6、起始和終止信號都是由主機發出的,在起始信號產生後,總線就處於被佔用的狀態;


在終止信號產生後,總線就處於空閒狀態。

7、數據傳送格式

(1)字節傳送與應答

每一個字節必須保證是8位長度。數據傳送時,先傳送最高位(MSB),每一個被傳送的


字節後面都必須跟隨一位應答位(即一幀共有9位)。

非應答位是由主機發送的,應答位是由從機發送的。

(2)數據幀格式

I2C總線上傳送的數據信號是廣義的,既包括地址信號,又包括真正的數據信號。

在總線的一次數據傳送過程中,可以有以下幾種組合方式:

a、主機向從機發送數據,數據傳送方向在整個傳送過程中不變

A表示應答, A非表示非應答(高電平)。S表示起始信號,P表示終止信號。

b、主機在第一個字節後,立即從從機讀數據

c、在傳送過程中,當需要改變傳送方向時,起始信號和從機地址都被重複產生一次,但

兩次讀/寫方向位正好反相。


8、scl爲低電平是可以改變數值。爲高電平是不可。

發佈了45 篇原創文章 · 獲贊 6 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章