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.

[参考译文] BQ34110:命令和响应之间的延迟

Guru**** 2616675 points

Other Parts Discussed in Thread: BQ34110

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/861520/bq34110-delay-between-command-and-response

器件型号:BQ34110

我正在编写软件来访问 BQ34110寄存器。 我发送命令来读取器件类型(0x00 0x01 0x00)、并在0x40上立即读取响应。 我得到的响应无效(0xFF 后跟一些数字)、而不是0x01 0x10 (在协议分析器屏幕上)。 然后、我在0x40上添加了一个读数、在第二个读数上添加了预期结果:分析仪显示了预期的字节序列。 我离开办公室,回家的路上我有一个深刻的认识:指挥和反应之间必须有延迟。

那么、我必须在发送命令和读取响应之间添加什么延迟?

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

    其他信息:我在发送 get type 命令后添加了1ms 延迟、并在第一次成功回读预期的响应。

    我查看了数据表和 TRM 部分的通信内容、但没有找到电量监测计满足命令请求所需的任何延迟信息。

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

    请参阅 TRM http://www.ti.com/lit/ug/sluubf7a/sluubf7a.pdf3.2:

    "读取 Control()寄存器将始终报告 CONTRAL_STATUS()数据字段,但在 DEVICE_TYPE()和 FW_VERSION ()子命令之后除外。 在这些子命令之后,CONTROL_STATUS()将在恢复到正常数据响应之前一次性报告值0xFFA5。 这是一个标志,用于指示数据响应已移动到 MACData()。"

    请在发出 device_type()子命令后读取 control_status()。 您应该从 CONTROL_STATUS ()读取0xFFA5、这表示器件状态现在已准备好从0x40++读取

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

    您好、Dominik。

    我看到第3.2段,但我没有理解该0xFFA5的目的。 在事后看来、这是相当明显的。

    非常感谢您的支持。

    此致。