主题中讨论的其他部件: MSP-FET
我一直在尝试调试MSP430F5510上的USB问题;控制器从未在设置数据包上设置过SETUPIFG。 我知道主机会发送它们。 我在这里想弄清楚这个问题时,已经划伤了我的头脑;这不是间歇性的,而是一致的。 我从未见过安装中断。 其他一切都很好。 很遗憾,我没有USB协议分析器... 我没有PLL中断,除非我用电阻器短暂地将XT2晶体短路,以验证它们是否发生。 他们确实发生了! 这一切都在我滥用时钟的时候发生。
晶体是12MHz,我不使用UCS FLL。 我对某些器件勘误表运行DCO,表明USB PLL可能无法启动,但在操作过程中未使用- MCLK为XT2 1:1,SMCLK和ACLK除以4。
所以我决定检查晶体频率。 首先验证它是否通过示波器振动(使用LeCroy ZS1000有源探头,0.9pF 1M)。 一个水晶终端很干净,另一个看起来有点吵,但也不是特别吵。 我没有注意到,但我认为由于其阻抗较高,XT2IN的噪声更大。
接着,我把ACLK转到了WFP 1.0 (ACLK将XT2CLK除以4,以3MHz),然后用一个计数器(Agilent 5.3131万A)对其进行了探测。 其测量值为2.99.9966万MHz,偏差为~11ppm。
但是当我插入USB接口时,频率会下降到2.99.62万MHz,这是由0.12 % 关闭的! 这超出了USB 0.1 % 时钟规格。 当主机停止枚举并挂起设备时(在连接点关闭USB PLL时),ACLK将恢复到与未插入时相同的速度。 ACLK在奇怪的频率下保持稳定;它不会像在噪声/抖动中假设的那样跳转。
这里可能的根本原因是什么?
此时钟转换是否会导致安装始终失败? 只有2.0 全速... 我希望如果它如此接近规格极限,它将会间歇性且不一致。 我从未看到过SETUPIFG。
它似乎不是由VBus上的噪音引起的。 (我没有铁氧体磁珠,但它有一个肖特基。)
USB电缆护罩未连接。