亚洲av成人精品日韩一区,97久久久精品综合88久久,玩弄japan白嫩少妇hd,亚洲av片不卡无码久久,玩弄人妻少妇500系列

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

了解I2C Primer、PMBus和SMBus通信協(xié)議

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:Mary Grace Legaspi an ? 2022-12-12 16:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:Mary Grace Legaspi and Eric Peňa

I2C或內(nèi)部集成電路是建立設(shè)備之間通信的常用串行通信協(xié)議,特別是對于兩個或多個不同的電路。I2C引物是最常用的 I2C. 本文將提供 I 的基本功能和標(biāo)準(zhǔn)2C 入門,主要用于解決通信實現(xiàn)過程中的正確用法。從我的基本原理2C,我們將介紹其變體子集系統(tǒng)管理總線 (SMBus) 和電源管理總線 (PMBus) 的可用性以及它們的差異。這三者中的每一個都有專門的功能,旨在滿足不同的客戶需求。

為什么它很重要?

I2C語言為設(shè)計人員在系統(tǒng)中的眾多節(jié)點之間建立簡單、雙向、靈活的通信提供了好處。I2C語言通過僅使用兩條雙向線來發(fā)送和接收信息來降低復(fù)雜性。它還允許設(shè)計人員配置多個主節(jié)點系統(tǒng)IC之間的通信。I2C語言還有利于開發(fā)人員管理系統(tǒng)和電源,這使他們在最佳時間線內(nèi)創(chuàng)建高質(zhì)量產(chǎn)品的優(yōu)勢。

“溝通對那些從事溝通的人有用?!?/p>

——約翰·鮑威爾

通信協(xié)議在組織設(shè)備之間的通信方面起著重要作用。它根據(jù)系統(tǒng)要求以不同的方式設(shè)計,這些協(xié)議具有特定的、商定的規(guī)則來實現(xiàn)成功的通信。

你可能用過I2C如果您曾經(jīng)構(gòu)建過帶有 LED 顯示屏、傳感器甚至加速度計模塊的系統(tǒng),僅舉幾例。I2C支持多個節(jié)點連接到單個主設(shè)備,多個主設(shè)備連接到多個節(jié)點的功能。如果您希望最大限度地讓一個微控制器將數(shù)據(jù)記錄到單個存儲卡或?qū)⑽谋撅@示到單個 LCD,則此功能非常有用。

除了最常用的I2C Primer,我還有兩個額外的變體2C,專注于系統(tǒng)和電源應(yīng)用的用法。這些稱為系統(tǒng)管理總線 (SMBus) 和電源管理總線 (PMBus)。

根據(jù)定義,內(nèi)部集成電路(I2C)(也稱為 Inter IC)是一種硬件通信協(xié)議,它使用與多主、多節(jié)點和串行通信總線的同步通信。同步通信意味著交換數(shù)據(jù)的兩個(或多個)設(shè)備共享一條公共時鐘線。I2C語言廣泛用于將低速外設(shè) IC 連接到處理器和微控制器。I2C總線由飛利浦設(shè)計,允許駐留在同一電路板上的組件之間輕松通信。

我2C 引物

接口

通過使用串行數(shù)據(jù) (SDA) 線、串行時鐘 (SCL) 線和用于承載所有通信的公共接地,可以最大限度地減少連接。

poYBAGOW7amAGgIQAAAovCU5xQU935.png

圖1.集成電路直接相互通信。

每根 I 中有兩根電線2C 設(shè)備:

SDA是主設(shè)備和節(jié)點發(fā)送和接收數(shù)據(jù)的線路。

SCL 是傳輸時鐘信號的線路。SCL 始終由 I 生成2C 主。該規(guī)范要求時鐘信號的低相位和高相位的最小周期。

I2C總線僅使用兩條雙向線路:每個器件的 SDA 和 SCL,用于簡單的 IC 間通信。

poYBAGOW7a-AIssRAAAg7-K-DjU630.png

圖2.I2C 上拉電阻連接。

最重要的硬件部件是上拉電阻,由SDA和SCL線路使用。I2C兼容器件通過集電極開路或漏極開路引腳連接到總線,從而將線路拉低。當(dāng)沒有數(shù)據(jù)傳輸時,I2C總線線路在高電平狀態(tài)下閑置;線條被動拉高。通過切換線路、拉低和釋放高電平來發(fā)生傳輸。位在下降的時鐘邊沿上計時。

漏極開路輸出需要一個上拉電阻(圖2中的Rp)才能正確輸出高電平。上拉電阻連接在輸出引腳和輸出電壓(VDD在圖 2) 中,這是高狀態(tài)所需的。

四千七百歐姆(4700 Ω)是上拉電阻最常用的值,典型值為V抄送和 VDD(5 V)。

