ZHCAEV1 December 2024 BQ79616 , MSPM0G3507
在 BQ79616 菊花鏈通信結(jié)構(gòu)中,MSPM0 通過 UART 直接與 BQ79616 基底器件通信,而 BA79616 基底器件通過菊花鏈與 BQ79616 堆棧器件通信。
在 MSPM0 和 BQ79616 之間傳輸?shù)臄?shù)據(jù)結(jié)構(gòu)如圖 3-2 所示,每個字節(jié)均以標準 UART 協(xié)議傳輸,UART 波特率為 1MHz。數(shù)據(jù)結(jié)構(gòu)的定義如下:
圖 3-2 與主機的 UART 通信DIR0_ADDR 和 DIR1_ADDR 是兩個 6 位器件地址寄存器,這兩個寄存器用于識別通過菊花鏈連接的不同 BQ79616 器件。在系統(tǒng)初始化期間,MSPM0 執(zhí)行 BQ79616 自動尋址功能,基底器件的地址為 0,堆棧器件的地址從 1 開始并以 1 遞增,BQ79616 總數(shù)量最多可為 64 個。為了提高通信穩(wěn)健性,菊花鏈通過 COMH COML 差分電壓信號傳輸位。電壓電平的定義如圖 3-3 所示。
圖 3-3 菊花鏈位定義菊花鏈使用 13 位二進制編碼來傳輸一個字節(jié)的數(shù)據(jù),其內(nèi)容與基底器件發(fā)送或接收的 UART 字節(jié)一一對應。數(shù)據(jù)結(jié)構(gòu)的定義如圖 3-4 所示。
圖 3-4 菊花鏈字節(jié)定義根據(jù) UART 和菊花鏈通信協(xié)議,MSPM0 和 BQ79616 堆棧器件之間的通信可以支持表 3-2 中所示的功能。
| 命令 | 說明 |
|---|---|
| 單器件讀 | 從單個器件(基底或堆棧)讀取寄存器 |
| 單器件寫 | 將寄存器寫入單個器件(基底或堆棧) |
| 棧讀 | 僅從堆棧器件讀取寄存器。器件必須配置為堆棧器件 (COMM_CTRL[STACK_DEV] = 1) 才能響應堆棧讀取命令。 |
| 棧寫 | 僅針對堆棧器件寫入寄存器。器件必須配置為堆棧器件 (COMM_CTRL[STACK_DEV] = 1) 才能響應堆棧寫入命令。 |
| 廣播讀 | 針對菊花鏈中的所有器件(包括基底器件)讀取寄存器。 |
| 廣播寫 | 針對菊花鏈中的所有器件(包括基底器件)寫入寄存器。 |
| 廣播寫反向 | 以 CONTROL1[DIR_SEL] 位設(shè)置的相反方向發(fā)送廣播寫入。該命令用于切換與 RING 接口的通信方向。 |