ZHCUAN8A April   2016  – November 2022 BQ27220

 

  1.   使用前必读
    1. 1.1 关于本手册
    2. 1.2 本文档中使用的格式约定:
    3. 1.3 米6体育平台手机版_好二三四 (TI) 相关文档
    4. 1.4 商标
  2. 2总体描述
    1. 2.1 Gas Gauging
      1. 2.1.1  CEDV 电量监测操作概述
      2. 2.1.2  主要电量监测计寄存器
      3. 2.1.3  容量学习(FCC 更新)和合格的放电
      4. 2.1.4  放电结束阈值和容量校正
      5. 2.1.5  EDV 放电率和温度补偿
      6. 2.1.6  EDV Age Factor
      7. 2.1.7  自放电
      8. 2.1.8  电池电子负载补偿
      9. 2.1.9  CEDV 配置
      10. 2.1.10 器件复位时的初始电池容量
      11. 2.1.11 电量监测计工作模式
      12. 2.1.12 Qmax
      13. 2.1.13 CEDV 平滑处理
  3. 3标准数据命令
    1. 3.1  标准命令
    2. 3.2  Control()/CONTROL_STATUS():0x00 和 0x01
      1. 3.2.1  CONTROL_STATUS:0x0000
      2. 3.2.2  DEVICE_NUMBER:0x0001
      3. 3.2.3  FW_VERSION:0x0002
      4. 3.2.4  HW_VERSION:0x0003
      5. 3.2.5  BOARD_OFFSET:0x0009
      6. 3.2.6  CC_OFFSET:0x000A
      7. 3.2.7  CC_OFFSET_SAVE:0x000B
      8. 3.2.8  OCV_CMD:0x000C
      9. 3.2.9  BAT_INSERT:0x000D
      10. 3.2.10 BAT_REMOVE:0x000E
      11. 3.2.11 SET_SNOOZE:0x0013
      12. 3.2.12 CLEAR_SNOOZE:0x0014
      13. 3.2.13 SET_PROFILE_1/2/3/4/5/6:0x0015–0x001A
      14. 3.2.14 CAL_TOGGLE:0x002D
      15. 3.2.15 SEALED:0x0030
      16. 3.2.16 RESET:0x0041
      17. 3.2.17 OPERATION_STATUS:0x0054
      18. 3.2.18 GaugingStatus:0x0056
      19. 3.2.19 EXIT_CAL:0x0080
      20. 3.2.20 ENTER_CAL:0x0081
      21. 3.2.21 ENTER_CFG_UPDATE:0x0090
      22. 3.2.22 EXIT_CFG_UPDATE_REINIT:0x0091
      23. 3.2.23 EXIT_CFG_UPDATE:0x0092
      24. 3.2.24 ENTER_ROM:0x0F00
    3. 3.3  AtRate():0x02 和 0x03
    4. 3.4  AtRateTimeToEmpty():0x04 和 0x05
    5. 3.5  Temperature():0x06 和 0x07
    6. 3.6  Voltage():0x08 和 0x09
    7. 3.7  BatteryStatus():0x0A 和 0x0B
    8. 3.8  Current():0x0C 和 0x0D
    9. 3.9  RemainingCapacity():0x10 和 0x11
    10. 3.10 FullChargeCapacity():0x12 和 0x13
    11. 3.11 TimeToEmpty():0x16 和 0x17
    12. 3.12 TimeToFull():0x18 和 0x19
    13. 3.13 StandbyCurrent():0x1A 和 0x1B
    14. 3.14 StandbyTimeToEmpty():0x1C 和 0x1D
    15. 3.15 MaxLoadCurrent():0x1E 和 0x1F
    16. 3.16 MaxLoadTimeToEmpty():0x20 和 0x21
    17. 3.17 RawCoulombCount():0x22 和 0x23
    18. 3.18 AveragePower():0x24 和 0x25
    19. 3.19 InternalTemperature():0x28 和 0x29
    20. 3.20 CycleCount():0x2A 和 0x2B
    21. 3.21 StateOfCharge():0x2C 和 0x2D
    22. 3.22 StateOfHealth():0x2E 和 0x2F
    23. 3.23 ChargingVoltage():0x30 和 0x31
    24. 3.24 ChargingCurrent():0x32 和 0x33
    25. 3.25 BTPDischargeSet():0x34 和 0x35
    26. 3.26 BTPChargeSet():0x36 和 0x37
    27. 3.27 OperationStatus():0x3A 和 0x3B
    28. 3.28 DesignCapacity():0x3C 和 0x3D
    29. 3.29 MACData():0x40 至 0x5F
    30. 3.30 MACDataSum():0x60
    31. 3.31 MACDataLen():0x61
    32. 3.32 AnalogCount():0x79
    33. 3.33 RawCurrent():0x7A 和 0x7B
    34. 3.34 RawVoltage():0x7C 和 0x7D
  4. 4数据存储器接口
    1. 4.1 访问数据存储器
    2. 4.2 器件访问模式
    3. 4.3 密封和解封数据存储器访问
    4. 4.4 数据存储器汇总
  5. 5功能说明
    1. 5.1 器件配置
      1. 5.1.1 CEDV Smoothing Config 寄存器
      2. 5.1.2 操作配置 A (Operation Config A) 寄存器
      3. 5.1.3 操作配置 B (Operation Config B) 寄存器
    2. 5.2 外部引脚功能
      1. 5.2.1 引脚功能代码 (PFC) 说明
      2. 5.2.2 使用 BIN/TOUT 引脚进行电池存在性检测
      3. 5.2.3 SOC_INT 引脚行为
      4. 5.2.4 使用 BAT_GD 引脚进行电源路径控制
      5. 5.2.5 电池跳变点 (BTP) 中断
      6. 5.2.6 唤醒比较器
      7. 5.2.7 自动校准
    3. 5.3 温度测量
      1. 5.3.1 过热指示
        1. 5.3.1.1 过热:电荷
        2. 5.3.1.2 过热:放电
    4. 5.4 充电和充电终止指示
      1. 5.4.1 检测充电终止
      2. 5.4.2 充电禁止
    5. 5.5 功率模式
      1. 5.5.1 NORMAL 模式
      2. 5.5.2 SLEEP 模式
    6. 5.6 CONFIG UPDATE 模式
    7. 5.7 BAT INSERT CHECK 模式
    8. 5.8 应用特定信息
      1. 5.8.1 电池曲线存储和选择
      2. 5.8.2 第一次 OCV 测量
    9. 5.9 附加数据存储器参数说明
      1. 5.9.1  校准
        1. 5.9.1.1 CC Gain
        2. 5.9.1.2 CC Delta
      2. 5.9.2  Coulomb Counter Offset
      3. 5.9.3  Board Offset
      4. 5.9.4  Int Temp Offset
      5. 5.9.5  Ext Temp Offset
      6. 5.9.6  电池包 VOffset
      7. 5.9.7  内部温度模型
      8. 5.9.8  Ext a Coef 和 Ext b Coef
      9. 5.9.9  滤波器
      10. 5.9.10 Deadband
      11. 5.9.11 CC Deadband
      12. 5.9.12 SOC 标志配置 A (SOC Flag Config A) 寄存器
      13. 5.9.13 SOC 标志配置 B (SOC Flag Config B) 寄存器
      14. 5.9.14 CEDV Gauging Configuration (CEDV Config) 寄存器
      15. 5.9.15 EMF
      16. 5.9.16 C0
      17. 5.9.17 R0
      18. 5.9.18 T0
      19. 5.9.19 R1
      20. 5.9.20 TC
      21. 5.9.21 C1
      22. 5.9.22 Age Factor
      23. 5.9.23 Fixed EDV0
      24. 5.9.24 Fixed EDV1
      25. 5.9.25 Fixed EDV2
      26. 5.9.26 Battery Low %
      27. 5.9.27 Low Temp Learning
      28. 5.9.28 Overload Current
      29. 5.9.29 Self Discharge Rate
      30. 5.9.30 电子负载
      31. 5.9.31 Near Full
      32. 5.9.32 Reserve Capacity
      33. 5.9.33 充电效率
      34. 5.9.34 放电效率
      35. 5.9.35 Qmax Cell 1 和 Qmax Pack
      36. 5.9.36 Learned Full Charge Capacity
      37. 5.9.37 DOD at EDV2
      38. 5.9.38 Cycle Count
      39. 5.9.39 Design Capacity
      40. 5.9.40 Design Voltage
      41. 5.9.41 Cycle Count %
      42. 5.9.42 Charge Inhibit Temp Low
      43. 5.9.43 Charge Inhibit Temp High
      44. 5.9.44 Temp Hys
      45. 5.9.45 Fast Charge Current
      46. 5.9.46 充电电压
      47. 5.9.47 Taper Current
      48. 5.9.48 Taper Voltage
      49. 5.9.49 SOC Delta
      50. 5.9.50 时钟控制寄存器
      51. 5.9.51 Sleep Current
      52. 5.9.52 偏移校准抑制低温
      53. 5.9.53 偏移校准抑制高温
      54. 5.9.54 Sleep Voltage Time
      55. 5.9.55 Sleep Current Time
      56. 5.9.56 Dsg Current Threshold
      57. 5.9.57 Chg Current Threshold
      58. 5.9.58 Quit Current
      59. 5.9.59 Dsg Relax Time
      60. 5.9.60 Chg Relax Time
      61. 5.9.61 Quit Relax Time
      62. 5.9.62 OT 充电
        1. 5.9.62.1 OT 充电时间
      63. 5.9.63 OT Chg Recovery
      64. 5.9.64 OT 放电
        1. 5.9.64.1 OT 放电时间
      65. 5.9.65 OT Dsg Recovery
      66. 5.9.66 初始待机电流
      67. 5.9.67 默认温度
      68. 5.9.68 器件名称
      69. 5.9.69 系统停机设置电压
      70. 5.9.70 系统停机设置电压时间
      71. 5.9.71 系统停机清除电压
      72. 5.9.72 Full Reset Counter
      73. 5.9.73 复位计数器看门狗
  6. 6通信
    1. 6.1 I2C 接口
    2. 6.2 I2C 超时
    3. 6.3 I2C 命令等待时间
    4. 6.4 I2C 时钟延展
  7. 7应用示例
    1. 7.1 数据存储器参数更新示例
  8. 8开路电压测量背景
    1. 8.1 背景
      1. 8.1.1 OCV 鉴定和计算
      2. 8.1.2 OCV 计算假设
      3. 8.1.3 OCV 时序
    2. 8.2 OCV 时序和 OCV_CMD 使用建议
      1. 8.2.1 ACTIVE 模式(电量监测计未处于 SLEEP 模式)
      2. 8.2.2 SLEEP 模式
      3. 8.2.3 初始 OCV – POR
  9. 9更新 BQ27220 配置参数
    1. 9.1  电量监测计模式 FlashStream (gm.fs) 文件
      1. 9.1.1 写入命令
      2. 9.1.2 读取和比较命令
      3. 9.1.3 等待命令
      4. 9.1.4 CONFIG UPDATE 模式
    2. 9.2  OTP 模式 FlashStream (ot.fs) 文件
      1. 9.2.1 写入命令
      2. 9.2.2 读取和比较命令
      3. 9.2.3 等待命令
      4. 9.2.4 CONFIG UPDATE 模式
    3. 9.3  编程指令
      1. 9.3.1 使用 gm.fs 文件
      2. 9.3.2 使用 ot.fs 文件
    4. 9.4  用于对 OTP 进行编程的常规设置和软件安装
    5. 9.5  启动 BQStudio 软件
    6. 9.6  加载 .GG 文件
    7. 9.7  确认或更新数据存储器参数
    8. 9.8  保存 .OTFS 文件
    9. 9.9  启动 SmartFlash 软件
    10. 9.10 打开 Ot.fs 文件
    11. 9.11 对 OTP 进行编程
    12. 9.12 确认成功
  10.   A 电池电量监测计术语表
    1.     A.1 术语表
  11.   B 修订历史记录

