I2C串行總線一般有兩根信號線,一根是雙向的資料線SDA,另一根是時鐘線SCL。所有接到I2C總線設備上的串行資料SDA都接到總線的SDA上,各設備的時鐘線SCL接到總線的SCL上。
為了避免總線信號的混亂,要求各設備連接到總線的輸出端時必須是漏極開路(OD)輸出或集電極開路(OC)輸出。設備上的串行資料線SDA介面電路應該是雙向的,輸出電路用于向總線上發送資料,輸入電路用于接收總線上的資料。而串行時鐘線也應是雙向的,作為控制總線資料傳送的主機,一方面要通過SCL輸出電路發送時鐘信號,另一方面還要檢測總線上的SCL電平,以決定什么時候發送下一個時鐘脈沖電平;作為接受主機命令的從機,要按總線上的SCL信號發出或接收SDA上的信號,也可以向SCL線發出低電平信號以延長總線時鐘信號周期。總線空閑時,因各設備都是開漏輸出,上拉電阻Rp使SDA和SCL線都保持高電平。任一設備輸出的低電平都將使相應的總線信號線變低,也就是說:各設備的SDA是“與”關系,SCL也是“與”關系。
總線對設備介面電路的制造工藝和電平都沒有特殊的要求(NMOS、CMOS都可以兼容)。在I2C總線上的資料傳送率可高達每秒十萬位,高速方式時在每秒四十萬位以上。另外,總線上允許連接的設備數以其電容量不超過400pF為限。
總線的運行(資料傳輸)由主機控制。所謂主機是指啟動資料的傳送(發出啟動信號)、發出時鐘信號以及傳送結束時發出停止信號的設備,通常主機都是微處理器。被主機尋訪的設備稱為從機。為了進行通訊,每個接到I2C總線的設備都有一個唯一的地址,以便于主機尋訪。主機和從機的資料傳送,可以由主機發送資料到從機,也可以由從機發到主機。凡是發送資料到總線的設備稱為發送器,從總線上接收資料的設備被稱為接受器。
I2C總線上允許連接多個微處理器以及各種外圍設備,如存盤器、LED及LCD驅動器、A/D及D/A轉換器等。為了保證資料可靠地傳送,任一時刻總線只能由某一臺主機控制,各微處理器應該在總線空閑時發送啟動資料,為了妥善解決多臺微處理器同時發送啟動資料的傳送(總線控制權)沖突,以及決定由哪一臺微處理器控制總線的問題,I2C總線允許連接不同傳送速率的設備。多臺設備之間時鐘信號的同步程序稱為同步化
uj5u.com熱心網友回復:
OOOOOOOOOOOOOOOOOOOOOOOOOOuj5u.com熱心網友回復:
好好......轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/131541.html
標籤:一般軟件使用
上一篇:windows 2008 r2 連接不可用 如何解決
下一篇:破解TPlink wifi 密碼
