下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1612 I2C總線時序與數(shù)據(jù)傳輸當(dāng)I2C總線處在空閑狀態(tài)時,因為各設(shè)備都是開漏輸出,所以在上拉電阻的作用下,SDA和SCL均為高電平。I2C總線上啟動一次數(shù)據(jù)傳輸過程的標(biāo)志為主機發(fā)送的起始信號,起始信號的作用是通知從機準(zhǔn)備接收數(shù)據(jù)。當(dāng)數(shù)據(jù)傳輸結(jié)束時,主機需要發(fā)送停止信號,通知從機停止接收。因此,一次數(shù)據(jù)傳輸?shù)恼麄€過程由從起始信號開始,到停止信號結(jié)束。同時這兩個信號也是啟動和關(guān)閉I“C設(shè)備的信號。圖162是I2C總線時序示意圖,圖中最左邊和最右邊給出了起始信號和停止信號的時序條件。起始信號時序:當(dāng)SCL為高電平時,SDA由高電平跳變到低電平。停止信號時序:當(dāng)SCL為高電平時,SDA由低電平跳變
2、到高電平。I2C總線規(guī)定,當(dāng)SCL為高電平時,SDA的電平必須保持穩(wěn)定不變的狀態(tài),只有當(dāng)SCL處在低電平時,才可以改變SDA的電平值,但起始信號和停止信號是特例。因此,當(dāng)SCL處于高電平時,SDA的任何跳變都會被識別成為一個起始信號或停止信號。因此在I2C總線上的數(shù)據(jù)傳輸過程中,數(shù)據(jù)信號線5DA的變化只能發(fā)生在SCL為低電平的期間內(nèi)。從圖162中間部分的時序中可以清楚地看到這一點。在I2C總線的數(shù)據(jù)傳輸過程中,發(fā)送到SDA信號線上的數(shù)據(jù)以字節(jié)為單位,每個字節(jié)必須為8位,而且是高位在前,低位在后,每次發(fā)送數(shù)據(jù)的字節(jié)數(shù)量不受限制。但在這個數(shù)據(jù)傳輸過程中需要著重強調(diào)的是,當(dāng)發(fā)送方發(fā)送完每一字節(jié)后,都
3、必須等待接收方返回一個應(yīng)答響應(yīng)信號ACK,如圖163所示。響應(yīng)信號ACK寬度為1位,緊跟在8個數(shù)據(jù)位后面,所以發(fā)送1字節(jié)的數(shù)據(jù)需要9個SCL時鐘脈沖。響應(yīng)時鐘脈沖也是由主機產(chǎn)生的,主機在響應(yīng)時鐘脈沖期間釋放SDA線,使其處在高電平(見圖163上面的信號)。而在響應(yīng)時鐘脈沖期間,接收方需要將SDA拉低,使SDA在響應(yīng)時鐘脈沖高電平期間保持穩(wěn)定的低電平(見圖163中間的信號)。實際上,圖163中上面和中間的兩個信號應(yīng)該“線與”后呈現(xiàn)在SDA上的。由于在這個過程中存在比較復(fù)雜的轉(zhuǎn)換過程,所以將它們分開便于在下面做更仔細的分析。主機控制驅(qū)動SCL,發(fā)送9個時鐘脈沖,前8個為傳輸數(shù)據(jù)所用,第9個為響應(yīng)時
4、鐘脈沖(見圖163下面的信號)。在前8個時鐘脈沖期間,發(fā)送方作為發(fā)送器,控制SI)A輸出8位數(shù)據(jù)到接收方。 1在前8個時鐘脈沖期間,接收方作為接收器,處在輸入的狀態(tài)下,檢測接收SDA上的6位數(shù)據(jù)。在第9個時鐘脈沖期間,發(fā)送方釋放SDA,此時發(fā)送方由先前的發(fā)送器轉(zhuǎn)換成為接 收器。在第9個時鐘脈沖期間,接收方則從先前的接收器轉(zhuǎn)換成為發(fā)送竭控制SDA,輸出 ACK信號。在第9個時鐘脈沖期間,發(fā)送方作為接收器,處在輸入的狀態(tài)下,檢測接收SDA上酌ACK信號。最后,發(fā)送和接收雙方都依據(jù)應(yīng)答信號的狀態(tài)(ACKnACK),各自確定下一步的角色轉(zhuǎn)換,以及如何動作。在上面的分析過程中,使用了發(fā)送方和接收方來表示
5、通信的雙方,而沒有使用主機和從機的概念,這是因為數(shù)據(jù)的發(fā)送可以是主機,也可以是從機。因此,不管是主機作為接收方,還是從機為接收方,在響應(yīng)時鐘脈沖期間都必須回送應(yīng)答信號。應(yīng)答信號的狀態(tài)有2個:低電平用ACK表示,代表有應(yīng)答;高電平用nACK表示,代表天應(yīng)答。應(yīng)答信號在I2C總線的數(shù)據(jù)傳輸過程中起著非常重要的作用,它將決定總線及連接在總線上設(shè)備下一步的狀態(tài)和動作。一旦在應(yīng)答信號上發(fā)生錯誤,例如接收方不按規(guī)定返回或返回不正確的應(yīng)答信號,以及發(fā)送方對應(yīng)答信號的誤判,都將造成總線通信的失敗。1613 I2C總線尋址與通信過程前面已經(jīng)介紹過I2C總線是支持多機通信的數(shù)據(jù)總線,每一個連接在總線上的從機設(shè)備或
6、器件都有一個唯一獨立的地址,以便于主機尋訪。I2C總線上的數(shù)據(jù)通信過程是由主機發(fā)起的,以主機控制總線,發(fā)出起始信號作為開始。在發(fā)送起始信號后,主機將發(fā)送一個用于選擇從機設(shè)備的地址字節(jié),以尋址總線中的某一個從機設(shè)備,通知其參與同主機之間的數(shù)據(jù)通信。地址字節(jié)的格式如下:地址字節(jié)的高7位數(shù)據(jù)是主機呼叫的從機地址,第8位用于標(biāo)示緊接下來的數(shù)據(jù)傳輸方向:“0”表示要從機準(zhǔn)備接收主機下發(fā)數(shù)據(jù)(主機發(fā)送從機接收);而“l(fā),則表示主機向從機讀取數(shù)據(jù)(主機接收從機發(fā)送)。當(dāng)主機發(fā)出地址字節(jié)后,總線上所有的從機都將起始信號后的7位地址與自己的地址進行比較:如果相同,則該從機確認(rèn)自己被主機尋址;而那些本機地址與主機
7、下發(fā)的尋呼地址不匹配的從機,則繼續(xù)保持在檢測起始信號的狀態(tài),等待下一個起始信號的到來。被主機尋址的從機,必須在第9個SCK時鐘脈沖期間拉低SDA,給出ACK回應(yīng),以通知主機尋址成功。然后,從機將根據(jù)地址字節(jié)中第8他的指示,將自己轉(zhuǎn)換成相應(yīng)的角色(0從機接收器;1從機發(fā)送器),參與接下來的數(shù)據(jù)傳輸過程。圖164所示為在I2C總線上一次數(shù)據(jù)傳輸?shù)氖纠鼘崿F(xiàn)了簡單的操作:主機向從機讀取1字節(jié)。圖中描述了整個數(shù)據(jù)傳輸?shù)娜窟^程,給出了I2C總線上的時序變化,SDA上的數(shù)據(jù)情況、以及發(fā)送、接收雙方相互轉(zhuǎn)換與控制SDA的過程。主機控制SDA。在I2C總線上產(chǎn)生起始信號,同時控制SCL,發(fā)送時鐘脈沖。在整
8、個傳輸過程中,SCL都是由主機控制的。主機發(fā)送器發(fā)送地址字節(jié)。地址字節(jié)的第8位為“1”。表示準(zhǔn)備向從機讀取數(shù)據(jù)。 主機在字節(jié)發(fā)送完成后,放棄對5DA的控制,進入接收檢測ACK的狀態(tài)。所有從機在起始信號后為從機接收器,接收地址字節(jié),與自己地址比對。被尋址的從機在第9個SCL時鐘脈沖期間控制SDA將其拉低,給出ACK應(yīng)答。 主機檢測到從機的ACK應(yīng)答后、轉(zhuǎn)換成主機接收器。準(zhǔn)備接收從機發(fā)出的數(shù)據(jù)。 從機則根據(jù)第8位“1”的設(shè)定,在第2個字節(jié)的8個時鐘脈沖期間作為從機發(fā)送器控制SDA。發(fā)送1字節(jié)的數(shù)據(jù)。發(fā)送完成后放棄對SDA的控制,進入接收檢測ACK的狀態(tài)。在第2個字節(jié)的8個傳輸時鐘脈沖期間,主機接收
9、器接收從機發(fā)出的數(shù)據(jù)。當(dāng)接收到d0位后,主機控制SDA,將其拉低,給出ACK應(yīng)答。從機接收檢測主機的ACK應(yīng)答c如果是ACK,則難備發(fā)送1個新的字節(jié)數(shù)據(jù);如果是nACK,則轉(zhuǎn)入檢測下一個起始信號的狀態(tài)。在這個示例中,主機收到l字節(jié)數(shù)據(jù)后,轉(zhuǎn)成主機發(fā)送器控制SDA,在發(fā)出ACK應(yīng)答信號后,馬上發(fā)出停止信號,通知本次數(shù)據(jù)傳輸結(jié)束。從機檢測到停止信號,轉(zhuǎn)入檢測下一個起始信號的狀態(tài)。以上介紹了I2C總線基本的特性、操作時序和通信規(guī)范,這些概念對了解、掌握、應(yīng)用I2C總線尤為重要。這是因為I2C總線在硬件連接上非常簡單,只要將所有器件和設(shè)備的SDA、SCL并在一起就可以了,但復(fù)雜的通信規(guī)范的實現(xiàn),往往需要軟件的控制。盡管AVR的TWI接口在硬件層面上實現(xiàn)了更多的I2C底層協(xié)議和數(shù)據(jù)傳送與接收的功能,但對于什么時間發(fā)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于新學(xué)期學(xué)習(xí)計劃(匯編15篇)
- 胸痹心痛病查房
- 2024年房產(chǎn)贈與雙方協(xié)議
- 2024年新修訂版:地區(qū)物流配送合同
- 2024年房屋租賃合同條款與條件
- 社區(qū)糖尿病診斷與干預(yù)
- 物業(yè)服務(wù)心得體會
- 【初中道法】共建美好集體課件-2024-2025學(xué)年統(tǒng)(2024)編版道德與法治七年級上冊
- 廉潔教育月心得體會8篇
- 農(nóng)作物改良答辯報告模板
- GB/T 3903.2-1994鞋類通用檢驗方法耐磨試驗方法
- GB/T 10801.2-2018絕熱用擠塑聚苯乙烯泡沫塑料(XPS)
- 12J5-1 平屋面建筑標(biāo)準(zhǔn)設(shè)計圖
- 中印邊境爭端
- 《墨梅》課件(省一等獎)
- 招聘與錄用期末考試卷及答案AB卷2套
- 三美術(shù)上冊第16課新穎的電腦課件1新人教版
- 實驗室基本技能培訓(xùn)課件
- 如何申報科研項目 課件
- 李子栽培管理技術(shù)-課件
- 物理聽課記錄物理聽課記錄及評析范文(3篇)
評論
0/150
提交評論