1.IIC接口原理
內(nèi)部集成電路總線(Inter Integrated Circuit BUS, IIC BUS),用于連接控制器及其外圍設備。是具備總線仲裁和高地速設備同步等功能的高性能多主機總線。直接用導線連接設備,通信時無需片選信號。
IIC總線有如下操作模式:主發(fā)送模式、主接受模式、從發(fā)送模式、從接受模式。
2.通用傳輸過程及格式
起始條件:當IIC接口處于從模式時,要想數(shù)據(jù)傳輸,必須檢測SDA線上的起始條件,起始條件由主器件產(chǎn)生。當SCL信號為高時,SDA產(chǎn)生一個由高變低的電平變化,即產(chǎn)生一個啟動信號。當IIC總線上產(chǎn)生了啟動信號后,這條總線就被發(fā)出起始信號的主器件占用了,變成"忙"狀態(tài)。
停止條件:在SCL信號為高時,SDA產(chǎn)生一個由低變高的電平變化處,產(chǎn)生了一個停止信號。停止條件也由主器件產(chǎn)生,作用是停止與某個從器件之間的數(shù)據(jù)傳輸。當IIC總線上產(chǎn)生了一個停止條件,那么在幾個時鐘周期之后總線就被釋放,變成"閑"狀態(tài)。
當主器件送出一個起始條件,它還會立即送出一個從地址,來通知將與它進行數(shù)據(jù)通信的從器件。1個字節(jié)的地址包括7位的地址信息和一位的傳輸方向的指示位,如果第7位為0,表示馬上要進行寫操作;如果為1,表示馬上要進行讀操作。
數(shù)據(jù)傳輸格式:SDA線上傳輸?shù)拿總字節(jié)長度都是8位,每次傳輸中字節(jié)的數(shù)量是沒有限制的,在起始條件后面的第一個字節(jié)是地址域,之后每個傳輸?shù)淖止?jié)后面都有一個應答(ACK)位(即一幀共有9位)。傳輸中串行數(shù)據(jù)的MSB(字節(jié)的高位首先發(fā)送)。
應答信號:為了完成1個字節(jié)的傳輸操作,接收器應該在接受完1個字節(jié)之后發(fā)送ACK位到發(fā)送器,告訴發(fā)送器收到這個字節(jié)。ACK脈沖信號在SCL線上第9個時鐘處發(fā)出(前面8個時鐘完成1個字節(jié)的數(shù)據(jù)傳輸,SCL上的時鐘都是由主器件產(chǎn)生的)。當發(fā)送器要接受ACK脈沖時,應該釋放SDA信號線,即將SDA置高。接收器在接收完前面8位數(shù)據(jù)后,將SDA拉低。發(fā)送器探測到SDA為低,就認為接收器成功接收了前面的8位數(shù)據(jù)。
3.數(shù)據(jù)傳輸過程
開始:主設備產(chǎn)生啟動信號,標明數(shù)據(jù)傳輸開始。
地址:主設備發(fā)送地址信息,包含7位的從設備地址和1位的數(shù)據(jù)方向指示位(讀或?qū)懳,表示?shù)據(jù)流的方向)。
數(shù)據(jù):根據(jù)指示位,數(shù)據(jù)在主設備和從設備之間進行傳輸。數(shù)據(jù)一般以8位傳輸,MSB先傳;具體能傳輸多少量的數(shù)據(jù)并沒有限制。接收器產(chǎn)生1位的ACK(應答信號)表明收到了每個字節(jié)。傳輸過程可以被中止和重新開始。
停止:主設備產(chǎn)生停止信號,結(jié)束數(shù)據(jù)傳輸。
4.總線競爭的仲裁
IIC總線上可以掛載多個器件,有時會發(fā)生兩個或多個主器件同時想占用總線的情況。IIC總線具有多主控能力,可對發(fā)生在SDA線上的總線競爭進行仲裁。
仲裁原則:當多個主器件同時想占用總線時,如果某個主器件發(fā)送高電平,而另一個主器件發(fā)送低電平,則發(fā)送電平與此時SDA總線電平不符的那個器件將自動關閉其輸出級。
總線競爭的仲裁在兩個層次上進行:首先是地址位的比較,如果主器件尋址同一個從器件,則進入數(shù)據(jù)位比較,從而確保競爭仲裁的可靠性。由于是利用IIC總線上的信息進行仲裁,不會造成信息的丟失。
客服QQ1:63355785 客服QQ2:61303373 客服QQ3:67399965 客服QQ4:2656068273 產(chǎn)品分類地圖
版權所有:保定市禾邦電子有限公司 保定市禾邦電子有限公司營業(yè)執(zhí)照 備案號:冀ICP備12019441號-1
關鍵字:保定電子元器件 保定電子元件 電子元器件 電子元件