问题:利用CYPRESS的主机应用程序从设备读数据,发现最多只能读106个字节,如果用64个字节大小请求,那么第2个请求包只能得到42个字节,丢掉了22个字节。我是利用CPLD给68013的端点8写数据,用逻辑分析仪从数据总线采集数据,发现总线上的数据是正确的。此外68013的数...
全文
回复(8) 2003-07-07 15:10 来自版块 - USB驱动开发
表情
luckyjm你是一次送多少数据,读多少数据,清空FIFO前送的数据是多少字节啊? 如果你每次送128字节,读完之后RESET一下,在重新送128字节,再读,看看会不会丢数啊!(2003-07-09 16:42)
BRANDER我清空了128字节啊,但是每次都是一次成功后,随后的一次就会丢数据,现在只有抓包才可以知道问题啊(2003-07-09 16:34)
luckyjm我也遇到过这种情况,可能是FIFO没有清空的缘故,你可以试试传完第一次后清空FIFO,再传第二次,看看丢不丢数据。(2003-07-09 15:28)
BRANDER我是用64个字节请求的,传的是64个字节,收到有的时候是64个字节,但是随后的 一个数据包就是42,或者是62个字节。有的时候没有出现丢失数据。但是所有的情况都有问题,最后一个数据是错误的。(2003-07-09 10:53)
luckyjm能不能具体说说传的和收的差多少,这样看实在是 太麻烦了。(2003-07-09 09:07)
BRANDERRead IOCTL passed 0000 C8 C9 CA CB CC CD CE CF C8 C9 CA CB CC CD CE CF 0010 D8 D9 DA DB DC DD DE DF D8 D9 DA DB DC DD DE DF 0020 E8 E9 ...(2003-07-08 18:14)
zyz1974BRANDER 68013的数据纵线的D3位与VCC短接的问题解决了吗?是什么问题呢? (2003-07-08 10:15)
luckyjm如果你的主机不支持2。0的话,那么一个包应该是64字节,每次可以连续读两个包,即128字节;如果支持2。0的话,应该每个包能传512字节,连续两次就是1024字节。另外,象你这样传数的话,每次只能传64或512的整数倍的数据,要不然的话一定会丢的。(2003-07-08 08:39)

返回顶部