数据存储器参数更新示例

以下示例展示了修改 RAM 中的数据存储器参数所需的命令序列。在该示例中,默认 Design Capacity 从 3000mAh 更新为 1200mAh。所有器件写入 (wr) 和读取 (rd) 均分别指 I2C 8 位地址 0xAA 和 0XAB。地址 0x3E 用于对 RAM 进行更改,因为无法对给定参数的直接地址进行这些更改。这可以确保 RAM 不会因不正确的写入而损坏。

步进说明伪代码
1如果器件之前处于 SEALED 模式,则通过向 Control()(0x00 和 0x01)发送相应的密钥使其处于 UNSEAL 模式。//Two-byte incremental method
wr 0x00 0x14 0x04;
wr 0x00 0x72 0x36;
//Alternative single byte method
wr 0x00 0x14;
wr 0x01 0x04;
wr 0x00 0x72;
wr 0x01 0x36;
2BQ27220 以 UNSEAL 模式启动,但不处于 FULL ACCESS 模式。进入 FULL ACCESS 模式以访问数据存储器。//Two-byte incremental method
wr 0x00 0xFF 0xFF;
wr 0x00 0xFF 0xFF;
//Alternative single byte method
wr 0x00 0xFF;
wr 0x01 0XFF;
wr 0x00 0xFF;
wr 0x01 0xFF;
3发送 ENTER_CGF_UPDATE 命令 (0x0090)。wr 0x00 0x90 0x00;
4通过轮询 OperationStatus() 寄存器直到位 2 被设置来确认 CFGUPDATE 模式。可能最多需要 1 秒。rd 0x3B OperationStatus();
5将 0x9F 写入 0x3E 以访问 Design Capacity 的 MSB。wr 0x3E 0X9F;
6将 0x92 写入 0x3F 以访问 Design Capacity 的 LSB。wr 0x3F 0X92;
7使用 MACDataSum() 命令 (0x60) 读取 1 字节校验和。rd 0x60 Old_Chksum;
8使用 MACDataLen() 命令 (0x61) 读取 1 字节块长度。rd 0x61 Data_len;
9从 0x40 开始读取两个 Design Capacity 字节。rd 0x40 Old_DC_MSB;
rd 0x41 Old_DC_LSB;
10从 0x40 开始读取写入两个 Design Capacity 字节。在该示例中,新值为 1200mAh。(以十六进制表示为 0x04B0)wr 0x40 0x04;
wr 0X41 0XB0;
11计算新校验和。校验和为 (255 – x),其中 x 是逐字节的 BlockData() 8 位总和(0x40 至 0x5F)。计算新校验和的一种快速方法是使用新旧数据总和字节的数据替换方法。请参阅所示方法的代码。Temp = mod(255 – Old_Chksum
– OLD_DC_MSB
– OLD_DC_LSB, 256);
New_Chksum = 255 – mod(temp + 0x04 + 0Xb0, 256);
12写入新校验和。
在该示例中,New_Chksum 为 0XB0。
wr 0x60 New_Chksum;
//Example: wr 0x60 0XB0;
13写入块长度。当整个块的正确校验和以及长度被写入时,数据实际上被传输到 RAM 中。
在该示例中,Data_len 为 0x24。
wr 0x61 Data_len;
//Example: wr 0x61 0X24;
14通过发送 EXIT_CFG_UPDATE_REINIT (0x0091) 或 EXIT_CFG_UPDATE (0x0092) 命令退出 CFGUPDATE 模式。wr 0x00 0x91 0x00;
or
wr 0x00 0x92 0x00;
15通过轮询 OperationStatus() 寄存器直到位 2 被清除来确认 CFGUPDATE 模式。可能最多需要 1 秒。rd 0x3B OperationStatus();
16如果器件之前处于 SEALED 状态,则通过发送 Control (0x0030) 子命令来返回至 SEALED 模式。wr 0x00 0x30 0x00;