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.

[参考译文] BQ76920:CC 结果极性反转

Guru**** 2538960 points
Other Parts Discussed in Thread: BQ76920

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/843298/bq76920-cc-result-is-reversed-polarity

器件型号:BQ76920

您好、TI 团队、

我 在一个电路板设计中成功使用了 bq76920、从未出现任何问题。 最近我不得不更改 MCU、但其余的电路板和 PCB 设计没有更改。 当为新 MCU、特别是 I2C 库写入固件、从 bq76920芯片读取数据时、我发现 CC 16位寄存器数据的极性相反。 所有其他寄存器按预期工作。 我的意思是、在充电期间、CC 值为负、在放电期间、该值为正、与我在我们的第一块电路板上所期望的值和所看到的值相反。 这些值似乎正确地表示了分流器上的电压振幅、但符号相反。 这怎么可能实现呢? 该电路与我们制造的第一块电路板相同、引脚 SRN 和 SRP 仍以与参考设计相同的极性进行连接。 这毫无意义。 有什么想法如何解决这个问题?

我检查了具有示波器的 I2C 以了解正确的时序和边沿、它看起来非常干净。 我正在原子模式下读取16位寄存器、一次 I2C 传输中读取2个字节。

唯一的区别是旧 MCU 具有硬件 I2C、而新 MCU 没有、因此我使用 Bit-bang 库、但我已逐位彻底检查了通信内容、其中包括示波器、所有内容看起来都很干净。 我可以正确读取/写入所有寄存器、包括电芯电压、这些电芯电压也作为单个块读取。 CC 数据的符号是唯一的问题。

谢谢

Dimitri

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

    您好、Dimitri、

    这似乎确实很奇怪。 BQ76920在旧电路板和新电路板之间的行为不应有所不同、我首先要检查的是 SRP/SRN 连接、但您已经确认这些连接正确。 CC 寄存器是16位二进制补码、而电压读数是14位-我想知道 MCU 对这些值的解释是否有任何错误。 如果您从示波器获取原始值、您是否能够验证原始代码上的符号是否确实反转?

    此致、

    Matt

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

    Matt、

    感谢您的快速响应。 我觉得即使发布这个问题也很愚蠢、因为这毫无意义、但我花了3天时间尝试解决这个问题、我无法解释。

    示波器清楚地显示了负值/正值、因为很容易看到大多数位由于二进制补码编码而一起翻转。

    我还调试了十六进制格式的数据、以确保位值在转换为有符号十进制值时被正确解释。

    现在、我只需反转登录软件即可更正它、即使它与参考设计和数据表相反。 希望在某个时候找到根本原因。

    Dimitri

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

    您好、Dimitri、

    如果您在某个时候确实找到了根本原因、请告诉我。 它可能是其他用户可以从中学习的内容。

    我现在将关闭此主题、如果您用任何新内容进行回复、它将自动重新打开。

    此致、

    Matt