阅读:1560回复:1
Test―Unit-Ready不成功居然导致U盘不可识别
我遇到一个比较奇怪的问题。
我在做U盘时,到SetConfiguration后,设备端执行了相应操作,接下来,我发现SetInterface这个命令我的设备端没有收到,但我用BusHound在PC上看到主机确实发了,接着主机发了三次a1 fe ......设备端收到这个了,但这个不是标准请求,我先没有处理,结果Bushound中显示Cancelled,我返回零字长后,正常, 接下来进入Bulk-Only阶段,一切都正常,但每当主机发出Test―Unit―Ready时,便超时,或是错识,按理说,这个命令的返回是非常简单的,只要返回CSW就可以了。 似乎主机认为Unit 没有Ready,然后重新枚举,重新设备地址了,在81和82之间反复了好几次,重复上述过程,最后主机终于抗不住了,认为没有设备,BusHound中对Test Unit Read,Mode Sense等命令都显示No Device,设备也无法再接收到来自主机的任何数据了。 请问有没有人碰到过类似的问题呀。 |
|
沙发#
发布于:2003-05-05 00:47
我也出现过这个问题!这是mass_class_request -> get_max_lun
你看看手册吧,只要返回个0就行了! |
|