samulasun
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2006-04-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1235回复:6

枚举时发了九个描述符后就没动作了…为什么

楼主#
更多 发布于:2003-05-15 20:38
请问一下大家,我目前在枚举时收到了Host发出来的的80,06,00,02,00,00,09,00
然后我发了09,02,27,00,01,01,00,80,32回去, 然后我用BusHound监看,发现他接下来就重复发送80,06,00,02,00,00,40,00,然后就停了 ,这是不是代表我前面那9个资料发错了啊???  还是有其它的原因造成的错误???

再请问一下大家, 我一直认为所谓的描述符是用来告知Host装置的能力,所以我一直以为除非是资料长度啦,或是Type错误之外, 并没有所谓的对错, 这样的观念对吗??  我这个疑问是延续上面第一个疑问而来的, 麻烦大家了!!

还有第三个问题, 如果在使用BusHound时看到Host有反应第三个步骤, 那是不是代表前面第二个步骤是正确的, 以上三个问题, 非常谢谢谢谢的再麻烦大家。
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-05-16 18:25
肯定是你的描述符发送有错!
超过16要分几次来发送!
samulasun
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2006-04-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-05-16 17:20
80 06 00 01 - 00 00 40 00  GET DESCRIPTOR
00 05 02 00 - 00 00 00 00  SET ADDRESS
80 06 00 01 - 00 00 12 00  GET DESCRIPTOR
12 01 01 00 - 00 00 00 10  ........
80 06 00 02 - 00 00 09 00  GET DESCRIPTOR
09 02 27 00 - 01 01 00 80  ..\'.....      <------Here
23 03 04 00 - 02 00 00 00  SET FEATURE
04                         .          
a3 00 00 00 - 02 00 04 00  GET STATUS
03 01 10 00                ....      
23 01 14 00 - 02 00 00 00  CLEAR FEATURE
80 06 00 01 - 00 00 40 00  GET DESCRIPTOR
20 01 00 c0                cancelled

然后再重复两次就死机了, 在Here的地方没有收到下一组命令, 这是代表我送错描述符所以没有响应吗??

在楼上的楼上那帖子里我说有收到80,06,00,03,00,00,ff,00 我是真的收到这个值,而不是02,不过我觉得这个值是有问题的, 首先是我Host端看不到他有送这个值, 其次是我假定这个命令是对的, 然后送了一堆资料Cfg+EndPoint+…的描述符过去后, 我用BusHound仍然看不到有下一个步骤出现,而若我在D12这里设中断则收到的东西还是80,06,00,03,00,00,ff,00,所以我觉得这个值是有错的。

我在设定完Address之后送了18位的装置描述符00,12(长度),12,01,01,00,00,00,00,10,ab,05,60,00,06,11,49,5a,6e,01
然后又送了9个Configure的描述符 00,09,09,02,27,00,01,01,00,80,01

麻烦大家帮我看一下这描述符有错吗, 要怎幺改才能调通呢??

因为我现在只是要枚举成功, 所以有没有那种 “试验阶段用的描述符” 可以让实验时来确认步骤没有问题

对了!! 再请问一下大家,Control In的过程应该是怎样啊
1. 若不足16位则送出16位
2. 若刚好16位则下一次Control In之后送一个空包
3. 若超过16位则送出16位                  
                                     这样子对吗 ????

求求大家了!!!
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-05-16 16:48
应该是80 06 00 02 00 00 ff 00 吧,那你里初步没举成功只差一步了,把你的全部配置描述符贴出来看看。
samulasun
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2006-04-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-05-16 15:35
8位的, 我刚刚设中断有收到
80,06,00,03,00,00,ff,00 可是为什么我用BusHound拦截不到啊

大家有遇到相同的问题吗?? 一头雾水迷糊中, 请大家帮帮忙
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-05-16 14:43
你用的是16位的数据线还是8位的?
samulasun
驱动牛犊
驱动牛犊
  • 注册日期2003-04-23
  • 最后登录2006-04-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-05-16 11:07
请大侠们帮帮忙啊
游客

返回顶部