總共有五種工作狀態:
a:匯流排非忙狀態
該狀態時資料線(sda)和時鐘線(scl)都保持高電平。
b:啟動狀態
當時鐘線(scl)為高電平狀態時,資料線(sda)由高電平變為低電平的下降沿被認為是"啟動"訊號。
c:停止狀態
當時鐘線(scl)為高電平狀態時,資料線(sda)由低電平變為高電平的下降沿被認為是"停止"訊號。
d:資料有效狀態
在出現"啟動"訊號後,在時鐘線(scl)為高電平狀態時,資料線是穩定的,這時資料線的狀態就是要傳送的資料。資料線(sda)上資料的改變必須在時鐘線為低電平期間完成的,每位資料占有乙個時鐘脈衝。
e:應答訊號(ack),eeprom在接收或傳送乙個位元組的資料時,通常要發出或接收乙個應答訊號(ack)。
i^2c匯流排協議有明確的規定:採用7位的定址位元組(定址位元組是起始訊號後的第乙個位元組)。
d7~d1位組成從機的位址。d0位是資料傳送方向位,為「0」時表示主機向從機寫資料,為「1」時表示主機由從機讀資料。
從機的7位定址位有4位是固定位,3位是可程式設計位,這時僅能定址8個同樣的器件,即可以有8個同樣的器件接入到該i^2c匯流排系統中。
i2c通訊的詳細講解 I2C匯流排簡介
本文介紹了內部積體電路 aka i2c 序列通訊協議的基本特性和突出優點。元件之間的通訊 通訊協議 毫無疑問,電子系統的共同特徵是需要在兩個或三個或十個單獨的元件之間共享資訊。工程師已經開發出許多標準協議,可以幫助不同的晶元成功通訊 當您在微控制器或數字訊號處理器的功能列表中 通訊 下面對縮略語時,...
i2c匯流排時序
一心想踏入linux device driver的世界,想著i2c匯流排相對於usb等其他匯流排較為簡單,就以i2c作為切入點,希望可以逐步理解ldd的設計思想,並能理解其裝置模型的概念。在此對近期於i2c匯流排及驅動原始碼的理解做備忘,以免徒勞。平台友善之臂s70 tiny6410 cpusams...
I2C匯流排死鎖
原文 現象 最近發現訪問i2c裝置時,主裝置復位可能會引起i2c死鎖,表現為scl為高,sda一直為低,後發現是從裝置拉死i2c匯流排,從裝置斷電之後,sda變高,上電後通訊正常。後來通過拉低scl訊號線,sda就會自動變成高電平,i2c匯流排恢復。原因 在正常情況下,i2c匯流排協議能夠保證匯流排...