This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BQ34Z100-G1:使用微控制器对.bq.fs 进行编程、gauge.c 演示中出错

Guru**** 2584575 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/753930/bq34z100-g1-programming-bq-fs-using-microcontroller-errors-in-gauge-c-demonstration

器件型号:BQ34Z100-G1

您好!

我尝试使用 i2c 总线上的微控制器而不是使用 battery management Studio 使用黄金映像对电量监测计进行编程。

我们的 bq.fs 文件的长度为180k、十六进制行通常每行具有100字节的十六进制字符(这是由 bq studio 生成的)

示例

;------------------------------------------------------------
;解除设备密封
;------------------------------------------------------------
W:AA 00 14 04
W:AA 00 72 36
W:AA 00 FF FF
W:AA 00 FF FF
X:1000
;------------------------------------------------------------
;进入 ROM 模式
;------------------------------------------------------------
W:AA 00 0F
X:1000
;------------------------------------------------------------
;数据块
;------------------------------------------------------------
宽:16 00 04 00 00 83度
W:16 64 65 01
X:200
C:16 66 00
W:16 00 02 00 00 00 EA FF 33 B1 FA 33 6C FB 33 95 FE 33 AD FE 33 FF 3F FF FF FF 3F FF FF FF 3F FF FF FF FF 3F FF FF FF FF 3F FF FF FF FF 3F FF FF FF FF 3F FF FF FF 3F FF FF. <总共102字节>
宽:16 64 1A 37
X:2.
C:16 66 00
W:16 00 02 01 00 01 00 01 4F 03 3F 11 0C D9 FF 30 E0 FF 35 2F 10 0C E0 FF 35 FF FF 23 FF DF 0B D8 FF 33 E3… <总共102字节>
宽:16 64 A6 2D
X:2.
C:16 66 00
W:16 00 02 02 00 00 FF 1B 0E 96 FF 36 02 AF 18 7F BF 0E 02 CF 02 00 A7 18 01 A6 18 02 AB 18 DF 2B 0E FF… <总共102字节>

我对这种格式和 slua801.pdf 中显示的示例代码有几个问题。

1) 1)进入 ROM 模式时、I2C 地址从0xAA 更改为0x16是否正常?

2) 2) gauge.c 解析器将在下面所示的点失败、因为解析器预计最大行长度为32个数据字节、pData 是一个32字节的数组。 解决方案是否只是扩展缓冲区大小以允许最长的线长度(将 pData 增加到100+字节?)的一个案例、或者是否需要其他工作。

PFS++;

N = 0;

while ((pend - pfs > 2)&&(n < sizeof (pData)+ 2)&&(* pfs!='\n')
pBuf[0]=*(PFS++);
pBuf[1]=*(PFS++);
pBuf[2]= 0;
 

谢谢

格伦