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.

[参考译文] BQ76925:如何在 I2C 失败后复位 BQ76925

Guru**** 2663045 points

Other Parts Discussed in Thread: BQ76925

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/983669/bq76925-how-to-reset-bq76925-after-i2c-failed

器件型号:BQ76925

大家好、

我的客户有一些问题:

1.当发生 I2C 故障时如何处理 BQ76925? 故障是 I2C 总线瞬态首先短路、然后通过软件恢复。

2.如何复位 BQ76925?

背景是、我的客户发现在 I2C 发生故障后、他们仍然可以使用 I2C 通信、但电压感应数据在发生故障前仍保留数据且不更新。 他们想知道如何解决这个问题。

谢谢!

此致、

Xing

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

    您好 Xing、

    BQ76925没有复位引脚。  如果 I2C 由于干扰或瞬态短路而卡住、导致 BQ76925等响应器件将总线保持在低电平、主机应发送时钟来清除总线、直到从器件释放总线。  似乎主机正在执行此操作。  BQ76925的状态可能会因总线错误而发生变化、因此所有寄存器都应重新写入所需的值。

    BQ76925有2种复位方法、一种是电池连接、另一种是从关断状态唤醒。 电池连接在系统中不实用。  如果主机由单独的电源供电、则可以通过将其发送到睡眠模式、等待 V3P3下降并使用警报信号唤醒器件来复位该器件。  这将复位逻辑并且 POR 位被置位。  如果主机由 V3P3供电、则需要进行其他一些干预才能从睡眠模式中唤醒。

    BQ76925是一款模拟输出监控器。  MCU 必须将输出数字化为一个值。  如果瞬态仅锁定总线、它们可能不会更改 CELL_CTL 寄存器的设置、该寄存器决定在 VCOUT 上输出哪个电芯或源极、而 POWER_CTL 寄存器具有用于 VCOUT 驱动器的使能位。 如果在瞬态事件中未更改这些寄存器、则 BQ76925应输出相同的模拟值。  如果瞬态如此严重、导致 BQ76925复位、则 POR 位应与状态寄存器中的值相同、并且所有寄存器值都需要恢复。  在故障恢复后将5个控制寄存器恢复为已知值可能是一个好做法。  主机 MCU 在系统中通过 BQ76925读取电池电压、将 VCOUT 设置为所需的选择、转换 MCU 中的值、计算电压并将 CELL_CTL 寄存器提升为下一个值并重复此操作。  如果电池电压未更新、请检查序列例程或 ADC 是否存在翻转。  CELL_CTL 中还提供 VSS 和基准电压、用于在 VCOUT 上输出以进行诊断检查。