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.

[参考译文] EV2400:使用.df.fs 文件和 CMAPI 对 BQ34z100进行编程时出现问题。 h

Guru**** 2468610 points
Other Parts Discussed in Thread: BQ34Z100, EV2400

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1421717/ev2400-problems-when-programming-a-bq34z100-using-a-df-fs-file-and-cmapi-h

器件型号:EV2400
Thread 中讨论的其他器件:BQ34Z100

工具与软件:

您好!

 首先是某个上下文、我尝试创建一个能够使用.df.fs 文件对 BQ34z100进行编程的 C++函数。 硬件方面、我使用的 EV2400连接到 Windows 11上的计算机。 EV2400连接到 I2C 中的 BQ34z100。 df.fs 文件是使用 Battery Management Studio 生成的。 我的函数能够读取文件并解释每一行、以获得操作(W/C/X)以及 I2C 地址、寄存器和数据。  

我的函数能够编写和比较简单的消息,如文件的第一部分:  

我的问题是、当尝试写入一个100字节的块时、CMAPI.h 中的 SDKI2CWriteBlock 函数返回一个错误。 我试图在线寻找答案、但除了在2020年生成的 doxygen 生成的文档之外、我没有找到任何答案。

是否有可以使用 SDKI2CWriteBlock 写入的最大字节数?   

我做了多次测试来尝试找到一个有效的解决方案、发现了一些我不理解的东西、当我将要写入的字节数减少到30时、SDKI2CWriteBlock 函数返回一个错误、但当我将要写入的字节数更改为34时、SDKI2CWriteBlock 函数会正常工作。

为什么该函数的有效长度为34字节、而不是30字节?

我尝试使用 Battery Management Studio 写入相同的数据块、它很有效。 对.srec 和.df.fs 进行编程、可以完美配合 Battery Management Studio 进行工作、因此这意味着这不是硬件问题。

为什么 Battery Management Studio 能够使用带有100字节块的 SDKI2CWriteBlock、但当我使用该函数时、它不起作用?