ZHCSRX7 june 2023 BQ79616
PRODUCTION DATA
廣播讀?。?/strong>
在使用該命令之前必須配置器件地址和 [TOP_STACK] 位。廣播讀取命令會根據(jù)菊花鏈中的器件數(shù)量(堆棧器件和基底器件)生成多個響應(yīng)幀,其長度取決于請求讀取的寄存器字節(jié)數(shù)。廣播讀取命令幀必須包含起始寄存器地址(地址字段)和要返回的字節(jié)數(shù)(要讀取的寄存器數(shù))。讀取命令的初始化字節(jié)中的 DATA_SIZE 字段始終為 0b000。
命令幀傳輸?shù)骄栈ㄦ溨械乃衅骷?,每個器件都會做出響應(yīng)。在響應(yīng)期間,COMM_CTRL[TOP_STACK] = 1 的器件將首先返回響應(yīng)幀,堆棧中的每個器件(地址 N)都會等待上面的器件(地址 N+1)響應(yīng)后再附加其響應(yīng)幀。在接收響應(yīng)時驗證 CRC。如果來自地址 N+1 的響應(yīng)幀中出現(xiàn) CRC 錯誤,則器件 N 不會附加其消息并生成無效 CRC 故障。
使用表 8-16,其中包含從 B0 至 S3 讀取 16 個電芯電壓的示例。對該命令的響應(yīng)是 4 個獨立的響應(yīng)幀(每個器件一個響應(yīng)幀),每個幀的總長度為 38 個字節(jié)(32 個數(shù)據(jù)字節(jié) + 6 個協(xié)議字節(jié))。盡管廣播讀取命令不包含器件地址字段,但每個響應(yīng)幀會包含相應(yīng)的器件地址字段,將數(shù)據(jù)與特定器件相關(guān)聯(lián)。主機將首先接收來自 S3 的響應(yīng)幀 (ToS),然后接收來自 S2 的響應(yīng)幀,然后接收 S1 的響應(yīng)幀,最后接收來自 B0 的響應(yīng)幀。
廣播寫入:
可以在不采用自動尋址的情況下使用該命令。廣播寫入命令使主機能夠通過一條命令更新菊花鏈中所有器件的最多八個連續(xù)寄存器。命令幀必須包含起始寄存器地址(地址字段)和寫入寄存器的數(shù)據(jù)字節(jié)。初始化幀中的 DATA_SIZE 字段是要更新的寄存器的數(shù)量。
命令幀傳輸?shù)骄栈ㄦ溨械乃衅骷?,菊花鏈中的每個器件都將執(zhí)行該命令。
圖 8-30 廣播讀取/寫入| 主機發(fā)送的廣播讀取命令 | 主機發(fā)送的廣播寫入命令 | ||||
|---|---|---|---|---|---|
| 示例 | 從 B0 至 S3 讀取 16 個電芯電壓 | 將 OTP 解鎖代碼寫入 B0、S1、S2 和 S3 的 OTP_PROG_UNLOCK1A 至 1D 寄存器 | |||
| 幀字段 | 數(shù)據(jù) | 說明 | 數(shù)據(jù) | 說明 | |
| 初始化字節(jié) | 0xC0 | 始終為 0xC0 FRAME_TYPE = 1 REQ_TYPE = 0b100 = 廣播讀取 DATA_SIZE = 0b000 | 0xD3 | 0xD0 用于 1 字節(jié)數(shù)據(jù)讀取,0xD1 用于 2 字節(jié)數(shù)據(jù)讀取,0xD2 用于 3 字節(jié)數(shù)據(jù)讀取,依此類推。 本示例中將 FRAME_TYPE = 1 REQ_TYPE = 0b101= 廣播寫入 DATA_SIZE = 0b011 = 4 字節(jié) | |
| 器件地址 | 不適用 | 無需在命令幀中添加器件地址字節(jié) | 不適用 | 無需在命令幀中添加器件地址字節(jié) | |
| 寄存器地址 | 0x0568 | 要讀取的寄存器塊的起始地址(本例中為 VCELL16_HI 的地址) | 0x0300 | 要寫入的寄存器塊的起始地址(本例中為 OTP_PROG_UNLOCK1A 的地址) | |
| 數(shù)據(jù) | 0x1F | 指示每個器件返回 32 個字節(jié)的數(shù)據(jù)(即從地址 0x0568 到 0x0587)(假設(shè)每個 VCELLn_HI = 0x80、VCELLn_LO = 0x00,其中 n = 1 至 16)。 | 0x02B7 78BC | 寫入 OTP_PROG_UNLOCK1A 至 OTP_PROG_UNLOCK1D 的解鎖值 | |
| CRC | 0x422D | 0x6BD1 | |||