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.

[参考译文] BQ27220:如何使用子命令,我尝试发送子命令(0x0001)以获取值(例如0x0220),但无法获取,

Guru**** 2496015 points
Other Parts Discussed in Thread: BQ27320, BQSTUDIO, BQ27220

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/717321/bq27220-how-to-use-the-subcommand-i-try-send-the-subcommand-0x0001-to-get-the-value-example-0x0220-but-can-not-get

器件型号:BQ27220
主题中讨论的其他器件:BQ27320BQSTUDIO

我测试其它子命令,获取值,一直为0x0000,问题是什么? 有人帮助我、谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,盐城
    请查看下面的文档。 它将为您提供有关如何与监测计进行通信的更多信息。

    www.ti.com/.../slua801

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

    首先感谢您的回答:

    此链接我已获取 ,但我也无法获取信息示例(发送 subcommad (0x0001) 以获取值0x0220),stand 命令正常!只有子命令无法获取信息,那么问题出在哪里,您能帮助我吗?  

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

    你好,盐城

    请参阅下面的示例,读取设备号。 虽然它是在不同的监测计上完成的、但对于该监测计来说、这是一个类似的过程。

    读取固件版本的另一个示例

    谢谢

    Onyx

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

     获取值(0x00 0x00)  

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

    您好!

    请参阅此应用手册 http://www.ti.com/lit/an/slua467b/slua467b.pdf 并随附由 I2C 监听器截取的图像。

    bq27520与 bq27320的通信是相同的。 我认为关键点是读取数据包的 SR (重复开始)。 不仅仅是读取该命令。

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

    像这样,我不能得到0xa5ff (BQ_HW_VERSION) ,有什么问题? 请帮帮我!  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果我想获取 BQ_DEVICE_NUMBER 或 BQ_FW_VERSION,我可以得到0xa5ff,为什么 BQ_HW_VERSION 不能?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

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

    请检查 TRM、2.1.2:子命令0x0001 (DEVICE_NUMBER)指示监测计将器件类型返回 MACData()。

    MACData()从0x40开始。

    因此序列是:发出子命令0x0001 (将0x01 0x00写入 I2C 地址0x00和0x01)、然后从 I2C 地址0x40 (MACData())读取2个字节:

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

    根据您提供的信息,我已完成此操作,但无法获取 DEVICE_NUMBER_ID (0x0220);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否在 bqStudio 中尝试过此操作? 您能否这样做并监听总线以查看正在发送的命令并实现与之类似的代码。
    谢谢
    Onyx
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    "mod"是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、盐城
    快速谷歌搜索会告诉您什么是"mod"。 MOD 返回一个数字除以另一个数字后的余数。
    en.wikipedia.org/.../Modulo_operation

    例如:mod (5、4)=1
    MOD(5,5)=0

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

    与初始化类似?但我无法修改设计资本;

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

    对于 bq27220、它有一点不同、请参阅

    BQ27220:BQ27220校验和计算

    TI E2E 社区
    器件型号:BQ27220 BQ27220校验和计算:我尝试使用外部 MCU 写入 I2C 命令将 BQ27220的设计容量从默认3000mAh 设置为13200mAh,以更新 BQ27220的 RAM 区域。 但是、当我按照所述的16个步骤操作时...

    如果要将设计容量设置为4043mAh (=0x0FCB)、则必须执行以下序列:

    1.进入 CFG_UPDATE 模式
    2.将地址和参数数据写入0x3E+(自动递增)
    3、计算校验和:0xFF -(地址和数据之和)或0xFF
    4、将校验和写入0x60、将总长度(地址+参数数据+校验和+长度)写入0x61
    5.退出 CFG_UPDATE 模式

    W aa 00 90 00 #CFG_UPDATE
    W aa 3e 9f 92 0f CB #设计容量= 0x0FCB
    W aa 60 F4 06 # 0x9F + 0x92 + 0x0F + 0xCB = 0x020B。 0x020B 或0xFF = 0x0B。 CS = 0xFF - 0x0B = 0xF4;2字节地址、2字节数据、1字节校验和、1字节长度= 6
    w aa 00 92 00 #EXIT_CFG_UPDATE

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

    感谢您的回答!

    我也无法根据您的"告诉我"信息修改设计权限  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能否先使用 bqstudio 进行测试、并在尝试在系统上实施之前验证是否工作正常。
    谢谢
    Onyx