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.

[参考译文] MSP430F5529:退出 LPM2时、USB 枚举失败

Guru**** 2581345 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/605575/msp430f5529-usb-fails-to-enumerate-when-exiting-lpm2

器件型号:MSP430F5529

您好!

我这里有一个电池供电的产品、它进入 LPM2睡眠模式、每分钟唤醒一次、然后返回睡眠状态。

该器件配有一个 USB 连接器、我的软件堆栈中有一个 VUSB_ON 中断。 连接 USB 后、会触发中断、器件将唤醒并退出低电平模式。

问题在于、USB 将无法枚举、直到您在第3次左右 USB 连接尝试后"获得幸运"。

是否有人对在 USB 连接上退出 LPM 的最佳方法有任何建议?  我觉得 MSP430需要一些时间才能再次启动并使时钟运行、这可能违反了 USB 枚举要求。

谢谢

太棒了!

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

    您好、Stomp、

    是否在 USB_handleVbusOnEvent()之后调用 USB_connect()? 如果器件连接到主机,并且软件调用 USB_connect(),则主机通常会立即开始枚举它。 状态会变为 ST_enum_in_progress。 通常、枚举会快速完成、状态会移至 USB_enum_active。 但是、出于各种原因、这种情况可能不会发生。 有关这些原因的说明、请参阅《MSP430 USB 编程人员 API 指南》中的第6.10节。 此外、请查看图8、其中包含 USB 器件状态图。 根据您的描述、当 VBUS 出现时、器件似乎从 ST_PHYS_DISCONNECTED 状态变为 ST_PHYS_Connected NOENUM 状态。 问题似乎出在从 ST_phy_connected_NOENUM 状态变为 ST_enum_active 状态时。

    最后、 第12节 提供了一些有用的调试提示、这些提示应该非常有用。

    此致、

    James

    MSP 客户应用

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

    感谢您的详细回答。 我们从 TI 获得的支持级别是世界一流的!

    我们的 MSP430 USB 堆栈在多个产品中已经运行了相当一段时间、但它只是我们将其中一个产品切换为在 LPM2模式下睡眠、如果我们在 LPM0模式下睡眠、则不会出现问题。

    同样、我们可以连接和断开 USB 电缆几次、器件最终会在睡眠 LPM2时进行枚举、但在 LPM0时始终工作正常。

    我将对器件所处的状态进行一些分析并报告。

    感谢你的帮助。

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

    您是否解决了问题?

    此致、

    James

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

    尊敬的 James:

    我忘记关闭这些论坛帖子的形式非常糟糕、我将在未来尝试并改进。

    该问题的解决方案是在 VBus_on 中断到配置器件时增加一些延迟时间。 我的印象是、我们的器件的工作方式、以及振荡器从睡眠状态启动的时间的结合导致了 USB 系统的一些问题。

    问题得到解决。 谢谢。

    太棒了!

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

    您好、Stomp、

    这一点没有问题。 我只是想跟你跟进、很高兴听到你解决了! 此外、感谢您再次与社区分享您的解决方案。 我相信这将在未来帮助他人。

    此致、

    James

    MSP 客户应用