I2C 和 SPI 端點(diǎn)設(shè)備能否僅通過一根電線供電和控制?
可以提供電源和數(shù)據(jù)來運(yùn)行I2C和SPI端點(diǎn),如濕度或溫度傳感器,采用單線連接,接地采用ADI公司的1-Wire技術(shù)科技。當(dāng)使用IO受限的系統(tǒng)時(shí),該技術(shù)提供了一個(gè)強(qiáng)大的解決方案,因?yàn)橹鳈C(jī)上可能只有一個(gè)或幾個(gè)引腳可用。DS28E18是橋接器件的一個(gè)很好的例子,它利用1-Wire來解決一系列常見的系統(tǒng)挑戰(zhàn),如布線限制、通信距離和協(xié)議轉(zhuǎn)換。
這種單線接口技術(shù)是ADI公司獨(dú)有的,自1980年代以來一直存在。電源和數(shù)據(jù)通過單個(gè)專用連接提供,支持廣泛的應(yīng)用,如本地或遠(yuǎn)程環(huán)境傳感、醫(yī)療傳感器或附件識(shí)別。適用于這些應(yīng)用的1-Wire解決方案具有操作SPI或I的優(yōu)勢(shì)2C器件采用單觸點(diǎn)接口,無需外部電源,具有1-Wire和I的靈活性2C/SPI 主控操作模式。
為了操作該接口,總共有兩個(gè)觸點(diǎn),一個(gè)是1-Wire單連接,另一個(gè)是接地連接,因此我們可以在過載模式下以11.7 kb/s和62.5 kb/s兩種不同的速度進(jìn)行通信。圖1給出了非常簡(jiǎn)單的系統(tǒng)級(jí)配置,以及DS28E18如何融入系統(tǒng)。微控制器主機(jī)(μC)通過1-Wire接口連接到DS28E18橋接器,僅使用1-Wire IO和接地兩個(gè)連接。
圖1.系統(tǒng)級(jí)配置
1-Wire轉(zhuǎn)I2帶序列器和功率收集功能的 C/SPI
DS28E18通信橋器的獨(dú)特特性之一是,它可以收集高達(dá)10mA的電流,為外部連接的I供電。2C/SPI 端點(diǎn)。該設(shè)備還能夠驅(qū)動(dòng) I2C 和 SPI 端點(diǎn)分別高達(dá) 1MHz 和 2.3MHz。該器件采用小型 2x3mm TDFN 封裝,工作電壓為 3.3V (±10%),工作在 -40°C 至 +85°C 的環(huán)境條件下。
除了1-Wire接口和功能外,DS28E18還具有三個(gè)主要模塊,對(duì)于與I接口至關(guān)重要。2C/SPI 端點(diǎn);命令序列器,用作1-Wire命令和I之間的橋梁2C/SPI 命令、一個(gè)帶有數(shù)據(jù)以最終操作器件的 SRAM 模塊,以及一個(gè) I2C/SPI/GPIO 接口控制器。這一切都顯示在下面的圖 2 中。
圖2.方框圖
命令序列器
命令序列器處理緩沖區(qū)數(shù)據(jù)并將其存儲(chǔ)在SRAM中的指定地址(一次128字節(jié)),并返回CRC16供主機(jī)處理器驗(yàn)證數(shù)據(jù)傳輸。時(shí)序控制器通過將最常用的命令存儲(chǔ)在SRAM中,最大限度地減少了主機(jī)的通信開銷。DS28E18在SRAM中提供512字節(jié)緩沖器,可加載多個(gè)I信號(hào)2C 或 SPI 命令。加載后,主控制器發(fā)送命令以執(zhí)行序列、提供電源并從連接的 I 收集數(shù)據(jù)2C 或 SPI 外設(shè)。隨后的1-Wire命令讀取收集的傳感器數(shù)據(jù)。
有三種類型的命令可用于操作此設(shè)備,它們位于圖 3 的藍(lán)色突出顯示元素中,如下所示。它們是“1-Wire ROM功能命令”、“DS28E18器件功能命令”和“DS28E18時(shí)序控制器命令”。
圖3.命令駐留位置的突出顯示框圖
主機(jī)啟動(dòng)通信,使用28-Wire ROM級(jí)功能命令識(shí)別和選擇DS18E1橋接器件。選擇后,設(shè)備功能命令用于與音序器交互。圖4列出了DS1E28可用的18-Wire ROM和器件功能命令。有關(guān)詳細(xì)信息,請(qǐng)參考DS28E18技術(shù)文檔。
DS28E18具有144字節(jié)命令緩沖器,利用16字節(jié)進(jìn)行器件功能命令操作,利用128字節(jié)將帶有順序命令的編成數(shù)據(jù)包傳輸?shù)?12字節(jié)SRAM時(shí)序器。可以調(diào)用安裝在SRAM序列器中的形成數(shù)據(jù)包來寫入和/或讀取I2C/SPI 數(shù)據(jù)到連接的從站。序列的最大長(zhǎng)度為 512 字節(jié)。序列完成后,I2C/SPI 從機(jī)響應(yīng)使用讀取序列器命令恢復(fù)。
返回的結(jié)果字節(jié)指示成功或遇到任何錯(cuò)誤,例如收到 NACK。如果結(jié)果字節(jié)指示錯(cuò)誤,則返回兩個(gè)附加字節(jié),指示錯(cuò)誤在序列中的位置。
時(shí)序控制器的實(shí)用程序命令通過SENS_VDD引腳為端點(diǎn)設(shè)備提供各種功能,例如延遲和電源門控。延遲可以按順序使用,以便為 I 留出額外的時(shí)間2C/SPI 端點(diǎn)設(shè)備,用于執(zhí)行轉(zhuǎn)換或在端點(diǎn)通電后允許建立。延遲范圍為 1 毫秒至 32 秒。提供給端點(diǎn)的功率從1-Wire接口收集,因此主機(jī)必須在整個(gè)序列中啟用強(qiáng)上拉。DS28E18可提供高達(dá)10mA的電流。
圖 4 顯示了不同命令及其在命令層次結(jié)構(gòu)中的級(jí)別列表。
圖4.命令層次結(jié)構(gòu)
接口控制
DS28E18 的 GPIO,I2C 和 SPI 接口在四個(gè)引腳上多路復(fù)用,如圖 5 所示。我2C 接口可配置為工作在 100kHz、400kHz 或 1MHz,SPI 可配置為工作在 100kHz、400kHz、1MHz 或 2.3MHz。GPIO 在配置為 SPI 時(shí)不可用。
圖5.GPIO/I2C/SPI 引腳多路復(fù)用和接口控制
-
電源
+關(guān)注
關(guān)注
184文章
17585瀏覽量
249487 -
控制器
+關(guān)注
關(guān)注
112文章
16203瀏覽量
177401 -
I2C
+關(guān)注
關(guān)注
28文章
1481瀏覽量
123286
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論