大家好,小弟最近调试USB驱动,遇到一个问题,希望有高手帮忙分析一下:
问题描述如下:Wince6.0系统 + s5pv210芯片的板子,金士顿 Data Traveler G3(8G)U盘插入USB口后,枚举阶段,获取描述符信息,设置接口都是成功的,但是当主机第一次发送TEST UNIT READY 命令时,CBW发送成功,但是接收CSW时超时,超时后主机重试了一次,依然超时,然后主机就执行了ResetRecovery命令,命令执行完后,主机发送RequestSense 命令,这时,在发送CBW时就超时,超时后主机再次执行了ResetRecovery命令。接着主机继续发送TEST UNIT READY 命令,CBW阶段超时,RequestSense 命令,也在CBW阶段超时。下面就一直就一直这样发送TEST UNIT READY 命令,CBW阶段超时,RequestSense 命令,也在CBW阶段超时。除非系统重启。
但是另一款U盘(金士顿 DataTraveler410 4G)就一直是正常的。
------解决方案--------------------------------------------------------
你用低速设备鼠标插上,100多M的样子,测得了不?
PS:我们之前用的一个USB HUB是什么U盘都识别不了,但是外面插入一个HUB,再插入U盘又可以识别,现在换了另一种HUB 芯片,走面比之前的还要长一点,都能识别U盘,但具体8G的没有测,2G,4G没得问题,其实时序又没问题,是芯片本身的能力有差距
------解决方案--------------------------------------------------------
这个驱动不太完善, 对kingston的 u盘识别不好,估计kingston 很多都是假的。
------解决方案--------------------------------------------------------
呵呵呵 有好多企业抄袭 没用自己的核心技术
------解决方案--------------------------------------------------------
U盘的牌子和容量,还有主控芯片,都会有区别呢
楼主 先下载个ChipGenius_v4 看看U盘的主控芯片型号.