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.

[参考译文] TUSB4041I:快速进入和退出DFU模式进行固件更新时,关闭端口MCU不会被枚举

Guru**** 2455560 points
Other Parts Discussed in Thread: TUSB4041I

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/604980/tusb4041i-down-port-mcu-when-moving-quickly-in-and-out-of-dfu-mode-for-firmware-update-doesn-t-get-enumerated

部件号:TUSB4041I

您好,

我们有一款采用 TUSB4041I的新主板,目前运行良好。

它连接到第二个端口上的STM32F微控制器,与设备的通信稳定,除非设备退出USB引导加载程序模式并尝试快速启动我们的新应用程序代码。 在这种情况下,不会检测到或枚举它。

遗憾的是,我们无法在将STM32F切换为不同的USB模式之间使用GPIO线路以编程方式重置TUSB4041I, 我们希望确保,如果STM32F在各种USB应用程序之间移动,这些应用程序将更改其PID/VID和其他所有内容,它将始终在第二个端口上正确枚举。

那么,是否有办法通过SMBus通知USB集线器重新枚举端口,特定端口,重置设备等? 我在注册表中看不到任何内容,但也许我一直在错过它。 在这之后,我应该等待多长时间才能继续在MCU上加载USB堆栈?

还有其他建议吗?

谢谢你。

e2e.ti.com/.../Tusb4041I.pdf

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

    您能否澄清您的申请? 听起来STM32F连接到TUSB4041的下游,并且STM32F未被主机一致枚举,对吗?

    遗憾的是,USB集线器是从属设备,在没有主机驱动程序交互的情况下,不能进行端口重置或USB重置。 切换模式时STM32F是否不执行断开/重新连接? 还是发生得太快? 如果无法更改下行设备的行为,可以强制对TUSB4041进行硬重置,或者可以使用SMBus通过设置和清除cfgActive位,使集线器与所有下行端口一起重新枚举。

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

    您的第一个陈述是正确的。 一定会在新代码引导后尝试cfgActive位。

    我们的设计还有另一个奇怪的地方:如果GRSTz保持在低电平下超过几秒钟,TUSB4041I就会被锁定在复位中--一切都关闭了,包括晶体的振荡。 只能通过重启电路板或拔下并插回上游(主机) USB连接(即hub_VBUS上的开关)来唤醒集线器。

    我们有一个开关按钮连接到复位电路(无回弹)。 按下此按钮和TUSB4041I可以很好地重置,但按住不放更长时间会锁定集线器。 对此有何解决方案? 它可能不会对系统产生真正的影响,但它已造成一些调试混乱。

    我用TUSB4041I示意图更新了我的第一篇文章。

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

    TUSB4041是否永久连接到主机? 我怀疑在集线器处于重置状态时,主机禁用集线器连接的端口,并且当集线器退出重置时,它看不到来自主机的任何信号并进入挂起模式。 您可以启用暂停状态输出以检查该状态。

    在附带说明中,TUSB4041在内部实施DP上拉以及15K上拉。 我建议拆下外部电阻器,因为它们可能会导致您看到的一些问题。

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

    您还有其他问题吗?

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

    所有问题都已解决,但如果 用户按住重置按钮的时间过长,设备仍将进入永久挂起模式,但其他所有问题都已解决。

    我们有更多的试验和实验要做,但我会把它标记为“已解决”。 感谢你的帮助。