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:意外的 USB 暂停

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1121039/msp430f5529-unintended-usb-suspension

器件型号:MSP430F5529
主题中讨论的其他器件: MSP430WARE

大家好、

我将 MSP430F5529与 SDK msp430ware 3.80.09.03搭配使用、并遇到 USB 连接意外挂起的情况。

这是由于用户的特定操作而发生的: 系统可能会通过 CLI 接收各种命令(几十个)、无论发送哪些命令或按哪个顺序发送-在某些情况下、USB 驱动程序将被暂停(在发送命令后几秒或 ms)。 我可以看到、当使用第144行中 Usblsr.c 内的断点时、USB 中断接收事件 USBVECINT_SUSR。

在进行一些读取后、我发现 USB 暂停"数据信号无活动时间为3ms "、如  第42页中所述。

我要提到 的是、循环运行 CLI 命令启动的代码而不使用 CLI 命令本身会导致系统的正常行为。 也就是说、问题似乎在于 USB 连接、而不在于命令启动的逻辑。 在 USB 断开连接后、由于意外的悬架、系统的逻辑继续正常运行、除 USB 外一切都正常。 断开物理电缆并重新连接时、CLI 连接会恢复、 并且可以再次发送命令(直到下一次意外暂停)。

此外、我注意到、当代码大小较大时、无论添加哪个代码(例如与 CLI 通信无关的系统逻辑)、问题都会恶化。 代码大小非常接近闪存和 RAM 的限制(使用量约为97%)。

我还想知道 USB 中断优先级-如何确保它设置为最高?

非常感谢您的帮助!

谢谢、

Dekel