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.

[参考译文] BQ78350:如何使用 ManufacturerAccess():0x00和 ManufacturerBlockAccess():0x44读取 OperationStatus()?

Guru**** 2487305 points
Other Parts Discussed in Thread: BQ78350, BQSTUDIO, BQ78350-R1

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/693670/bq78350-how-do-i-use-manufactureraccess-0x00-and-manufacturerblockaccess-0x44-to-read-operationstatus

器件型号:BQ78350
主题中讨论的其他器件: BQSTUDIO

在 程序中,我 想使用 ManufacturerAccess()或 ManufacturerBlockAccess()命令来读取 OperationStatus()。

命令序列是什么?

如果 我 fisrt 发送 一个 IIC 写入命令、将 三个字节、0x44、0x54、0x00写入 bq78350

然后启动新命令从 bq78530读取六个字节?

我尝试了许多 不同的命令序列,但我没有得到正确的数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Feiyue、
    在示例电路板中、运行状态 A 显示0x6101、运行状态 B 显示0x0000
    使用 bqStudio Advanced Comm SMB 工具,我使用 WRITE WORD 工具命令00 word 54。 使用读取块工具读取块44。
    事务日志中的结果是(抱歉、该工具在此处显示不好):
    时间戳、地址、操作、命令、长度、 数据、状态、
    2018-05-2902:37:31 281,17,WR Word,00,1, 54,成功
    2018-05-2902:37:32 347 , 17 , Rd Block , 44,6 , 54 00 01 61 00,成功

    数据读取:
    44是读取块命令
    6是以字节为单位的后向长度。 数据将是小端字节序。
    54 00是发送的命令、2个字节(0x0054)
    01 61是操作状态 A、2字节、(0x6101)
    00 00是运算状态 B、2个字节、(0x0000)

    发送一个16位字(0054)日志显示额外的字节、返回的数据是相同的。
    2018-05-2902:37:55 391,17,WR Word,00,2, 0054,成功
    2018-05-2902:37:58601 , 17, Rd Block , 44, 6, 54 00 01 61 00,成功
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我认为您的请求中缺少数据长度。

    为了获取数据、以下是您需要发送的字节序列:
    字节1:具有写入位的 BQ78350地址
    字节2:0x44 (制造商访问命令)
    字节3:2 (数据长度)
    字节4-5:0x54、0x00 (小端字节序格式的操作状态(0x0054))

    然后需要重新启动新命令:
    字节1:具有读取位的 BQ78350地址
    字节2:0x44 (制造商访问命令)
    切换到读取

    此致、
    米歇尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我发现普通 SMB 命令中也列出了命令0x54,因此我不必使用 ManufacturerAccess()命令。

    我首先发送带写入位的 BQ78350地址。

    然后我发送命令0x54。

    最后、我开始从 bq78350读取,我得到五个字节。

    第一个字节为0x04、我认为它是接收到的数据的数据长度。

    我获得了正确的信息、

    但是、由于数据表未详细描述该过程、我不确定我是否正确。

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

    它们都返回相同的数据。

    如果您参考 BQ78350-R1参考手册(2016年10月修订版)、您将在第 17.49节(0x54操作状态)中看到它说是指第17.2节(即0x0054操作状态)

    由您决定要使用哪一个。

    此致、
    米歇尔

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

    ,我是对的?  

    正确的序列是:μ s

    字节1: 具有 写入位的 BQ78350地址
    字节2:0x54

    字节3: 具有 读取位的 BQ78350地址

    我 将接收的数据为:μ A

    字节1: 0x04 (数据长度)
    字节2、字节3、字节4、字节5:OperationStatus();

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

    是的、这是正确的顺序。

    此致、

    米歇尔