作為參考,屏蔽 2 AWG 雙絞線電纜的電容范圍為 100 pF/m 至 240 pF/m。因此,I 的最大總線長度2C 鏈路在 100 kBaud 時約為 1 米,在 10 kBaud 時約為 10 米。非屏蔽電纜通常具有小得多的電容,但只能在其他屏蔽外殼內(nèi)使用。

表1總結(jié)了I2C.

特征 規(guī)格
電線 2
最大速度 標(biāo)準(zhǔn)模式 = 100 kbps 快速模式 = 400 kbps 高速模式 = 3.4 Mbps 超快模式 = 5 Mbps
同步還是異步? 同步
串行還是并行? 串行
最大電源數(shù)量 無限
最大節(jié)點數(shù) 1008

理論上,最大節(jié)點數(shù)為 27或 210用于尋址模式;但是,有 16 個地址是為特殊目的保留的。

I2C是同步的,因此位的輸出通過主節(jié)點和節(jié)點之間共享的時鐘信號與位采樣同步。時鐘信號始終由主設(shè)備控制。

保留 I2C 節(jié)點地址

有 16 個保留 I2C 地址。這些地址對應(yīng)于兩種模式之一:0000 XXX 或 1111 XXX。表 2 顯示 I2C地址保留用于特殊用途。

我2C 節(jié)點地址 R/W 位說明
0000 000 0 一般呼叫地址
0000 000 1 起始字節(jié)
0000 001 X CBUS地址
0000 010 X 保留用于不同的總線格式
0000 011 X 保留用于將來的目的
0000 1XX X 高速模式主碼
1111 1XX X 保留用于將來的目的
1111 0XX X 10 位節(jié)點地址

我該怎么做2C 工作?

I2C 數(shù)據(jù)在消息中傳輸,消息被分解為數(shù)據(jù)幀。讀寫協(xié)議包含具有節(jié)點二進制地址的地址幀和另一個數(shù)據(jù)幀,其中包含正在傳輸?shù)臄?shù)據(jù)、開始和停止條件、重復(fù)開始位、讀/寫位以及每個數(shù)據(jù)幀之間的確認(rèn)/不確認(rèn)位。

時序規(guī)格表

I2C時序表也很重要,因為它允許工程師設(shè)計與總線要求兼容的IC。每個數(shù)據(jù)速率都有自己的時序規(guī)范,主節(jié)點和節(jié)點必須遵守該規(guī)范才能正確傳輸數(shù)據(jù)。

表3顯示了時序規(guī)格表上可用的符號和參數(shù)。

象征 參數(shù) 單位
f標(biāo)準(zhǔn)及校正實驗所 標(biāo)準(zhǔn)與校正實驗所時鐘頻率 千 赫
t高清(斯塔) 保持時間(重復(fù))啟動條件 微秒
t低 標(biāo)準(zhǔn)及校正實驗所引腳的低周期 微秒
t高 高周期 SCL 引腳 微秒
t蘇(斯塔) 重復(fù)啟動條件的設(shè)置時間 微秒
t高清(達特) 數(shù)據(jù)保持時間 微秒
t蘇(嘎嘎) 數(shù)據(jù)設(shè)置時間
tr SDA信號的上升時間
tf SDA 信號的下降時間
t蘇(中) 停止條件的設(shè)置時間 微秒

poYBAGOW7baAO6uDAADfa-0tK3o086.png

圖3.一個I2C消息。

I2C 傳輸子協(xié)議

通過總線傳輸是讀取或?qū)懭氩僮?。讀寫協(xié)議建立在一系列子協(xié)議之上,例如開始和停止條件、重復(fù)起始位、地址字節(jié)、數(shù)據(jù)傳輸位和確認(rèn)/不確認(rèn)位。

啟動條件

顧名思義,啟動條件總是發(fā)生在傳輸開始時,并由主設(shè)備啟動。這樣做是為了喚醒總線上的空閑節(jié)點設(shè)備。在 SCL 線路從高電平切換到低電平之前,SDA 線從高電壓電平切換到低電壓電平。參見圖 4。

重復(fù)啟動條件

在不發(fā)出停止條件的情況下,可以在傳輸過程中重復(fù)啟動條件。這是一種特殊情況,稱為重復(fù)啟動,用于改變數(shù)據(jù)傳輸方向、重復(fù)傳輸嘗試、同步多個 IC,甚至控制串行存儲器。參見圖 5。

地址框

地址幀包含 7 位或 10 位序列,具體取決于可用性(請參閱數(shù)據(jù)手冊)。參見圖 6。

I2C沒有像 SPI 那樣的節(jié)點選擇行,因此它需要另一種方式讓節(jié)點知道數(shù)據(jù)正在發(fā)送到它,而不是另一個節(jié)點。它通過尋址來實現(xiàn)這一點。地址幀始終是新消息中起始位之后的第一幀。

main 將要與之通信的節(jié)點的地址發(fā)送到與其連接的每個節(jié)點。然后,每個節(jié)點將從主節(jié)點發(fā)送的地址與其自己的地址進行比較。如果地址匹配,它將一個低壓ACK位發(fā)送回主電源。如果地址不匹配,節(jié)點將不執(zhí)行任何操作,并且 SDA 線路保持高電平。

