- 向電芯電壓輸入端施加已知的電壓(以 mV 為單位):
- 在 VC1 引腳和 VSS 引腳之間施加 VCELL1
- 在 VC2 引腳和 VC1 引腳之間施加 VCELL2
- 在 VC3 引腳和 VC2 引腳之間施加 VCELL3
- 在 VC4 引腳和 VC3 引腳之間施加 VCELL4
- 如果 ManufacturerStatus()[CAL] = 0,則向 ManufacturerAccess() 發送 0x002D 以啟用 [CAL] 標志。
- 向 ManufacturerAccess() 發送 0xF081 或 0xF082 以在 ManufacturerData() 上啟用原始電芯電壓輸出。
- 在讀取數據之前輪詢 ManufacturerData(),直到 8 位計數器值遞增 2。
- 從 ManufacturerData() 獲取電芯電壓的 ADC 轉換讀數:
ManufacturerData() 的 ADCCELL1 = BBbb
ADCCELL1 是否小于 0x8000?如果是,則使用 ADCCELL1;否則 ADCCELL1 = –(0xFFFF – BBbb + 0x0001)。
- 取多個讀數的平均值以實現更高的精度。輪詢 ManufacturerData(),直到 ZZ 遞增以指示更新的值可用:
ADCCELL1 = [ADCCELL1(reading n) + … + ADCCELL1(reading 1)]/n
-
對所有電芯求平均值,用所有電壓的平均值來創建單個電芯增益:
方程式 1.
- 將新的 Cell Gain 值寫入數據閃存。
- 重新檢查電壓讀數,如果讀數不準確,則重復執行步驟 4 至 8。
- 如果所有校準都已完成,則向 ManufacturerAccess() 發送 0x002D 以清除 [CAL] 標志。