本應(yīng)用筆記描述了一個應(yīng)用示例,其中 SH7145F 的 I2C 模塊用于從/向兩線串行(I2C 總線)EEPROM 讀取/寫入數(shù)據(jù)。數(shù)據(jù)通信一般是一對一進(jìn)行的。另一方面,在 I2C 總線上,雙向通信是在單條數(shù)據(jù)線上進(jìn)行的。當(dāng)主設(shè)備指定該設(shè)備的唯一地址時,將確定要與之通信的設(shè)備,因此可以向任何多個設(shè)備發(fā)送和接收數(shù)據(jù)。
I2C 總線概述 I2C 總線的特點如下:
總線由兩條總線組成:串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL)。I2C 總線設(shè)備的擴展很容易。
設(shè)備之間始終存在主從關(guān)系,每個設(shè)備在系統(tǒng)中都有一個唯一的地址。將成為主設(shè)備的設(shè)備通過首先指定設(shè)備的唯一地址來與其通信并啟用數(shù)據(jù)通信,從而形成通信路徑。
任何設(shè)備都可以成為主設(shè)備(可以形成多主系統(tǒng))。因此,在 I2C 總線接口中定義了一種避免總線主控權(quán)爭用以防止數(shù)據(jù)丟失的系統(tǒng)。
數(shù)據(jù)傳輸速率在標(biāo)準(zhǔn)模式下最高可達(dá) 100 kbps,在高速模式下可達(dá) 400 kbps(在 I2C 總線規(guī)范 2.0 版中,定義了高達(dá) 3.4 Mbps 的速率)。
I2C 總線系統(tǒng)中的設(shè)備總數(shù)由系統(tǒng)總線負(fù)載電容的 400 pF 上限決定。
SMBus 和 ACCESS.bus 是 I2C 應(yīng)用的示例。
與串行接口 (SCI) 的差異 與串行通信接口 (SCI) 的差異總結(jié)如下。
如下圖1的表格所示,在SCI中使用了兩條數(shù)據(jù)線,發(fā)送數(shù)據(jù)線和接收數(shù)據(jù)線。數(shù)據(jù)通信一般是一對一進(jìn)行的。另一方面,在 I2C 總線上,雙向通信是在單條數(shù)據(jù)線上進(jìn)行的。當(dāng)主設(shè)備指定該設(shè)備的唯一地址時,將確定要與之通信的設(shè)備,因此可以向任何多個設(shè)備發(fā)送和接收數(shù)據(jù)。此外,由于在I2C總線中定義了總線主控爭用避免機制,因此可以為多主系統(tǒng)提供支持,其中任何設(shè)備都可以成為主設(shè)備。傳輸速率在標(biāo)準(zhǔn)模式下高達(dá) 100 kbps,在高速模式下高達(dá) 400 kbps。
與SCI的差異
I2C總線連接方式
圖 2 顯示了 I2C 總線接口連接方法。如圖所示,I2C總線由時鐘線SCL和數(shù)據(jù)線SDA組成,分別通過上拉電阻連接到總線電源VBB。器件 1 和器件 2 的 SCL 引腳/SDA 引腳分別線與連接到 SCL 線和 SDA 線。
當(dāng)設(shè)備 1 將 SCL 線驅(qū)動為低電平時,設(shè)備 2 通過監(jiān)視 SCL 線的狀態(tài)知道其他設(shè)備正在使用總線。由于是線與連接,即使設(shè)備 1 正在使用總線并驅(qū)動 SCL 線時,設(shè)備 2 也可以將 SCL 驅(qū)動為低電平以將設(shè)備 1 置于等待狀態(tài)。
總線接口連接方法(當(dāng)設(shè)備1先驅(qū)動SCL為低電平時)
編輯:hfy
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
2019瀏覽量
66084 -
I2C總線
+關(guān)注
關(guān)注
8文章
408瀏覽量
62200
發(fā)布評論請先 登錄
RA MCU使用Virtual EEPROM
STM32 FLASH模擬EEPROM,燒寫程序時設(shè)置為讀保護Level-2級別,還能正常讀寫這個模擬的EEPROM嗎?
淺談Web應(yīng)用程序的壓力測試
如何保護M24SR EEPROM讀/寫密碼?
Mini51DE數(shù)據(jù)閃光模擬EEPROM和寫/讀EEPROM
用串行引導(dǎo)程序對MC68HC05B6的RAM和EEPROM1

電池管理器件的讀/寫操作
基于WinCE應(yīng)用程序直接讀/寫/擦除flash設(shè)備的方法
串行端口實用調(diào)試工具應(yīng)用程序免費下載

醫(yī)療設(shè)備專用MR25H40-4Mb SPI串行接口MRAM的應(yīng)用
色環(huán)電阻讀值助手應(yīng)用程序免費下載

使用System IO Ports SerialPort進(jìn)行串行讀/寫

Arduino/Android藍(lán)牙串行監(jiān)視器應(yīng)用程序

評論