ZHCAAI2A October 2020 – February 2022 BQ769142 , BQ76922 , BQ76942 , BQ76952
對于主機控制型平衡,可以使用主機發(fā)送的特定子命令來實現(xiàn)控制,也可以在密封模式下訪問這些子命令,這樣就無需在操作中通過解封電池組來啟動平衡。如果不進行主機控制型平衡,則可以通過設置 Balancing Configuration[CB_NO_CMD] 配置位來禁用對這些子命令的訪問。主機用于控制電池平衡的子命令如下所述。
| 子命令 | 說明 |
|---|---|
| 0x0083 CB_ACTIVE_CELLS() | 執(zhí)行讀取操作后,報告位掩碼,其中顯示了哪些電池處于主動平衡狀態(tài)。執(zhí)行寫入操作后,開始對指定的電池進行平衡。寫入 0x0000 可以關閉平衡功能。 |
| 0x0084 CB_SET_LVL() | 在寫入 16 位的電池電壓閾值(以 mV 為單位)后,如果有電池的電壓高于寫入的閾值,則該器件開始對電壓最高的一節(jié)或多節(jié)電池進行平衡。執(zhí)行讀取操作后,返回該閾值。 |
該器件還通過下面所述的子命令返回有關電池已被平衡多長時間的狀態(tài)信息。寫入主機控制型平衡命令時,必須向寄存器 0x60/0x61 中寫入校驗和及長度,這樣才能成功寫入值。請參閱《TRM 或 BQ769x2 軟件開發(fā)指南》,以獲取有關寫入校驗和及長度的信息。
| 子命令 | 說明 |
|---|---|
| 0x0085 CBSTATUS1() | 執(zhí)行讀取操作后,返回平衡已執(zhí)行的時間(16 位,以秒為單位)。 |
| 0x0086 CBSTATUS2() | 執(zhí)行讀取操作后,返回一個包含電池 1 至 8 中每節(jié)電池的累計平衡時間(32 位,以秒為單位)的模塊。如果器件發(fā)生復位,或者器件進入 CONFIG_UPDATE 模式,則這些值將重置。 |
| 0x0087 CBSTATUS3() | 執(zhí)行讀取操作后,返回一個包含電池 9 至 16 中每節(jié)電池的累計平衡時間(32 位,以秒為單位)的模塊。如果器件發(fā)生復位,或者器件進入 CONFIG_UPDATE 模式,則這些值將重置。 |
使用上述子命令啟動主機控制型平衡后,該器件會啟動一個計時器,并將繼續(xù)執(zhí)行平衡,直到該計時器達到值 Settings:Cell Balancing Config:Cell Balance Interval 或發(fā)出新的平衡子命令(該子命令用于將計時器復位)。之所以將這一點列為預防措施,是考慮到主機處理器啟動平衡、但隨后又停止與 BQ769x2 器件通信的情況,這種情況會導致平衡無限期停止。
有關相鄰電池平衡的說明:進行主機控制型平衡時應注意確保功率耗散處于安全水平。在自主模式下無法實現(xiàn)相鄰電池平衡,但可以在主機控制模式下實現(xiàn)。僅在特殊情況下并經過仔細考慮后才應進行相鄰電池平衡。必須注意不要超過 100mA(絕對最大值)的電池平衡電流限值或 VC0(絕對最大值)的輸入電壓限值。