hongboluo
驱动牛犊
驱动牛犊
  • 注册日期2004-03-01
  • 最后登录2004-06-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1115回复:1

重提SL511HS USB host 端发送Setup包后总超时的问题

楼主#
更多 发布于:2004-03-16 10:02
我现在运行cypress提供的sample程序,可是在发送第一个setup包时
总是超时。

我从论坛上发现叫wqs_79的朋友也遇到过这个问题:

[引用]
SL811做Host端,插入U盘后,slave_detect()检测到全速设备,进入
EnumUsbDev(0),执行到GetDesc(uAddr,DEVICE,0,18,DBUF)<uAddr=0>,
VendorCmd(BYTE usbaddr,BYTE bReq,BYTE bCmd,WORD wValue,WORD wIndex,WORD wLen,BYTE *pData)函数中对setup进行赋值,
setup.bmRequest = 0x80;
setup.bRequest = 0x06;
setup.wValue = 0x0001;
setup.wIndex = 0x0000;
setup.wLength = 0x1200;
可是在发送时,当第一次发送SETUP包(usbXfer(usbaddr, ep0, PID_SETUP, 0, payload, 8, (BYTE*)setup) )就返回超时。
[引用结束]

最后他的解决方法是发现setup.wValue和setup.wLength的值不对,
应该是setup.wvalue = 0x0100, setup.wLength=0x0012.

可是我在调试过程中发现了这个错误,也纠正了这个错误,可是现在
返回的仍然是超时。我被这个问题困惑了很久了,不知道有没有朋友
以前也遇到过同样的问题。或者不知这个sample code里还存在其他的bug.

望同行们多多指点一下。

最新喜欢:

ww7002ww7002
purple.sun
驱动牛犊
驱动牛犊
  • 注册日期2003-11-17
  • 最后登录2013-08-09
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望12点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-03-16 16:54
没有碰到过
偶是菜鸟,也在做Host,调了N久也没成功。正在郁闷中
游客

返回顶部