I2C和SPI异同及使用注意
生活随笔
收集整理的這篇文章主要介紹了
I2C和SPI异同及使用注意
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 iic總線不是全雙工,2根線SCL SDA。spi總線實現全雙工,4根線SCK CS MOSI MISO
2 iic總線是多主機總線,通過SDA上的地址信息來鎖定從設備。spi總線只有一個主設備,主設備通過CS片選來確定從設備
3 iic總線傳輸速度在100kbps-4Mbps。spi總線傳輸速度更快,可以達到30MHZ以上。
4 iic總線空閑狀態下SDA SCL都是高電平。spi總線空閑狀態MOSI MISO也都是 SCK是有CPOL決定的
5 iic總線scl高電平時sda下降沿標志傳輸開始,上升沿標志傳輸結束。spi總線cs拉低標志傳輸開始,cs拉高標志傳輸結束
6 iic總線是SCL高電平采樣。spi總線因為是全雙工,因此是沿采樣,具體要根據CPHA決定。一般情況下master device是SCK的上升沿發送,下降沿采集
7 iic總線和spi總線數據傳輸都是MSB在前,LSB在后(串口是LSB在前)
8 iic總線和spi總線時鐘都是由主設備產生,并且只在數據傳輸時發出時鐘
9 iic總線讀寫時序比較固定統一,設備驅動編寫方便。spi總線不同從設備讀寫時序差別比較大,因此必須根據具體的設備datasheet來實現讀寫,相對復雜一些。
SPI總線有4根線,分別是SCK,SDO,SDI,SS,可以掛多個從設備,但是在掛多個從設備時,主設備端還需要做一個n選一的譯碼器,用于選擇將要訪問的從設備,因此,主設備上的管腳需求比較多;SPI總線在只有一個從設備時,只要用到SCK,SDO,SDI這三根線,此時選擇SPI比I2C總線占優。 I2C總線只有兩根線,SCL,SDA.,也可以掛多個從設備,對從設備的選擇直接依靠協議完成,無需增加物理連線。一般情況下,當一塊電路板上有多個從設備時,往往選用I2C而非SPI,因為SPI增加了額外額硬件開銷以及電路板走線。 I2c和SPI總線一般是讀取一些PROM等從設備用。 串行通信接口SCI,主要應用在兩個智能設備之間的互相通訊。有別于SPI和I2C總線的主從模式,SCI可以是主-主模式總結
以上是生活随笔為你收集整理的I2C和SPI异同及使用注意的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: socket-tcp 、udp、rawI
- 下一篇: 十大基础实用算法