讀/寫位

地址幀末尾包含一個位,用于通知節(jié)點主節(jié)點是要向其寫入數(shù)據(jù)還是從中接收數(shù)據(jù)。如果主設(shè)備要向節(jié)點發(fā)送數(shù)據(jù),則讀/寫位處于低電壓電平。如果主節(jié)點從節(jié)點請求數(shù)據(jù),則位處于高壓電平。參見圖 7。

ACK/NACK 位

消息中的每個幀后跟一個確認(rèn)/不確認(rèn)位。如果成功接收到地址幀或數(shù)據(jù)幀,則接收設(shè)備將向發(fā)送方返回ACK位。

圖例:對于下圖,白框表示節(jié)點,而藍色框表示主節(jié)點。參見圖 8。

數(shù)據(jù)框

主節(jié)點檢測到來自節(jié)點的ACK位后,第一個數(shù)據(jù)幀就可以發(fā)送了。數(shù)據(jù)幀始終為 8 位長,并以最高有效位優(yōu)先發(fā)送。每個數(shù)據(jù)幀后面緊跟一個ACK/NACK位,以驗證該幀是否已成功接收。在發(fā)送下一個數(shù)據(jù)幀之前,主節(jié)點或節(jié)點(取決于發(fā)送數(shù)據(jù)的人)必須接收 ACK 位。參見圖 9。

停止條件

發(fā)送完所有數(shù)據(jù)幀后,主節(jié)點可以向節(jié)點發(fā)送停止條件以停止傳輸。停止條件是在SCL線路上從低到高轉(zhuǎn)換后,SDA線路上的電壓從低到高轉(zhuǎn)換,而SCL線路保持高電平。

在 SCL 線路從低電平切換到高電平后,SDA 線從低電壓電平切換到高壓電平。參見圖 10。

I 的步驟2C 傳輸:寫入

舉個例子 I2C傳輸寫入位置的單個位置,見圖11。

步驟 1

主設(shè)備通過將SDA線從高壓電平切換到低電壓電平,然后再將SCL線從高電平切換到低電平,將啟動條件發(fā)送到每個連接的節(jié)點。

步驟 2

主節(jié)點向每個節(jié)點發(fā)送它想要與之通信的節(jié)點的 7 位或 10 位地址以及寫入位。

例如,0x2D 7 位地址。添加等效于 0 的寫入位,它將0x5A。

步驟 3

每個節(jié)點將從主地址發(fā)送到的地址與其自己的地址進行比較。如果地址匹配,節(jié)點通過將 SDA 線拉低一位來返回 ACK 位。如果來自主節(jié)點的地址與節(jié)點自己的地址不匹配,則節(jié)點將 SDA 線保留為高電平。

通過在 SCL 的第九個脈沖期間將 SDA 線降低到低電平,對于 NACK,將 SDA 線浮動到高電平,可以實現(xiàn) ACK。

步驟 4

主發(fā)送或接收數(shù)據(jù)幀。

步驟 5

每個數(shù)據(jù)幀傳輸完畢后,接收設(shè)備向發(fā)送方返回另一個ACK位,以確認(rèn)成功接收該幀。

步驟 6

為了停止數(shù)據(jù)傳輸,主設(shè)備通過在將SDA切換為高電平之前將SCL切換為高電平來向節(jié)點發(fā)送停止條件。

I 的步驟2C 數(shù)據(jù)傳輸:讀取

步驟 1

主設(shè)備通過將SDA線從高壓電平切換到低電壓電平,然后再將SCL線從高電平切換到低電平,將啟動條件發(fā)送到每個連接的節(jié)點。

步驟 2

主節(jié)點向每個節(jié)點發(fā)送它想要與之通信的節(jié)點的 7 位或 10 位地址以及寫入位。

例如,0x2D 7 位地址。添加等效于 0 的寫入位,它將0x5A。

步驟 3

每個節(jié)點將從主地址發(fā)送到的地址與其自己的地址進行比較。如果地址匹配,節(jié)點通過將 SDA 線拉低一位來返回 ACK 位。如果來自主節(jié)點的地址與節(jié)點自己的地址不匹配,則節(jié)點將 SDA 線保留為高電平。

步驟 4

在初始啟動、尋址和確認(rèn)之后,由于主設(shè)備已經(jīng)知道其節(jié)點和要指向的地址,因此某些設(shè)備具有重復(fù)的啟動條件來清理事務(wù)。

注意:僅供閱讀之用!

步驟 5

主節(jié)點向每個節(jié)點發(fā)送它想要與之通信的節(jié)點的 7 位或 10 位地址以及讀取位。

例如,0x2D 7 位地址。添加等于 1 的讀取位,它將0x5B。

步驟 6

