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.

[参考译文] BQ27Z561:请在 c 中提供读取 BQ27z561器件名称的示例

Guru**** 2535750 points
Other Parts Discussed in Thread: BQ27Z561

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/999098/bq27z561-please-provide-example-in-c-for-read-device-name-of-bq27z561

器件型号:BQ27Z561

我已阅读 bq27z561的 sluubo7 TRM。  在该部分中、13.2 显示了如何在制造商访问系统(MAC)中读取和写入数据。 因为我 在 C 程序中编写该内容的经验较少。 请提供读取器件名称的示例代码。

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

    您好!

    您可以为大多数 MCU 使用标准 I2C 库、请按照 TRM 中的步骤操作:

    Addr cmd 数据

    写入0x55 0x3E 0x4A 0x00

    读取0x55 0x3E (为器件名称返回的字节)

    此致、

    Wyatt Keller

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

    您好!

    我已根据您的建议写信、但我没有得到回复。

    root@LZ50:/media# i2cset -f -y 2 0x55 0x3E 0x01 0x00 I
    root@LZ50:/media# i2cget -f -y 2 0x55 0x3E
    0x01

    实际上、它需要将我的 Z561退还给 BQ27Z561。 但它没有返回正确的答案。

    可能是我 犯了个错误。 所以,请纠正我出错的地方?

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

    您好、Mangal、

     您的 i2cset 函数是否考虑了0x55末尾的写入和读取位? 如果您要写入器件、器件接收到的命令应为0x55 + WRITE BIT = 0xAA、且读取时应为0xAB。

    读取器件名称命令为0x004A、因此应发送0x4A 0x00而不是 0x01 0x00。

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

    我使用过 Linux 的 i2ctool。 根据您的建议、当我使用 i2cget 和 i2cset 测试相同的东西时、会出现错误。