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.

[参考译文] BQ79600EVM:在使用栈读取命令进行自动寻址后、无法读取栈器件地址

Guru**** 1624225 points
Other Parts Discussed in Thread: BQ79600EVM, USB2ANY
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/switches-multiplexers-group/switches-multiplexers/f/switches-multiplexers-forum/1353808/bq79600evm-fail-to-read-stack-device-addresses-after-auto-address-using-stack-read-command

器件型号:BQ79600EVM
主题中讨论的其他器件: USB2ANY

您好!  

我们使用 BQ79600EVM 作为基本器件、该器件连接到两个堆栈 BQ79718EVM。 BQ79600由 MCU 的5V 电源供电、BQ79718由30V 直流电源供电。 我们将 MCU SPI 端口连接到 USB2ANY 引脚。

在根据数据表进行自动寻址后、我们尝试读回存储在 DIR0_ADDR 0x306中的器件地址。  

如果使用单个读取命令、我们将 逐个成功读取基址和堆栈器件地址。

读取 BQ79600器件0:  命令:0x80 0x00 0x03 0x06 0x00 0xD6 0x7E                 响应:0x00 0x00 0x03 0x06 0x00 0xD7 0xA0

读取 BQ79718器件1:  命令:0x80 0x01 0x03 0x06 0x00 0xD7 0x82                 响应:0x00 0x01 0x03 0x06 0x01 0x17 0x9C

读取 BQ79718 器件2:  命令:0x80 0x02 0x03 0x06 0x00 0xD7 0xC6                  响应:0x00 0x02 0x03 0x06 0x02 0x57 0xD9

不过、当我们 未能使用栈读取命令来读取栈器件地址  DIR0_ADDR 0x306时。

读取堆栈:  命令:0xA0 0x03 0x06 0x00 0xD1 0x84                 响应:0x7f 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF... ...

发送读取命令后、我们等待~160us、然后 SPI-RDY 变为高电平、然后我们开始读取数据。

此外、 读回一系列0xFF 后、SPI_RDY 始终保持低电平、直到10ms 后发送 COMM_CLEAR。

这也发生在自动寻址

发送堆栈读取命令和200us 延迟后、我们读取0xFF 0xFF 0xFF 0xFF 0xFF、SPI_RDY 始终为低电平

有什么建议吗? 期待您的回答。 提前感谢。

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

    您好!  

    通过读取顶部器件中的 COMM_CTRL 寄存器并查看是否启用了 TOP_STACK、确认第三个器件(器件地址= 2)设置为栈顶。 若要运行任何堆栈或广播读取命令、需要正确设置 TOP_STACK。  

    此致、

    M·W·  

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

    我们 已经设置了顶部堆栈、可通过读取同一寄存器来验证它。 如果我们交换两个718板、栈读数没有问题。

    我们通过以下程序进行测试:

    我们有两个718 EVM、 718#1和718#2。

    我们使用的测试软件将交替切换通信方向、单次读取和堆栈读取一次、然后切换方向、在完成后再次重复该操作。

    正向(DIR0)读取没问题、切换至反向(DIR1)只能单次读取、我们只能得到0x7F 0xFF 0xFF 0xFF 0xFF .......  应用 MCU。

    如果 我们在 HW 中交换两个板并使用相同的软件、则堆栈 正向读取 将失败、仅0x7F 0xFF 0xFF 0xFF 0xFF……  。   在反向方向读取不会出现问题

     如果使用堆栈读取、电路板718#1似乎无法设置为顶部堆栈。

    79600故障寄存器 信息:

    79718故障寄存器信息:

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

    您好!  

    纯粹作为完整性检查:

    1) 1)如果您有 USB2ANY 可用、我建议使用 GUI 来确认您是否观察到类似的行为或不排除任何软件问题。  

    2) 2)确认718 #1和718 #2之间没有任何硬件/跳线差异  

    如果没有可用的 USB2ANY 或在 USB2ANY 上观察到相同的行为、则可能需要退回有缺陷的器件。 BQ79718无此类行为。 退货时、TI 可以测试该器件以确认是否观察到相同的行为。  

    此致、

    M·W·