每個節(jié)點將從主地址發(fā)送到的地址與其自己的地址進行比較。如果地址匹配,節(jié)點通過將 SDA 線拉低一位來返回 ACK 位。如果來自主節(jié)點的地址與節(jié)點自己的地址不匹配,則節(jié)點將 SDA 線保留為高電平。

步驟 7

在ACK位之后,主節(jié)點接收來自節(jié)點的數(shù)據(jù)幀。

步驟 8

傳輸完每個數(shù)據(jù)幀后,主器件向發(fā)送方返回另一個 ACK 位以確認(rèn)成功接收幀,或者如果讀取請求已完成,則主器件返回 NACK。

步驟 9

為了停止數(shù)據(jù)傳輸,主設(shè)備通過在將SDA切換為高電平之前將SCL切換為高電平來向節(jié)點發(fā)送停止條件。

具有多個節(jié)點的單個主節(jié)點

因為I2C使用尋址,可以從單個主節(jié)點控制多個節(jié)點。對于 7 位地址,128 (27) 唯一地址可用。使用 10 位地址并不常見,但提供 1024 (210) 唯一地址。要將多個節(jié)點連接到單個主電源,請使用 4.7 kΩ 上拉電阻將它們連接到 V抄送.

具有多個節(jié)點的多個電源

多個主設(shè)備可以連接到單個節(jié)點或多個節(jié)點。當(dāng)兩個主設(shè)備嘗試通過SDA線路同時發(fā)送或接收數(shù)據(jù)時,同一系統(tǒng)中多個主設(shè)備的問題就出現(xiàn)了。

為了解決這個問題,每個主線都需要在傳輸消息之前檢測SDA線路是低還是高。

如果SDA線較低,則意味著另一條主線控制了總線,主線應(yīng)等待發(fā)送消息。如果 SDA 線路很高,則傳輸消息是安全的。要將多個電源連接到多個節(jié)點,請使用圖13所示的圖表,使用4.7 kΩ上拉電阻將SDA和SCL線路連接到V抄送.

poYBAGOW7iGAezQoAACE-NT-PUg312.png

圖 13.連接多個節(jié)點的多個電源。

仲裁

幾個I2C多主設(shè)備可連接同一I2C 總線并發(fā)運行。通過持續(xù)監(jiān)控SDA和SCL的啟動和停止條件,他們可以確定總線當(dāng)前是否處于空閑狀態(tài)。如果總線繁忙,則主設(shè)備延遲等待I2C 轉(zhuǎn)換,直到停止條件指示公共汽車再次空閑。

但是,可能會發(fā)生兩個主要設(shè)備同時開始傳輸?shù)那闆r。在傳輸過程中,電源不斷監(jiān)控SDA和SCL。如果其中一個檢測到SDA在應(yīng)該高的時候很低,它會假設(shè)另一個主干處于活動狀態(tài)并立即停止其傳輸。此過程稱為仲裁。兩個電源都生成一個起始位并繼續(xù)傳輸。

如果電源碰巧選擇了相同的邏輯電平,則不會發(fā)生任何事情。

一旦主電源試圖施加不同的邏輯電平,主電源就會宣布信號低電平,從而宣布獲勝;失敗者檢測到邏輯不匹配并放棄其傳輸。

花點時間欣賞一下這種安排的簡單性和有效性:

獲勝者繼續(xù)傳輸而不會中斷 - 沒有損壞的數(shù)據(jù),沒有驅(qū)動程序爭用,不需要重新啟動事務(wù)。

從理論上講,失敗者可以在仲裁過程中監(jiān)控節(jié)點地址,如果它恰好是尋址節(jié)點,則做出適當(dāng)?shù)捻憫?yīng)。

如果競爭主線都從同一節(jié)點請求數(shù)據(jù),仲裁過程不會不必要地中斷任一事務(wù) — 不會檢測到不匹配,并且節(jié)點會將其數(shù)據(jù)輸出到總線,以便多個主線可以接收它。

時鐘拉伸

這也稱為時鐘同步。

注:I2C規(guī)范未指定時鐘拉伸的任何超時條件,也就是說,任何設(shè)備都可以根據(jù)需要按住 SCL。

在I2C通信協(xié)議中,時鐘速度和信號始終由主器件產(chǎn)生。由 I 產(chǎn)生的信號2C 主設(shè)備提供主節(jié)點連接之間的同步。

在某些情況下,節(jié)點或子節(jié)點未完全工作,需要在從主節(jié)點接收生成的時鐘之前放慢速度。這是通過一種稱為時鐘拉伸的機制實現(xiàn)的。

在時鐘拉伸期間,為了降低總線速度,允許節(jié)點按住時鐘。在主側(cè),有必要在其高電平狀態(tài)之后回讀時鐘信號。然后它必須等到線達到高狀態(tài)。

帶寬

