USB枚举失败
基于STM32F405的USB HID设备,20%的PC识别不到设备。插拔多次后可能成功,VBUS检测脚电压4.2V正常,DP/DM线长15cm需不需要做阻抗匹配? 15cm 的走线如果没有匹配,很容易出现反射、信号毛刺等问题 线长15cm已经是极限了,确实需要注意阻抗,尤其是USB高速的话对差分阻抗要求挺严格的。 DP/DM 有没有加终端电阻或者ESD保护?有时候反而是过度保护影响了信号质量。 你可以试试在不同电脑上跑 USBLyzer 或者 USBView,看失败时是在哪个阶段停下来的。 我遇到过类似情况,结果是供电不稳定,后来加了个小电感和电容滤波才稳下来。 是不是有些PC的USB接口比较老?有时候老机器兼容性也可能是个问题。 你那个 VBUS 虽然4.2V,但有时候电流突变时会掉电,最好用示波器抓一下波形看看。 你用的是CubeMX自动生成的USB代码吗?有些版本有bug,升级一下库看看。 插拔多次后能成功,很可能是初始化时序不太稳定,要不要试试软件上加点延时? HID设备是否使用了中断传输?中断间隔设置太小可能也会有兼容性问题。 如果可以,试下换成质量好点的USB线,接触不良也会引发枚举失败。 如果没有做阻抗匹配,信号反射、抖动可能导致设备识别失败。
页:
[1]