I2C總線將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對它的相關情況以及信息有所認識和了解,詳細內(nèi)容如下。
I2C總線是由Philips公司開發(fā)的一種簡單、雙向二線制同步串行總線。它只需要兩根線即可在連接于總線上的器件之間傳送信息。
主器件用于啟動總線傳送數(shù)據(jù),并產(chǎn)生時鐘以開放傳送的器件,此時任何被尋址的器件均被認為是從器件.在總線上主和從、發(fā)和收的關系不是恒定的,而取決于此時數(shù)據(jù)傳送方向。如果主機要發(fā)送數(shù)據(jù)給從器件,則主機首先尋址從器件,然后主動發(fā)送數(shù)據(jù)至從器件,最后由主機終止數(shù)據(jù)傳送;如果主機要接收從器件的數(shù)據(jù),首先由主器件尋址從器件.然后主機接收從器件發(fā)送的數(shù)據(jù),最后由主機終止接收過程。在這種情況下.主機負責產(chǎn)生定時時鐘和終止數(shù)據(jù)傳送。
I2C總線在CPU與被控IC之間、IC與IC之間進行雙向傳送,最高傳送速率100kbps。各種被控制電路均并聯(lián)在這條總線上,但就像電話機一樣只有撥通各自的號碼才能工作,所以每個電路和模塊都有唯一的地址,在信息的傳輸過程中,I2C總線上并接的每一模塊電路既是主控器(或被控器),又是發(fā)送器(或接收器),這取決于它所要完成的功能。CPU發(fā)出的控制信號分為地址碼和控制量兩部分,地址碼用來選址,即接通需要控制的電路,確定控制的種類;控制量決定該調(diào)整的類別(如對比度、亮度等)及需要調(diào)整的量。這樣,各控制電路雖然掛在同一條總線上,卻彼此獨立,互不相關。
I2C總線在傳送數(shù)據(jù)過程中共有三種類型信號, 它們分別是:開始信號、結(jié)束信號和應答信號。
開始信號:SCL為高電平時,SDA由高電平向低電平跳變,開始傳送數(shù)據(jù)。
結(jié)束信號:SCL為低電平時,SDA由低電平向高電平跳變,結(jié)束傳送數(shù)據(jù)。
應答信號:接收數(shù)據(jù)的IC在接收到8bit數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的IC發(fā)出特定的低電平脈沖,表示已收到數(shù)據(jù)。CPU向受控單元發(fā)出一個信號后,等待受控單元發(fā)出一個應答信號,CPU接收到應答信號后,根據(jù)實際情況作出是否繼續(xù)傳遞信號的判斷。若未收到應答信號,由判斷為受控單元出現(xiàn)故障。
目前有很多半導體集成電路上都集成了I2C接口。帶有I2C接口的單片機有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外圍器件如存儲器、監(jiān)控芯片等也提供I2C接口。
I2C總線工作原理如下:
SDA(串行數(shù)據(jù)線)和SCL(串行時鐘線)都是雙向I/O線,接口電路為開漏輸出。需通過上拉電阻接電源VCC。當總線空閑時,兩根線都是高電平,連接總線的外同器件都是CMOS器件,輸出級也是開漏電路。在總線上消耗的電流很小,因此,總線上擴展的器件數(shù)量主要由電容負載來決定,因為每個器件的總線接口都有一定的等效電容。而線路中電容會影響總線傳輸速度。當電容過大時,有可能造成傳輸錯誤。所以,其負載能力為400pF,因此可以估算出總線允許長度和所接器件數(shù)量。
主器件用于啟動總線傳送數(shù)據(jù),并產(chǎn)生時鐘以開放傳送的器件,此時任何被尋址的器件均被認為是從器件。在總線上主和從、發(fā)和收的關系不是恒定的,而取決于此時數(shù)據(jù)傳送方向。如果主機要發(fā)送數(shù)據(jù)給從器件,則主機首先尋址從器件,然后主動發(fā)送數(shù)據(jù)至從器件,最后由主機終止數(shù)據(jù)傳送;如果主機要接收從器件的數(shù)據(jù),首先由主器件尋址從器件。然后主機接收從器件發(fā)送的數(shù)據(jù),最后由主機終止接收過程。在這種情況下。主機負責產(chǎn)生定時時鐘和終止數(shù)據(jù)傳送。
上述所有信息便是小編這次為大家推薦的有關I2C總線的內(nèi)容,希望大家能夠喜歡,想了解更多有關它的信息或者其它內(nèi)容,請關注我們網(wǎng)站哦。