雖然時鐘延長是一種常見的做法,但對帶寬方面有影響。在使用時鐘延伸時,共享總線之間的總帶寬可能會顯著降低。即使使用這種技術(shù),總線性能也必須可靠且快速。有必要涵蓋使用時鐘拉伸的估計效果,尤其是在 I2由多個設(shè)備共享的C總線。

時鐘拉伸允許 I2C 節(jié)點設(shè)備強制主設(shè)備進入等待狀態(tài)。節(jié)點設(shè)備在需要更多時間來管理數(shù)據(jù)時(例如,存儲接收的數(shù)據(jù)或準(zhǔn)備傳輸另一個數(shù)據(jù)字節(jié))時,可能會執(zhí)行時鐘延伸。這通常發(fā)生在節(jié)點設(shè)備接收并確認(rèn)一個字節(jié)的數(shù)據(jù)之后。

其中I2C節(jié)點設(shè)備需要時鐘延長?

是否需要時鐘拉伸取決于節(jié)點設(shè)備的功能。下面是兩個示例:

處理設(shè)備(如微處理器或微控制器)可能需要額外的時間來處理中斷、接收和管理數(shù)據(jù)以及執(zhí)行適當(dāng)?shù)墓δ堋?/p>

更簡單的設(shè)備(如EEPROM)不在內(nèi)部處理數(shù)據(jù),因此不需要時鐘拉伸來執(zhí)行其任何功能。

I2C數(shù)據(jù)手冊示例概述

根據(jù)不同的公司和制造商,在創(chuàng)建數(shù)據(jù)表方面有不同的方法。首先,圖13顯示了一個示例數(shù)據(jù)手冊和基本數(shù)據(jù)手冊2C 詳細(xì)信息,包括寄存器和電子規(guī)格。

pYYBAGOW7ieAFvhyAADOw1p0y74602.png

圖 15.微控制器內(nèi)存圖。

表 4 顯示了最常用的 I2C 寄存器。名稱和描述可能因數(shù)據(jù)手冊而異,但功能和用法是通用的。

名字 描述
I2C_ADDR1 主地址字節(jié) 1
I2C_ADDR2 主地址字節(jié) 2
I2C_BYT 起始字節(jié)
I2C_ID 節(jié)點地址設(shè)備 ID
I2C_MCTL 主控
I2C_MRX 主接收數(shù)據(jù)
I2C_SCTL 節(jié)點控制
I2C_SRX 節(jié)點接收
I2C_STAT 主和節(jié)點先進先出狀態(tài)

我創(chuàng)造2C 可能因使用情況而異。表 5 顯示了基本 I 的樣本2C 驅(qū)動程序 API 要求。

主要 節(jié)點
初始化
Tx 處理器 Tx 處理器
接收處理器 接收處理器
事件中斷
錯誤中斷

SMBus

眾所周知,SMBus 用于需要關(guān)鍵參數(shù)監(jiān)控的應(yīng)用。它最常用于計算機主板和嵌入式系統(tǒng)應(yīng)用。它具有溫度、電源電壓、風(fēng)扇監(jiān)視器和/或控制集成芯片的附加監(jiān)控規(guī)范。

SMBus 是一條 2 線總線,類似于 I2飛利浦在1980年代開發(fā)的C總線。兩個主要信號是時鐘或SMBCLK和數(shù)據(jù)或SMBDAT。我2C 引物和 SMBus 相互兼容,但存在顯著差異,例如:

SMBus邏輯電平門限是固定的,與器件的電源電壓不成比例。這允許具有不同電源電壓的器件在同一引物上工作。例如,一個 SMBus 可能具有由 1.8 V、3.3 V 和 5 V 供電的設(shè)備。

它們都以高達 100 kHz 的相同速度運行,但 I2C 引物有 400 kHz 和 2 MHz 版本。

SMBus 提供最小時鐘速度,并限制時鐘在一個事務(wù)中可能延長的數(shù)量。違反超時限制會導(dǎo)致所有 SMBus 設(shè)備重置其 I/O 邏輯以允許總線重新啟動。這增強了總線的魯棒性。

兩者的超時也不同。我2C 引物沒有超時,而 SMBus 有超時 — 對于 10 kHz 的最小時鐘速度,請考慮 35 ms。

數(shù)據(jù)包錯誤檢查 (PEC) 最初是為 SMBus 定義的。在每個事務(wù)的末尾添加一個數(shù)據(jù)包錯誤代碼字節(jié)。

剩下的一些差異涉及傳輸類型、警報線、掛起線以及斷電或上電。

SMBus 設(shè)備每次收到時都必須確認(rèn) (ACK) 自己的地址,這是一項明確要求,無論設(shè)備可能正在執(zhí)行其他操作。這確保了主設(shè)備可以準(zhǔn)確地確定總線上哪些設(shè)備處于活動狀態(tài)。

所有 SMBus 事務(wù)都通過指定的 SMBus 協(xié)議之一執(zhí)行。

SMBus 包括一個可選信號 SMBALERT#,節(jié)點設(shè)備可以使用該信號快速通知主主機或系統(tǒng)主機它具有主主機的信息,例如報告故障情況。

