BQ76952 中数据存储器值的访问方式与子命令类似,使用数据值的地址,而不使用子命令地址。例如,要将 Calibration:Voltage:Cell 1 Gain 写入值 12410 (0x307A),请从数据存储器汇总表中确定寄存器地址,此表显示该地址为 0x9180。然后按如下所示写入数据:
- 将地址的低位字节写入 0x3E(本例中为 0x80)。
- 将地址的高位字节写入 0x3F(本例中为 0x91)。
- 将数据存储器值以小端字节序的格式写入传输缓冲区(0x40 至 0x5F)。注意:一次块写入最多可写入 32 字节的数据存储器。在本例中,将 0x7A 写入 0x40,将 0x30 写入 0x41。
- 将写入数据的校验和(本例中为 0x44)写入 0x60,将数据长度(本例中为 0x06)写入 0x61。
- 可以通过读回数据来对其进行验证。将地址的低位字节写入 0x3E (0x80),将地址的高位字节写入 0x3F (0x91)。
- 从 0x61 读取响应的长度。传输缓冲区中将填充 32 字节的数据块,因此长度将为 36 字节,在本例中为 0x24。
- 从 0x40 开始读取数据长度的缓冲区。在 0x40 (0x7A) 和 0x41 (0x30) 中可以看到Calibration:Voltage:Cell 1 Gain 的新值。
- 读取 0x60 处的校验和并验证其是否与为整个传输缓冲区读取的数据相匹配。
注意:0x61 提供缓冲区数据的长度 + 4(即缓冲区数据的长度 + 0x3E 和 0x3F 的长度 + 0x60 和 0x61 的长度)。
校验和是通过 0x3E 和 0x3F 以及缓冲区数据计算得出的,其不包括 0x60 和 0x61 中的校验和或长度。
下述各章节显示了 BQ76952 器件的配置设置。