jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
阅读:1189回复:8

为什么我在枚举时设置完地址后收到了全0的SETUP包?

楼主#
更多 发布于:2003-02-11 16:37
我做的是USB2.0,用的USB控制器时PHILIPS的ISP1581(与D12类似),用的控制器是16位的DSP(TMS320F206).

1。在枚举时首先收到GetDescriptor请求
setup:80 06 00 01 00 00 00 40
我发送的设备描述符如下:
ep0 in:
{
    0x12,           /*        length     */
    0x01,           /*  1.    bDescriptorType     */
    0x0200,         /*  2.-3. Version 2.0 USB spec Word  */
    0x00,           /*  4.    Class                      */
    0x00,           /*  5.    bDeviceSubClass           */
    0x00,           /*  6.    bDeviceProtocol            */
    0x40,         /*  7.    bMaxPacketSize0            */
    0xCC04,         /* 8.-9.  idVendor                   */
    0x491B,         /* a.-b.  idProduct               */    
    0x0000,         /* c.-d.  bcdDevice                  */
    0x01,           /* e.     iManufacturer              */
    0x02,           /* f.     iProduct              */
    0x03,          /* 10.    iSerialNumber              */
    0x01           /* 11.    bNumConfigurations */
};

2。然后又收到SetAddress请求:
setup:00 05 02 00 00 00 00 00
使能新地址后,在状态阶段我发送一个空的数据包给主机。

3。然后就收到全是0的setup包,然后枚举就结束了!:
setup:00 00 00 00 00 00 00 00

请诸位大侠为小弟指点迷津,不胜感激!

最新喜欢:

lhaihlhaih
iamchine
驱动小牛
驱动小牛
  • 注册日期2002-11-18
  • 最后登录2005-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-02-12 16:25
哪里哪里,互相帮助
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-02-12 14:17
多谢楼上的老兄,给你100分以表达谢意,以后还望多多关照呀!
iamchine
驱动小牛
驱动小牛
  • 注册日期2002-11-18
  • 最后登录2005-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-02-12 14:12
我是买了个2.0移动硬盘盒抓的,你可以试试,Vid=0ed1,Pid=6620
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-02-12 12:57
那我从哪里可以得到windows缺省的vid和pid呢?
iamchine
驱动小牛
驱动小牛
  • 注册日期2002-11-18
  • 最后登录2005-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-02-12 12:22
看来你是用W2K的驱动,你是返回了描述符,但如果你的Vid和Pid不在MS缺省列表里的话,主机不会发新的BulkOnly命令给你的,我原来用1.1优盘的id在2。0下也是死,后换了个2.0移动硬盘的Vid和Pid就可以继续了。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-02-12 12:17
楼上的老兄,当设置完新的地址后,驱动要求返回全部的描述符,这里如果vid和pid和驱动中的不符的话就不能完成枚举吗?那windows自带的驱动的vid和pid是什么呢?
iamchine
驱动小牛
驱动小牛
  • 注册日期2002-11-18
  • 最后登录2005-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-02-12 09:08
你主机驱动是自编的吗?如果是瘟倒死自带的,可能是你的Vid和Pid不符合它要求,当然还有2.0的那对差分信号线布线很关键!
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-02-11 23:33
现在上面第3中的setup不再是全0了
是setup:80 06 00 01 00 00 00 12,
但是我返回上面的描述符后,枚举就结束了,不知道那里除了毛病!郁闷死了
游客

返回顶部