pYYBAGOW7i6APShfAAAhfFUgawI616.png

圖 16.SMBus 拓?fù)洹?/strong>

SMBus 上拉電路

poYBAGOW7jSAX7vmAAAr3EdyUKo486.png

圖 17.SMBus 上拉電路。

中小企業(yè)地址

SMBus 地址的長度為 7 個二進制位,通常表示為 4 位,后跟 3 位,后跟字母 b,例如 0001 110b。這些地址占據(jù)總線上 8 位字段的高 7 位。但是,此字段的低位具有另一個語義含義,該含義不是 SMBus 地址的一部分。

poYBAGOW7WeAVYDJAAAfiXlrwG0077.jpg?imgver=1

圖 18.節(jié)點地址。

7位目標(biāo)地址從主設(shè)備發(fā)送到總線上的一個或多個設(shè)備(例如常規(guī)呼叫地址)。

請注意,開始和停止條件是轉(zhuǎn)換,而不是位,并且在符號上方顯示時沒有位計數(shù)數(shù)字。當(dāng)顯示在事務(wù)圖中時,重復(fù)開始也是一個過渡,而不是一個位,并且在符號上方顯示沒有位計數(shù)。

pYYBAGOW7WmARLnPAAAwCmV1F1E598.jpg?h=270&hash=B859C2C1295823A6302A7855A09A18DB&imgver=1

圖 19.SMBus 消息。

SMBus 定時測量

象征 參數(shù) 單位
f中小企業(yè) SMBus工作頻率 千 赫
t布夫 停止和啟動之間的總線空閑時間 微秒
T高清-STA (重復(fù))啟動條件后的保持時間 微秒
T蘇斯塔 重復(fù)啟動條件設(shè)置時間 微秒
t蘇(中) 停止條件設(shè)置時間 微秒
t高清(達特) 數(shù)據(jù)保持時間
t蘇(嘎嘎) 數(shù)據(jù)設(shè)置時間
t超時 檢測時鐘低超時 女士
t低 時鐘低周期 微秒
t高 時鐘高電平周期 微秒

PMBus:重新定義電源管理

除了SMBus之外,還有一個變體,PMBus,它是一種開放標(biāo)準(zhǔn)的電源管理協(xié)議。這種靈活且高度通用的標(biāo)準(zhǔn)允許基于模擬和數(shù)字技術(shù)的設(shè)備之間進行通信,并提供真正的互操作性,這將降低設(shè)計復(fù)雜性并縮短電源系統(tǒng)設(shè)計人員的上市時間。

PMBus 用于具有電源控制和管理組件的電源的數(shù)字管理。它具有支持電源管理要求的命令和結(jié)構(gòu)。這意味著我2C primer 和 PMBus 在電氣要求和命令語義上兼容且可互操作。

電源管理中的基本參數(shù)之一是監(jiān)控過壓電平,PMBus 提供了用于設(shè)置和讀取它的命令。通過添加到 I 的可用功能2C primer 和 SMBus,PMBus 充當(dāng)現(xiàn)有標(biāo)準(zhǔn)之上的協(xié)議層,尤其是 SMBus。

I2C規(guī)范僅描述了 2 線總線的物理層、時序和流量控制。我2C 規(guī)范不描述消息的格式(如 SMBus 協(xié)議),也不描述消息的內(nèi)容。

PMBus 規(guī)范是一個完整的電源管理協(xié)議。它包括如何將位和字節(jié)從一個設(shè)備獲取到另一個設(shè)備(即傳輸);它還描述了一種命令語言,該語言賦予這些位和字節(jié)以意義。

尋址

對于冗余系統(tǒng),一旦電源安裝在系統(tǒng)中,最多有三個信號來設(shè)置電源的地址位置:地址 2、地址 1 和地址 0。對于非冗余系統(tǒng),電源設(shè)備地址位置應(yīng)為 B0h。

硬件

電源中的設(shè)備應(yīng)符合 SMBus 2.0 高功率規(guī)范2五DD-基于電源和驅(qū)動器(對于 VDD= 3.3 V)。該總線的工作電壓為3.3 V。

電源

電源中的設(shè)備應(yīng)符合 SMBus 2.0 高功率規(guī)范2C 基于 VDD 的電源和驅(qū)動器(對于 VDD= 3.3 V)。該總線的工作電壓為3.3 V。

引體向上

只有弱上拉電阻應(yīng)位于電源內(nèi)部的 SCL 或 SDA 線路上。主上拉電阻由系統(tǒng)提供,可連接到3.3 V或5 V。對于系統(tǒng)設(shè)計,主上拉電阻應(yīng)位于電源外部,并從備用軌獲取電源。

數(shù)據(jù)速度

電源中的 PMBus 設(shè)備應(yīng)以 100 kbps SMBus 全速運行,并盡可能避免使用時鐘拉伸,因為它會減慢總線速度。

