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.

[参考译文] TUSB422:如何将消息从 TUSB422传输到适配器?

Guru**** 2454880 points
Other Parts Discussed in Thread: TUSB422

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/608261/tusb422-how-to-transmit-msg-from-tusb422-to-adapter

器件型号:TUSB422

是否有人使用 TUSB422具有任何经验?

当我将 TUSB422t 连接到 USB-PD 的适配器时、 我的 MCU 将从 TSUB422接收源电容消息。

我确信 TUSB422不会自动发送 GoodCRC 消息。

因此、我尝试手动向适配器发送 GoodCRC 消息。

我将数据写入这四个寄存器。

 发送寄存器;

 发送字节计数寄存器;

 发送缓冲器标头字节0和字节1;

但警报寄存器 反馈 TX_SOP_DISCOSTACK ALERT。

我在 TSUB422的数据表中找不到有关如何使用传输缓冲器的任何信息。

 我尝试从 TI 网站上寻求演示软件、但没有任何反馈。  

是否有人知道如何将消息从 TUSB422发送到适配器?

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

    尊敬的 Jian:

    我很抱歉我的答复延误了,但我不得不做一些研究。 GoodCRC 将自动传输、除非您禁用此功能。

    您描述的过程似乎顺序错误。 正确的 SOP* MSG 传输必须遵循以下步骤:

    1.写入发送缓冲区(0x51-0x6f):(Count、header0、Header1、Data bytes..)、其中 count 必须包含2个标头字节。

    2、通过写入 Transmit 寄存器(0x50)请求发送。

    结果是警报(INT 引脚置为有效?)、可能是:

    a. MessageSuccessful–如果 收到 GoodCRC?

    b.如果重试后没有响应,MessageFail.

    c.消息如果由于传入消息而丢弃了传输、则显示消息

     

    您获得的警报结果必须是前面所述情况 C 的结果、如果在写入 Transmit 寄存器时发送计数寄存器小于3、则也可能是 FAULT_STATUS.I2CInterfaceError。

     

    此致、

    迭戈。

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

    谢谢、Diego。

    您是否知道如何检查 GoodCRC 是否正在自动传输?
    我无法从数据表中找到用于 GoodCRC 函数的寄存器。

    如果 TUSB422从源(例如适配器)获取 SOP* MSG,它是否自动将 GoodCRC MSG 反馈给源?

    我使用逻辑分析仪来分析协议、我可以从源到 TUSB422找到 SOP* MSG、但我无法从 TUSB422找到 GoodCRC MSG 到源。

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

    尊敬的 Jian:

       TUSB422会自动传输 GoodCRC、除非您停用此功能、否则它是 TPCP 规范所要求的。 因此,是的,TUSB422将在收到有效的 SOP*消息后发送 GoodCRC。 传输 SOP* MSG 后,请检查接收器检测寄存 器和接收字节计数寄存器。  如果这些寄存 器被清除、那么请参阅 RX_SOP_STATUS 中的内容以了解接收缓冲寄存器或 PHY BMC RX 状态寄存器中的变化。 通过  PHY BMC RX 测试控制寄存器中的 RX_CRC_DISABLE 控制位禁用 GoodCRC 的自动传输。



    此致、

    迭戈。

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

    谢谢、Diego。

    很抱歉、我找不到 PHY BMC RX 测试控制寄存器。 只有 PHY BMC RX 控制寄存器(0x96)和 PHY BMC RX 状态寄存器(0x97)。

    当 TUSB422从适配器接收 SOP* MSG 时,PHY BMC RX 状态寄存器为0x0F。

    监控 CC 逻辑线路的逻辑分析仪从适配器获取 SOP MSG、但不从 TUSB422获取 GoodCRC MSG。

    因此、我的适配器多次发送 SOP MSG、然后关闭通信。

    TUSB422似乎不会自动传输 GoodCRC。

    我是否可以要求使用演示软件来演示如何使用 TUSB422?

    我的 MCU 是 Atmel ATmega328P。

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

    尊敬的 Jian:

       我可以共享演示软件、但对于 MSP430、您可以将其用作设计的参考。 请向我发送电子邮件至 diego.cortes@ti.com。 另外、让我知道 USB Type-C 修订版字节0寄存器(0x06)的状态。


    此致、

    迭戈。

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

    谢谢、Diego:

      我 的 USB Type-C 修订版字节0寄存器(0x06)为0x11。

      我会向您发送电子邮件。  

      感谢您分享我的设计的演示软件。