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.

[参考译文] BQ27441-G1:不通过 I2C 进行通信

Guru**** 2540720 points
Other Parts Discussed in Thread: BQ51050B

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1061770/bq27441-g1-no-communication-over-i2c

器件型号:BQ27441-G1
主题中讨论的其他器件:BQ51050B

尊敬的 TI 团队:

电池电量监测计有一些奇怪的问题。

由于我们的代码没有变化、我们无法通过 I2C 与监测计进行通信。

监测计的 Vdd 为1.8V。

I2C SCL 和 SDA 线路为高电平(但我们也有一种情况、即 SCL 或 SDA 为永久低电平、Vdd 为0V)。

我们已经尝试过但未能正常工作的事情:
-通过拉低 I2C SDA/SCL 来重置通信引擎2秒(甚至尝试3秒和4秒) https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/967941/bq27542-g1-fuel-gauge-holding-the-scl-line-to-low-and-i2c-bus-locked---working-only-by-doing-a-power-reset-that-is-not-possible-in-our-device

-将 GPOUT 拉低1ms 以尝试唤醒监测计。

-通过 I2C 发送复位和软复位命令

通过执行以下步骤、我们能够重现此状态:

-连接的电池为空

-将我们的器件连接到 QI 充电器(器件上的充电器芯片: BQ51050B)

-现在电量监测计不会响应任何 i2c 通信

我们使监测计再次工作的唯一方法是在监测计通过电池供电时重新连接电池、这 对我们来说不是一种合适的解决方法、因为我们在现场有数千个器件。

提前感谢您的支持!

谢谢、

克莱明

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

    监测计在您连接电池后和连接 QI 充电器之前是否响应?

    您重现此问题的可靠性如何?

    这是否始终与连接电池相关?

    电池的电压是多少(您提到空电池-但这意味着电池电压是多少)?

    在此过程中、监测计是否有可能暂时断电? 如果出于任何原因、在为监测计加电之前对 VDD 上的电容器进行充电、并且在这种情况下、如果电容器对监测计反向供电、则监测计可能无法可靠启动。

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

    很抱歉、重现问题的步骤有误导性、我刚刚对其进行了编辑。 电池仍然连接、但电量耗尽。 连接 QI 充电器充电后、我们的器件开始工作、但监测计不工作。

    我能够可靠地重现它。 电池确实需要放电、然后在连接充电器之前应该放松几个小时。

    当电池电量耗尽时、它始终与连接 Qi 充电器相关。

    万用表读数为0V

    我将了解暂时的功率损耗。

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

    我还尝试了以下操作:
    -将 SCL 拉至低电平2000ms

    -将 SDA 拉低2000ms

    -尝试写入0x16 (0x0F 到 I2C 寄存器0x00、 0x0F 0x00到 I2C 寄存器0x64和0x65)、但导致 NACK。

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

    充电器连接期间电池电压似乎稳定。  

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

    我无法使画面更加清晰(TI 的内部网络会阻止图像托管服务)。

    请说明:当电池电量耗尽时、电池电压为0V (我假设保护器打开保护 FET)。 空的可再充电电池通常仍具有足够高的电压、足以为电量监测计供电、因此这看起来好像存在欠压保护事件、对吧?

    连接 QI 充电器时、这会如何影响引脚6 BAT 上的电压、以及连接 QI 充电器时引脚5 VDD 上的电压? 您有屏幕截图吗? 该论坛将允许您直接插入图片。 单击"插入"并单击上载行、然后浏览到 PC 上的图像。 例如:

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

    是的、电池处于欠压保护状态。

    我没有屏幕截图、但我将尝试重现问题并将其捕获。

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

    对于没有响应的监测计、您可以尝试以下操作吗:

    检查是否可以从 I2C 器件地址0x16 (8位扩展或0x0B 7位)读取一个字节、而不是从0xAA (8位扩展或0x55 7位)读取?

    在某些情况下、监测计会在加电时启动不同的固件、该固件会在0x16而非0xAA 上响应。 这是仅限 TI 内部诊断固件。 如果它在0x16上响应、则可以发送命令来启动实际的监测 FW、这可能是可行的解决方案。 是否可以共享原理图?

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

    监测计不会对此地址做出响应。

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

    连接充电器时 GPIO_Gauge 的状态是什么? 主机 uC 是否在3秒加电斜坡期间驱动此低电平或高电平、或者是否为高阻抗? 监测计将在启动期间使用推挽配置中的此引脚、并且这不得违反 VDD+0.3V 限制(请参阅表8.1)

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

    它应该是高电平。 uC 输出配置为开漏、不驱动为低电平。 该引脚会在10k 上拉高至系统的 VDD (3.3V)。

    那么、我们应该使用软件控制的上拉电阻器、而不是焊接的上拉电阻器吗?

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

    如果能够重现故障、我建议将下拉电阻器(而不是上拉电阻器)焊接到 GPOUT。 监测计在启动期间短暂地将此引脚用作输出、将其驱动为高电平和低电平、因此如果其他器件(例如 uC)驱动它、则它将短路。 如果拉至3.3V、则高于 VDD+0.3V (监测计 LDO 的 VDD = 1.8V)、因此也不起作用。 必须使用电阻器将其拉至接地。

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

    好的、我们将尝试这个。 在本应用手册或数据表中、监测计在引导期间将 GPOUT 驱动为高电平和低电平。 我只发现它被配置为开漏输出。

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

    通过在 GPOUT 上使用10k 下拉电阻器、我们仍然能够重现故障。

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

    感谢您检查 GPOUT。 这排除了几个潜在原因。

    上个月早些时候我问过 VDD 状态的问题:"连接 QI 充电器时、VDD 引脚5上的电压是多少?"

    如果再次为监测计加电时 VDD 上的电压不为零、监测计可能无法启动。 这是一种非常不寻常的情况、因为如果监测计断电、监测计的内部电路将使 VDD 上的电容器放电。 但是、如果功率损耗突变(例如、BAT 上的电容器(原理图中的 C217)由于电路板上其他电路的功耗而在几微秒内放电)、 则监测计不会在 VDD 上打开低阻抗路径、VDD 电容器(C215)上的电荷会长时间停留。 如果 VDD 上的电压由于该电容器而不接近于零、则可能会导致启动问题。 这是我可以想到的唯一的剩余行动机制。

    这种影响是否与电池由于低电压保护事件从电量监测计断开的时间相关? 如果这是一种测试场景、在发生保护事件后几秒钟内连接充电器、则 VDD 上的电容器可能仍然充电过高。 如果这是电池长时间(几分钟、几小时...)断开连接的用例 那么、这是我无法用提供的信息识别的另一个根本原因。