zdcscc
驱动牛犊
驱动牛犊
  • 注册日期2004-11-17
  • 最后登录2005-05-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1323回复:2

USB开发中一个难题,请各位分析一下原因.

楼主#
更多 发布于:2005-01-21 11:34
我用Bus Hound捕捉到的信息如下:
RSET                                              
CTL  0007040300000400  SET DESCRIPTOR    
DO   ab 01 31 23               ..1#              
DI   ab01790102500050  ..y..P.P          
     0100070001001050  ..                                
     4f57455257415245  ..                                  
     205550532020205c   ....                              
NSTS 20 01 00 c0               cancelled        
CTL  a3 00 00 00  02 00 04 00  GET STATUS        
DO   ab 01 31 23               ..1#  
问题是出现NSTS为cancelled发送数据再也没有回复数据了.
也没有找到什么原因.
NSTS状态是驱动发去来的吗?
为什么会取消掉.
xiaorain
驱动牛犊
驱动牛犊
  • 注册日期2003-04-21
  • 最后登录2005-11-05
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-01-21 14:34
nsts是总线驱动(即usbd.sys)传回来的状态,如果是cancelled,说明此次传输结束,可能要resetdevice或者resetpipe,然后重传。
cancelled 说明你发给总线驱动的irp被cancel掉了。
zdcscc
驱动牛犊
驱动牛犊
  • 注册日期2004-11-17
  • 最后登录2005-05-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-01-22 10:35
为什么总线驱动会发出canceled状态呢?
是不是硬件处理方式有问题呀?
所以总线驱动才会取消I/O请求包呢?
游客

返回顶部