USB3.0和USB2.0上电重置时序区别
USB3.0和USB2.0重置都会尝试3次,但是重试的间隔和Reset信号保持的时间都有区别
直接看波形图:
USB2.0波形图:
从图中可以看出,尝试之间的间隔是500ms, Reset信号保持10ms
USB3.0波形图:
从图中可以看出,尝试之间的间隔是200ms, Reset信号保持50ms
USB从设备正常的启动顺序是先初始化USB堆栈,然后使用GPIO控制电平变化通知主机USB设备插入,设备从2.0放到3.0接口上是不会出问题的,但是笔者的USB设备因为硬件设计的原因,是先通知电平变化,然后初始化USB堆栈,放在2.0端口正常,放到3.0端口就出问题,主要原因就是2.0的重置间隔时间较长,每次都是500ms,但是3.0的重置间隔短,一共才600ms,导致我们从设备出现无法识别的问题。