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.

[参考译文] BQ76905:发出 PROT_RECOVERY 命令不会清除 CUV 情况

Guru**** 2538930 points
Other Parts Discussed in Thread: BQ76905, EV2400, BQSTUDIO

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1563583/bq76905-issuing-prot_recovery-command-does-not-clear-cuv-condition

器件型号:BQ76905
主题中讨论的其他器件: EV2400BQSTUDIO

工具/软件:

您好:

我尝试将 BQ76905 监测器配置为“故障“、并在电芯欠压时跳闸。  我不希望自主恢复、因此在数据存储器设置(电芯欠压迟滞寄存器)中将其禁用。 阈值设置为 2.4V、延迟是默认的 10 个 ADSCAN 间隔。  CUV 故障正确跳闸、但无法通过将 0x80 写入 PROT_RECOVERY 命令来手动恢复。  Safety Status A 寄存器中的 CUV 位保持设置状态、DSG FET 保持关断。  器件未密封。  我曾尝试设置数据存储器 FET 选项寄存器中的 PROTRCVR 位以防万一、但这没有帮助。

我随附了 Battery Management Studio(通过 EV2400 连接到 BQ76905)的屏幕截图。  它们显示了触发欠压条件时的数据存储器设置和 BQ76905 的当前状态。  您可以在此屏幕截图中看到电芯电压超过 2.4V 的最小阈值。  共有 2 节电池、配置在 Vcell 模式数据存储器寄存器中。

我尝试了将 0x80 和 0xff 写入 PROT_RECOVERY、但没有变化。

当我进入并退出 CFG_UPDATE 模式时、CUV 标志会根据参考手册清除、但我应该只能使用 PROT_RECOVERY 命令。

设置中是否缺少内容?

谢谢、

Brian

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

    某些子命令将数据写入寄存器、然后必须写入带有校验和及长度的 0x60/0x61。 这仅适用于 CB_ACTIVE_CELLS、PROG_TIMER 和 PROT_RECOVERY 和 security_keys 子命令。

    有关校验和及长度计算的更多详细信息、请参阅 BQ7690x 软件开发指南

    BQ7690x软件开发指南中的第 5 节简单代码示 例还提供了一个使用 DataRAM_Write 函数的示例、该函数显示了校验和及长度的计算。

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

    Gavin、

    我使用  Battery Management Studio 写入 PROT_RECOVERY 寄存器。  我已经能够这样做以清除其他条件、例如 放电短路故障(即写入 0x20)。  

    Brian

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

    因此、我可以看到 0x80 是 PROT_RECOVERY 寄存器的值、但 VOLTREC 位仍为绿色(位低电平)、对应于 0x00。 它们之间存在差异。 在写入寄存器值与 BQStudio 读回内容并显示为低电平之间似乎存在一些错误。

    您能否检查错误选项卡下为什么尝试在 PROT_RECOVERY 寄存器中写入 VOLTREC=1? 在此期间、命令或命令顺序是否提供任何有用的信息?

    此外、我建议点击右上角的 Scan 按钮、以允许值持续更新。 请告诉我、此后 PROT_RECOVERY 寄存器值差异是否仍然存在、没有任何错误的迹象。

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

    在我写入 Battery Management Studio 中的 PROT_RECOVERY 寄存器时没有看到任何错误。  当我写入 0x80 时、状态栏显示“Operation executed successfully(操作已成功执行)“。 我启用了扫描模式、但该位保持绿色。  这些位是否应自行清除?  寄存器说明指示已触发故障恢复、但这可能是一个临时条件?  无论如何、CUV 状态都保持未清除。

    我尝试稍微充电、以确保我远高于编程的欠压阈值、但将 VOLTREC 设置为 1 仍然不会清除条件。 我发现清除 CUV 的唯一方法是进入和退出 CFG_UPDATE、这不是选项、因为它会清除 PASSQ。  

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

    以下操作解决了此问题:

    深入了解后、存在 bqStudio 问题。  如果您在 Registers 页面的 PROT_RECOVERY 行中键入该值并点击 Return、则它似乎无法正确执行(即使它说确实执行了)。

     如果使用“Command Sequence“选项卡执行完整的序列(将 0x00 9B 80 写入 0x3E、然后将 0xE4 0x05 写入 0x60)、则可以正常工作。

     这些位看起来可以自行清除、我在 bqStudio 中看不到 VOLTREC 变为红色。

    此外、即使在 FULLACCESS 中、也需要设置 FET Options[PROTRCVR]位、才能使用手动恢复。  TRM 需要更新。

    谢谢、

    John

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

    这解决了我的问题