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.

[参考译文] BQ76942:在 I2C 下写入 FET_CONTROL

Guru**** 2553450 points
Other Parts Discussed in Thread: BQ76942

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1051647/bq76942-write-fet_control-under-i2c

器件型号:BQ76942

您好、TI 支持团队、

我尝试使用 FET_CONTROL 命令手动设置 FET 状态。 我实现了以下操作(仅允许 DSG FET 关闭),但它不执行任何操作,我会知道我的事务是否正常(使用不带 CRC 的通信模式 I2C):

感谢您的帮助、

Robin

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

    您好 Robin、  

    除了 fet_control()命令外,您还必须发送相应的位来启用/禁用 FET,如 表5-8所述。 《技术参考手册》的 FET 控制子命令。 这意味着在发送 fet_control()后,必须发送与  FET Status()寄存器匹配的位。 如果一个位被置位、它将禁用那个特定的 FET。

    除此之外, 在发送 FET_CONTRARINS()命令和相应的控制位之后,必须将校验和和长度写入0x60。  BQ769x2软件开发指南的第2节-子命令对此进行了说明。  

    0x40用于数据读取、因此您在该命令中不需要它。 此外、BQ76942的器件地址为0x10、而不是0x08。

    因此、打开所有 FET 的示例序列为:

    写入[0x10] <Device Address
    0x3E
    0x97
    0x00
    0x00       <For all FETs on (For all FETs off, this would be 0x05)
    写入[0x10]<For checksum
    0x60
    0x68       
    0x05       <New length

    我希望这对您有所帮助。

    此致、

    Luis Hernandez Salomon

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

    您好、Luis、

    感谢您的帮助、

    如果我不在 I2C 上使用 CRC、该如何处理? 我在使用开始时使用0x29E7命令切换到 I2C。

    此致、

    Robin

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

    您好 Robin、

    我发送的事务不使用 CRC。 FET_CONTRAINU()子命令等子命令要求发送校验和。    《BQ769x2软件开发指南》的第2节对此进行了介绍

    此致、

    Luis Hernandez Salomon

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

    好的、明白了。 是否有任何时间需要注意? 我发送了您的命令、但是... 它不工作。 如果我使用0x0096命令、它被直接应用并且 MOS 被关闭。

    此致

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

    您好 Robin、

    似乎我误解了命令的目的。 FET_CONTINUV()仅禁用 已置位的 FET。 如果您想控制 FET、最好与 DSG_PDSG_OFF () CHG_PCHG_OFF ()命令一起发送 All_FET_ON (0x0096)、这样就更容易控制 FET。

    但是,如果您要使用 FET_CONTINUVENT(),则可以通过发送 all_FET_ON()命令,然后使用 FET_CONTINUV()任意打开或关闭 FET 来实现相同的效果。

    我对这种混乱表示歉意。

    此致、

    Luis Hernandez Salomon

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

    您好、Luis、

    好的、我现在明白了

    感谢您的帮助!