seuboyyan
驱动牛犊
驱动牛犊
  • 注册日期2003-07-09
  • 最后登录2011-02-12
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:2289回复:11

30分请教 sl811发送数据总是time out 是什么原因

楼主#
更多 发布于:2004-01-08 10:03
枚举成功后  使用usbxfer函数发送数据时,总是出现time out,查看intr为04h,不知大家有没有遇到这种情况,后来是怎么解决的。
LiandongliuUSB
驱动牛犊
驱动牛犊
  • 注册日期2004-11-07
  • 最后登录2004-12-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-18 18:24
顶,坚决支持说出原因在,因我也是同样的情况!!!顶顶顶!!!
刘东
flysquirrel
驱动牛犊
驱动牛犊
  • 注册日期2003-11-27
  • 最后登录2004-06-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-01-13 09:37
谢谢大家 问题已解决。不过具体的原因现在还在寻找,改动了一些地方,但究竟是那个改动在起作用还不知道。
jiangyiyong
驱动大牛
驱动大牛
  • 注册日期2002-11-28
  • 最后登录2004-08-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-01-13 08:43
先假设你的硬件部分没有问题

看发一个数据包后,硬件中断有没有产生,对不对?如果没有产生或不是传输完成中断,那么你前面的代码有问题。


我来自中国 抵制日货
seuboyyan
驱动牛犊
驱动牛犊
  • 注册日期2003-07-09
  • 最后登录2011-02-12
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-01-10 08:21
顶一下
boycn
驱动牛犊
驱动牛犊
  • 注册日期2003-11-26
  • 最后登录2010-08-21
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-01-08 18:51
我也遇到了同样的问题,请高手指点一下啊
seuboyyan
驱动牛犊
驱动牛犊
  • 注册日期2003-07-09
  • 最后登录2011-02-12
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-01-08 13:24
是有重发的处理的 程序如下  不知有没什么问题  关键是有时能枚举有时不能成功 不够稳定  大家帮忙分析一下 //-----------------------TIMEOUT--------------------------
if (result & EP0_TIMEOUT) // TIMEOUT Detected
{
if(usbstack.endpoint==0) // happens when hub enumeration
{
if(++timeout >= TIMEOUT_RETRY)
{
   timeout--;
break; // exit on the timeout detected
}
SL811Write(IntStatus,INT_CLEAR); // clear interrupt status, need to
SL811Write(EP0Control,cmd); // re-arm and request for last cmd again
}
else
{ // all other data endpoint, data transfer
bXXGFlags.bits.TIMEOUT_ERR = TRUE; // failed, set flag to terminate transfer
break; // happens when data transfer on a device
} // through the hub
}
lxb_gd
驱动太牛
驱动太牛
  • 注册日期2002-01-16
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分72408分
  • 威望362391点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2004-01-08 13:18
TIMEOUT 时是要软件处理的!重发试一试!
seuboyyan
驱动牛犊
驱动牛犊
  • 注册日期2003-07-09
  • 最后登录2011-02-12
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-01-08 12:54
我测了下电源为3.3v  不知道有没影响。有时枚举成功,我觉得应该不会是软件问题吧
clementzhao
驱动大牛
驱动大牛
  • 注册日期2003-05-08
  • 最后登录2009-02-20
  • 粉丝0
  • 关注0
  • 积分28分
  • 威望63点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-01-08 12:41
48M的有源晶振,811供电3V
seuboyyan
驱动牛犊
驱动牛犊
  • 注册日期2003-07-09
  • 最后登录2011-02-12
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-01-08 12:05
我用的已经是40M的有源晶振了,枚举有时成功有时不行,bulk方式发送数据时有时也能发送,但u盘接受的数据是错的
枚举和发送不成共时查看ep0status,发现时04h,为超时。我觉得软件应该没什么问题,不知那位高手指点一下
twldn
驱动牛犊
驱动牛犊
  • 注册日期2003-11-28
  • 最后登录2004-10-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-01-08 11:23
使用48M的有源晶振,
就不会04了
游客

返回顶部