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.

[参考译文] BQ76952EVM:BQstudio CRC 错误

Guru**** 2770995 points

Other Parts Discussed in Thread: BQ76952, BQSTUDIO

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/942068/bq76952evm-bqstudio-crc-error

器件型号:BQ76952EVM
主题中讨论的其他器件:BQ76952BQSTUDIO

我正在使用 BQ Studio 读取和写入 bq76952的寄存器。 当前通信模式为默认模式、即 I2C。 当我使用命令序列选项卡发送任何命令读取/写入时、它会提供 CRC (十六进制)。 如何根据给定的文档方法计算它、还会生成其他一些东西。

做不必要的事

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

    您好 Dileep、

    您能给我一个您观察到的情况示例吗?  

    谢谢、

    Matt

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

    您好、Matt、  

    我要附上命令的屏幕截图。 这里的 CRC 命令参数是0x10 (Write Add) 0x14 (command) 0x11 (Read Address) 0xEF (Data LSB) 0x0D (Data MSB)、在这种情况下、CRC 将是0x67。 但是、正如您在图像中所能看到的、它显示了0x03 (十六进制 CRC)。

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

    您好 Dileep、

    您的图像未显示在帖子中。 是否可以尝试重新发送图像?

    我在软件开发指南(请参阅第4节)中确实有几个 CRC 示例: https://www.ti.com/lit/an/sluaa11/sluaa11.pdf

    其中一个示例显示了您正在尝试的相同的电池1电压读取(命令0x14):

    0x10 0x14 0x11 0x68 0x33 0x0B 0x31。 在这个序列中、0x33是[0x10 0x14 0x11 0x68]的 CRC、0x31是第2个字节[0x0B]的 CRC。

    此示例使用重复起始。 如果您的事务具有 I2C 停止、然后是开始、它将更改第一个 CRC 计算(不包括0x10 0x14)。

    此致、

    Matt

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

    您好、Matt、  

    我看到了这些例子,并且已经完成了这份文件。 但我的问题是 、在默认情况 下没有 CRC、但当我要使用 BqStudio 的"命令序列"选项卡时、它会显示一列 CRC、但该值与示例中的值不同。

    我要附上一个快照、请看一下。

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

    我还想补充一点、有时 还会接收到车库值。 大多数情况下为 CC2。

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

    您好 Dileep、

    我看到混乱在哪里。 在命令序列屏幕的 BQStudio 中显示的 CRC 有所不同-它不是器件返回的实际 CRC。 我不能完全确定为什么在"Command Sequence"(命令序列)窗口中显示此信息。 我想您在 I2C 总线上看到了奇怪的 CRC。

    我认为 BQStudio 中的该值是数据字节总和的倒数之和。 例如、NOT (0xEA + 0x0D)= 0x08。  

    默认情况下、BQ76952未启用 CRC。 如果通过将 Comm Type 更改为0x12来启用它、然后单击 SWAP_COMM_MODE 命令并重新启动 BQStudio、则器件将在 CRC 模式下与 BQStudio 通信。 当您使用0x14命令读取 CELL1电压时、I2C 读取将显示2个不同的 CRC 字节、正如我在上次答复中所描述的那样。 "Command"窗口不会显示来自 I2C 总线的 CRC。

    CC2读数每3ms 更新一次(如果 FASTADC=1、则每1.5ms 更新一次)。  

    此致、

    Matt

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

    您好、Matt、

    请举几个读取子命令和写入子命令的 CRC 示例

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

    您好 Dileep、

    请参阅下图以了解两个示例:

    此致、

    Matt

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

    谢谢 Matt。

     我已经完成了同样的操作、这就是我要求"子命令读取/写入"的原因。 无论如何,我自己也做到了这一点。