qianyu123
驱动小牛
驱动小牛
  • 注册日期2002-11-22
  • 最后登录2007-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
20楼#
发布于:2002-11-28 08:49
   我说的直接写意思是:枚举成功后,不经过INQUIRY或READ命令,直接按CBW、WRITE(10)、CSW的顺序写U盘。
   首先不知道能不能直接写,需不需要其他流程;还有就是命令格式对不对,贴在下面。
BYTE WRITE10[31]={0x55,0x53,0x42,0x43,0,0,0,0,0x00,0x02,0,0,0x00,0,0x0a,
                 0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00};
BYTE WRBUF[31]={0x55,0x53,0x42,0x43,0,0,0,0,0x00,0x02,0,0,0x00,0,0x0a,
                 0x3b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00};
  盼指点。谢谢!
joyup
驱动牛犊
驱动牛犊
  • 注册日期2002-03-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
21楼#
发布于:2002-11-28 10:13
我估计写入的问题可能有两个:
1.你在读csw时,是否只发了一次in的包?正常情况下,U盘的写入会慢一些,所以有可能它还没有处理完要写入的数据,你就来IN包了,这时它当然要发NAK的包了,你可以试着多发一些IN包,直到收到CSW包为止。

2.我看你发的CBW包里面,发现你要发给U盘0x200个数据,你是不是全部发完了?应该要发8个out包。

另外,建议你先不要向LBA=0这个地方写,换一个普通的地址写,因为这个地方是逻辑地址空间的MBR的位置,写数据会破坏U盘。
qianyu123
驱动小牛
驱动小牛
  • 注册日期2002-11-22
  • 最后登录2007-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
22楼#
发布于:2002-11-28 11:12
  为了测试看起来方便,LBA=0的位置已经被计算机用其他的软件清零过了,大不了再格式化回来.因为我用BUS HOUND 只能看到前512字节,写到其他地方读起来不方便.
  您所的说的多读几次的方法,我马上试以下.
  我还碰到一个问题,即使是READ命令,也不能循环读取.比如我读完了01处的512字节,延时1秒(实验)后再读02处的512字节,发现也不成功.
  谢谢帮助.
qianyu123
驱动小牛
驱动小牛
  • 注册日期2002-11-22
  • 最后登录2007-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
23楼#
发布于:2002-11-28 11:38
   好象不是延时的问题,我如果等正确的CSW的话,出不来。
newdcl
驱动牛犊
驱动牛犊
  • 注册日期2002-11-25
  • 最后登录2003-10-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
24楼#
发布于:2002-11-28 11:50
请qianyu123 帮下忙,
 我现在也在调试SL811,采用KEIL编译,8051控制
但是我不论如何发setup包(get_descriptor),但是一直收不到NAK
不知是不是程序问题,我参考了ScanLogic的有关驱动,也没着落。
 qianyu123 给提供点帮吗?
qianyu123
驱动小牛
驱动小牛
  • 注册日期2002-11-22
  • 最后登录2007-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
25楼#
发布于:2002-11-28 12:00
  前面帖子里公布的资料.
  我也是下载调试的.
  子程序非常全,我也没看细节,反正不用动一点点.
  谢谢原始作者.
qianyu123
驱动小牛
驱动小牛
  • 注册日期2002-11-22
  • 最后登录2007-09-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
26楼#
发布于:2002-12-02 10:22
  收不到NAK应该高兴才对.
  好象不管你发什么命令,都应该有响应才对,格式对,数据体不对回NACK,格式不对回STALL.
  首先确定地址对不对、ENDPOINT对不对。
  随便说说,请指正。 :) :) :) :) :) ;)
twldn
驱动牛犊
驱动牛犊
  • 注册日期2003-11-28
  • 最后登录2004-10-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
27楼#
发布于:2003-12-20 09:56
循环不行是没有执行DATA0/1轮换
xxg
xxg
驱动小牛
驱动小牛
  • 注册日期2002-02-28
  • 最后登录2005-12-12
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
28楼#
发布于:2003-12-24 16:00
晶阵用的对吗?
  我们有成熟MCU读写U盘的方案.
  详细信息可以到我们的网站上看:http://eden.51.net
  上面有介绍和图片。
SUNSHANGXIN
驱动老牛
驱动老牛
  • 注册日期2002-11-19
  • 最后登录2009-08-01
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望19点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
29楼#
发布于:2004-03-17 17:21
到]
[b]苍白的,不是文字,是人的思想 虚伪的,不是网络,是人的灵魂 伤心的,不是爱情,是人的心灵 难忘的,不是容貌,是人的思诀 黎明的曙光早已不见了夕日的辉煌 东方的日出早就失去了往日的灿烂 而我也尽脱了昨日的笑容去迎接明天的枯涩 [/b]
上一页 下一页
游客

返回顶部