總結(jié)

表 8 提供了規(guī)格方面的一般視圖和摘要:信號、定時和電氣2C Primer、SMBus(用于高功率和低功率)和 PMBus。

I2C Primer、SMBus 和 PMBus 相關(guān)?

SMBus 最初是為了促進電池管理系統(tǒng)而開發(fā)的,它使用 I2C硬件,但增加了二級軟件,最終允許設(shè)備熱插拔而無需重新啟動系統(tǒng)。PMBus 通過定義一組專門設(shè)計用于管理電源轉(zhuǎn)換器的設(shè)備命令來擴展 SMBus,公開設(shè)備屬性,例如測量的電壓、電流、溫度等。一般來說,I2C Primer、SMBus 和 PMBus 設(shè)備可以共享總線,不會出現(xiàn)任何重大問題。

I2C、SMB、PMB 優(yōu)勢

僅使用兩根電線

帶交流/不適用鉆頭

眾所周知的協(xié)議

支持多個主設(shè)備和多個節(jié)點

硬件沒有UART那么復(fù)雜

廣泛使用的方法

數(shù)據(jù)傳輸速率比 SPI 慢

數(shù)據(jù)框的大小限制為 8 位

實現(xiàn)比 SPI 更復(fù)雜的硬件

pYYBAGOW7kCANDTfAAA_iSUm_W8004.png

圖 20.SMBus 定時測量。

使用的地址 主尋址用于大多數(shù)具有兩個尋址引腳的服務(wù)器電源 如果電源上提供了三個尋址引腳,則為其他地址
系統(tǒng)尋址地址2/地址1/地址0 0/0/0 0/0/1 0/1/1 0/1/1 1/0/0 1/0/1 1/1/0 1/1/1
PMBus 設(shè)備讀取地址 B0h/B1h B2h/B3h B4小時/B5小時 B6小時/B7小時 B8h/B9h BCh/BDh 貝/貝赫

使用案例

傳感器讀數(shù)

傳感器寫入

EEPROM,溫度傳感器,觸摸屏,接近

傳輸和控制用戶指示的操作

與多個微控制器通信

消費類電子產(chǎn)品

系統(tǒng)管理

電源管理

調(diào)試

規(guī)范 我2C 引物 SMBus
高功率| 低功耗
PMBus
信號 數(shù)據(jù)包錯誤檢查
(可選) SMBALERT
(可選)

塊大小限制
— —



— —

32 字節(jié)
— —

32 字節(jié)
— —

255 字節(jié)
定時 數(shù)據(jù)速率:
標(biāo)準(zhǔn)模式 快速模式 快速模式增強版 高速

模式 時鐘

速度

總線超時
總線主請求延遲
(最小值) SCL 保持時間(最大值) 數(shù)據(jù)保持時間
(最小值)

100 kbps 400 kbps

1 Mbps 3.4 Mbps
0 Hz 至
3.4 MHz
— — —



100 kbps
— — — —
10
kHz 至 100 kHz
25 毫秒至 35 毫秒 50 μs



2 毫秒

300 ns
100 kbps
— — — —
10
kHz 至 100 kHz
25 毫秒至 35 毫秒 50 μs



2 毫秒

300 ns
100 kbps 400 kbps

— — 10 kHz 至 400 kHz
25 毫秒至 35 毫秒 50 微秒 —


2 毫秒

300 納秒
電氣 每總線段電容負(fù)載(最大值) 上升時間(最大值) 0.4 V 時的上拉電流(最大值) 每個器件的漏電流(最大值) VIL 輸入邏輯 低閾值(最大值) VIH 輸入邏輯高閾值(最小值) VOL 輸出邏輯 低閾值(最大值)





400 pF
100 kHz 時為 1 μs,400 kHz
時為 300 ns 3 mA(標(biāo)準(zhǔn)和快速模式)
±10 μA
0.3 VDD或 1.5 V 0.7 V
抄送或 3 V 0.4 V
400 pF
1 微秒
4毫安 ±10 微安

0.8 V 2.1 V 2.4 V



1 μs
350 μA ±5 μA

0.8 V 2.1 V 0.4 V

