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、但当我使用该函数时、它不起作用?