wh111wh
驱动牛犊
驱动牛犊
  • 注册日期2006-04-10
  • 最后登录2008-05-16
  • 粉丝0
  • 关注0
  • 积分70分
  • 威望8点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
阅读:1474回复:3

1581枚举几乎就成功了

楼主#
更多 发布于:2007-04-17 18:38
  求助各位高手:
我用DSP连1581,16位通用总线模式(参考的是手头一块51控制1581的开发板,8位复用模式)。如今各个过程都移植的差不多了,用BUSHOUND可以看到前边的过程都和开发板正确枚举的过程一样,就是在最后两句
“18.0  CTL    00 09 01 00  00 00 00 00  SET CONFIG              33.1.0        
  18.0  CTL    80 08 00 00  00 00 01 00  GET CONFIG              34.1.0 “之后不是    
“18.0  DI     01                        .                       34.2.0 “                   而变成
“ 20.0  USTS   12 00 00 c0               babble detected         34.2.0        
  11.0  CTL    23 01 01 00  02 00 00 00  CLEAR FEATURE           35.1.0 “,所以图标也弹不出。谁能解释一下这是什么意思,有可能什么原因? 这句以前我对过无数遍,完全一样。而且我通过变量观察,可以确定13个ep0setup包一个都不少,顺序也对。
 
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-04-18 09:03
80 08 00 00 00 00 01 00 GET CONFIG        
你应该返回一个1作为应答,你做了吗?
查查你的Get Config处理函数
wh111wh
驱动牛犊
驱动牛犊
  • 注册日期2006-04-10
  • 最后登录2008-05-16
  • 粉丝0
  • 关注0
  • 积分70分
  • 威望8点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-04-18 12:17
返回的是1,Get Config中有这么一句。但是因为是16位的总线,所以只能向数据端口写个0001H,即01后还跟一个00,不会是这地方出错吧?驱动可是用的现成,没得改。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-04-19 09:23
跟驱动没关系
你应该先往数量寄存器里写1
然后再写0x0001到端口寄存器里
你如果直接写0x0001的话主机会认为收到了2个字节,具体会出什么问题就要看情况了
游客

返回顶部