阅读:1715回复:8
SL811HS做主机使用SCSI命令时的奇怪问题。
我使用SL811HS做主机,能成功得对设备(U盘)进行枚举,但是在使用SCSI指令的时候,却出现了以下问题:单独执行Inquiry指令或者ReadCapacity时都能正确返回CSW包,但是将两条命令放在一起依次执行时,前一条命令能正确执行,后一条命令在执行过程中,EP0Status的值始终是0x40,即设备始终返回NAK包。百思不得其解,恳请各位大侠指点,多谢!
|
|
最新喜欢:ww7002 |
沙发#
发布于:2005-01-04 10:58
楼主兄弟 我在做枚举 老通不过 能发枚举的程序帮帮我吗?
我的QQ:8892710 |
|
板凳#
发布于:2005-01-04 14:45
我程序写得挺乱的,基本是照着文档上抄的,又根据自己的情况做了简化。你有什么具体问题,贴出来大家讨论吧!
|
|
地板#
发布于:2005-01-05 14:49
我也顶一下
另外想问一下楼主:要使U盘枚举通过,除了device自带的与pc通信的命令处理外(get_des,set……)还要处理其他什么命令吗? ps:用的win2000自带驱动 |
|
|
地下室#
发布于:2005-01-05 17:44
1.swordgun: 0x40代表错误,看看是不是需要delay,或者你的两条命令连续发送过程中会出现问题。通常是发送的数据不对会返回0x40
|
|
5楼#
发布于:2005-01-06 08:51
to:shen_51000:我是用SL811做主机对U盘进行枚举,但根据你的问题你好像是做U盘的,U盘那边应该怎样处理我就不太清楚了!我是只用了你所说的那些标准命令。
|
|
6楼#
发布于:2005-01-10 21:46
我的问题和你一样 暂时只能用清除来进行下一个命令 不知道为什么
你加我qq43123873或给我发信 我们研究下 现在我没管它直接读写FAT 估计就是慢点er |
|
7楼#
发布于:2005-01-11 20:41
虽然我不做host,
但不管HOST,DEVICE,处理相同的协议估计问题也查不多 估计你的问题也在于延时 你发inqury命令后,你有多少的延时等待u盘的回应? 数据和CSW |
|
|
8楼#
发布于:2005-01-17 16:37
我使用SL811HS做主机,能成功得对设备(U盘)进行枚举,但是在使用SCSI指令的时候,却出现了以下问题:单独执行Inquiry指令或者ReadCapacity时都能正确返回CSW包,但是将两条命令放在一起依次执行时,前一条命令能正确执行,后一条命令在执行过程中,EP0Status的值始终是0x40,即设备始终返回NAK包。百思不得其解,恳请各位大侠指点,多谢! 哎呀,我用ISP1161也遇到同样的问题了! 这么说来,不是U盘的问题。也不是USB芯片的问题。 对了,我用的单片机是AT89S52,Wave的仿真器。 感觉我的程序也没有问题,完全按照协议来的,可是,怎么就不对呢。 |
|
|