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.

[参考译文] BQ79616-Q1:UART 读取命令不起作用

Guru**** 2614305 points

Other Parts Discussed in Thread: BQ79616, BQ79616-Q1

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1035336/bq79616-q1-uart-read-commands-not-working

器件型号:BQ79616-Q1

您好!

我们目前正在评估 BQ79616电池监控器、以便在 BMS 产品中使用。 我已经可以访问 NDA 下的文档。

我们打算在每个电路板上使用单个器件、并使用 UART 与微控制器(在文档中被描述为"多点配置")配对。

  • 发送 ping 信号似乎正常(关断至活动转换会增加电流消耗、并且可以在 RX 引脚和 COMMH+-引脚上观察到 Ping 信号)
  • 发送广播写入命令还会触发 COMMH+-引脚上的通信、因此我假设该命令已从监视器 IC 中的 UART 接收器成功读取
  • 如果我向 DEV_CONF[Multidrop_EN]= 1发送广播写入、则差分菊花链通信不再按预期对广播写入命令做出反应

目前、我们无法从 IC 接收任何读取命令的答案。 我已粘贴到 BQ79616-Q1软件设计参考指南以实现唤醒和自动寻址(禁用多站)、并尝试启用多站并仅使用单个器件读/写命令。 到目前为止、我们从未在 TX 引脚上观察到任何通信。

TX 引脚的功能是否受到任何限制? 多分支配置应该如何工作? 我在数据表中找不到太多信息、并假设它应与器件地址为0x00的单个器件命令一起使用。

感谢您的帮助!

配置器件所采取的步骤:

堆栈模式

  1. 发送唤醒 ping
  2. 关断至活动转换的延迟
  3. 发送虚拟广播写入 OTP_ECC_TEST=0x00{D0 03 4C 00 FC 24}
  4. 通过广播写入 CONTROL1 = 0x01{D0 03 09 01 0F 74}来启用自动寻址模式
  5. 设置 DIR0_ADDR{D0 03 06 00 CB 44}
  6. 广播写入所有内容作为堆栈器件优先(COMM_CTRL=0x02){D0 03 08 02 4E E5}
  7. 将器件设置为基极和栈顶(COMM_CTRL=0x01){90 00 03 08 01 1D D2}
  8. 虚拟广播读取 OTP_ECC_TEST 以同步 DLL{C0 03 4C 00 F8 E4}(器件无应答)
  9. 发送更多读取命令(广播读取或单个器件读取、器件也无应答)

多点模式

  1. 发送唤醒 ping
  2. 关断至活动转换的延迟
  3. 发送虚拟广播写入 OTP_ECC_TEST=0x00{D0 03 4C 00 FC 24}
  4. 发送广播写 DEV_CONF=0x74 (将 Multidroit_EN 设置为1、将 RESTTE 保持在复位值)
  5. 发送读取命令(广播读取或单个器件读取、器件无应答)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好 Jonas、

    我将帮助您解决问题。

    -根据您拥有的器件版本、出厂默认单器件地址可能为0x00或0x01。 请尝试这两种方法。

    -在堆栈模式下寻址时:

               您应该将广播虚拟数据0x00写入寄存器 OTP_ECC_DATAIN1 (0x343)到 OTP_ECC_DATAIN8 (0x34A)

               2.在第7步中、您应该为最后一个堆叠的器件设置 STACK_DEV 和 TOP_STACK。 这假设您通过 COMLx 和 COMHx 引脚进行通信。 否则堆栈没有意义。 如果您的硬件配置为多站模式、则无法使用堆栈模式。

             3.对于虚拟读取、您应该将寄存器 OTP_ECC_DATAIN1 (0x343)读取到 OTP_ECC_DATAIN8 (0x34A)(与虚拟写入相同的寄存器)。

    BQ79616器件数据表中有一个过程、表9-19:

     -在多点模式下重新签名时:

            向 DEV_CONF 寄存器写入数据0x74以启用多点配置。 这将禁用 VIF 接口(COMH/COML 引脚)。  

           -此处无需自动寻址、因为本地 MCU 将处理总线上的地址。 本地 MCU 可以使用地址0x00或0x01读取/写入 BQ 器件。

    此致、

    维克托。

        

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

    您好、Victor、

    感谢您的详细回答。 遗憾的是、我们还无法与 IC 建立 UART 通信。 我们现已订购 EVAL 板、以排除 PCB 设计的任何问题。