400 pF
100 kHz 時為 1 μs,400 kHz
時為 300 ns 4 毫安
±10 μA
0.8 V 2.1 V 0.4 V

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 集成電路
    +關(guān)注

    關(guān)注

    5424

    文章

    12055

    瀏覽量

    368398
  • 電源管理
    +關(guān)注

    關(guān)注

    117

    文章

    6433

    瀏覽量

    146103
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1541

    瀏覽量

    127800
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    3分鐘理解通信協(xié)議I2C總線 #通信協(xié)議

    通信協(xié)議I2CI2C總線總線/接口技術(shù)
    硬聲課堂
    發(fā)布于 :2021年10月18日 10:39:12

    i2c通信協(xié)議

    1.1 i2c通信協(xié)議通信協(xié)議:用來實現(xiàn)數(shù)據(jù)傳輸。i2c物理總線:SCL(時鐘線) SDA(數(shù)據(jù)線)i2c
    發(fā)表于 03-06 16:15

    I2C通信協(xié)議硬軟件

    目錄12C通信協(xié)議硬軟件I2CAHT20測溫濕度參考12C通信協(xié)議I2C
    發(fā)表于 08-23 07:42

    I2C通信協(xié)議的原理是什么

    I2C通信協(xié)議I2C通信原理I2C通信原理:I2C
    發(fā)表于 02-17 07:16

    I2C總線通信協(xié)議的相關(guān)資料下載

    基于I2C總線通信協(xié)議的溫度采集實驗(基于AHT20) I2C總線通信協(xié)議簡介 AHT20簡介 一.項目說明1)實戰(zhàn)目標(biāo):2)實戰(zhàn)元件: 二
    發(fā)表于 02-22 07:37

    SPI、I2C、UART串行總線協(xié)議

    串口通訊通信協(xié)議UART,以及常用外設(shè)通信協(xié)議 SPI、I2C的介紹與他們之間的區(qū)別
    發(fā)表于 11-30 11:28 ?95次下載

    實驗八-I2C通信協(xié)議

    實驗八-I2C通信協(xié)議,感興趣的可以瞧一瞧。
    發(fā)表于 09-22 16:42 ?2次下載

    I2C通信協(xié)議應(yīng)該如何學(xué)習(xí)

    我最近剛做完I2C通信協(xié)議的編寫與調(diào)試,下面介紹一下我從一開始理解夏老師的程序,修改程序,直到下板調(diào)試整個的學(xué)習(xí)過程,希望對大家學(xué)習(xí) I2C 有一定的幫助。一、 分析源代碼學(xué)習(xí) I2C
    發(fā)表于 04-28 08:00 ?22次下載
    <b class='flag-5'>I2C</b><b class='flag-5'>通信協(xié)議</b>應(yīng)該如何學(xué)習(xí)

    什么是I2C通信協(xié)議

    在本教程中,我們將學(xué)習(xí)如何在Raspberry Pi Pico中使用I2C引腳并遍歷I2C掃描器代碼。
    的頭像 發(fā)表于 04-26 15:08 ?8224次閱讀
    什么是<b class='flag-5'>I2C</b><b class='flag-5'>通信協(xié)議</b>?

    MPU6050的I2C通信協(xié)議

    不同硬件有不同的I2C協(xié)議
    發(fā)表于 12-06 12:21 ?3次下載
    MPU6050的<b class='flag-5'>I2C</b><b class='flag-5'>通信協(xié)議</b>

    Linux控制I2C/SMBus設(shè)備

    I2C是Philips開發(fā)的一種兩線通信協(xié)議,常用于一些對速度要求不高的小型器件上。SMBus是系統(tǒng)管理總線,基于I2C協(xié)議,大部分情況下二
    的頭像 發(fā)表于 03-23 10:02 ?2008次閱讀
    Linux控制<b class='flag-5'>I2C</b>/<b class='flag-5'>SMBus</b>設(shè)備

    I2C通信協(xié)議及其工作原理

    "也許你聽說過I2C,或者你也正在使用I2C,但你有沒有了解過什么是I2C?I2C是如何工作的?讓我們一起
    的頭像 發(fā)表于 04-19 09:36 ?5945次閱讀

    I2C通信協(xié)議了解I2C PrimerPMBusSMBus

    I2C Primer的基本特性和標(biāo)準(zhǔn),并重點說明在通信實現(xiàn)過程中如何正確使用該協(xié)議。從I2C的基本原理出發(fā),我們將介紹其變體子集——系統(tǒng)管理
    的頭像 發(fā)表于 06-15 15:29 ?7523次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>通信協(xié)議</b>:<b class='flag-5'>了解</b><b class='flag-5'>I2C</b> <b class='flag-5'>Primer</b>、 <b class='flag-5'>PMBus</b>和<b class='flag-5'>SMBus</b>

    SPI和I2C通信協(xié)議:應(yīng)用與區(qū)別

    本文深入解析了SPI和I2C這兩種通信協(xié)議的特點、工作原理和應(yīng)用場景。SPI適用于高速數(shù)據(jù)傳輸,常用于存儲器芯片和顯示器驅(qū)動等領(lǐng)域;I2C適用于低速控制和傳感器數(shù)據(jù)傳輸,常用于溫度傳感器和ADC
    的頭像 發(fā)表于 04-22 16:45 ?2797次閱讀

    簡單認(rèn)識I2C通信協(xié)議

    I2C(Inter-Integrated Circuit)通信協(xié)議是由飛利浦公司(現(xiàn)為恩智浦半導(dǎo)體)開發(fā)的一種簡單、雙向二線制同步串行總線協(xié)議。自1982年發(fā)布以來,I2C
    的頭像 發(fā)表于 07-25 18:06 ?2608次閱讀