BRANDER
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2009-05-01
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望15点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
阅读:1554回复:8

68013写数据出错。

楼主#
更多 发布于:2003-07-07 15:10
问题:利用CYPRESS的主机应用程序从设备读数据,发现最多只能读106个字节,如果用64个字节大小请求,那么第2个请求包只能得到42个字节,丢掉了22个字节。我是利用CPLD给68013的端点8写数据,用逻辑分析仪从数据总线采集数据,发现总线上的数据是正确的。此外68013的数据纵线的D3位与VCC短接,不知这个毛病会影响吗?是什么原因产生这种丢数据的现象呢?请高手指点,以前我师兄倒是实现了1024个字节的传送。
luckyjm
驱动中牛
驱动中牛
  • 注册日期2002-12-19
  • 最后登录2004-03-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-08 08:39
如果你的主机不支持2。0的话,那么一个包应该是64字节,每次可以连续读两个包,即128字节;如果支持2。0的话,应该每个包能传512字节,连续两次就是1024字节。另外,象你这样传数的话,每次只能传64或512的整数倍的数据,要不然的话一定会丢的。
zyz1974
驱动小牛
驱动小牛
  • 注册日期2002-11-06
  • 最后登录2005-06-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-08 10:15
BRANDER
      68013的数据纵线的D3位与VCC短接的问题解决了吗?是什么问题呢?


BRANDER
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2009-05-01
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望15点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-08 18:14
Read 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 EA EB EC ED EE EF E8 E9 EA EB EC ED EE EF
0030 F8 F9 FA FB FC FD FE FF F8 F9 FA FB FC FD FE A9
Read IOCTL passed
0000 08 09 0A 0B 0C 0D 0E 0F 08 09 0A 0B 0C 0D 0E 0F
0010 18 19 1A 1B 1C 1D 1E 1F 18 19 1A 1B 1C 1D 1E 1F
0020 28 29 2A 2B 2C 2D 2E 2F 28 29
Read IOCTL passed
0000 48 49 4A 4B 4C 4D 4E 4F 48 49 4A 4B 4C 4D 4E 4F
0010 58 59 5A 5B 5C 5D 5E 5F 58 59 5A 5B 5C 5D 5E 5F
0020 68 69 6A 6B 6C 6D 6E 6F 68 69 6A 6B 6C 6D 6E 6F
0030 78 79 7A 7B 7C 7D 7E 7F 78 79 7A 7B 7C 7D 7E A9
Read IOCTL passed
0000 88 89 8A 8B 8C 8D 8E 8F 88 89 8A 8B 8C 8D 8E 8F
0010 98 99 9A 9B 9C 9D 9E 9F 98 99 9A 9B 9C 9D 9E 9F
0020 A8 A9 AA AB AC AD AE AF A8 A9
Read 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 EA EB EC ED EE EF E8 E9 EA EB EC ED EE EF
0030 F8 F9 FA FB FC FD FE FF F8 F9 FA FB FC FD FE A9

另外一次实验
0000 A8 A9 AA AB AC AD AE AF A8 A9 AA AB AC AD AE AF
0010 B8 B9 BA BB BC BD BE BF B8 B9 BA BB BC BD BE BF
0020 C8 C9 CA CB CC CD CE CF C8 C9 CA CB CC CD CE CF
0030 D8 D9 DA DB DC DD DE DF D8 D9 DA DB DC DD DE 83
Read IOCTL passed
0000 E8 E9 EA EB EC ED EE EF E8 E9 EA EB EC ED EE EF
0010 F8 F9 FA FB FC FD FE FF F8 F9 FA FB FC FD FE FF
0020 08 09 0A 0B 0C 0D 0E 0F 08 09 0A 0B 0C 0D 0E 0F
0030 18 19 1A 1B 1C 1D 1E 1F 18 19 1A 1B 1C 1D 1E 83
Read IOCTL passed
0000 28 29 2A 2B 2C 2D 2E 2F 28 29 2A 2B 2C 2D 2E 2F
0010 38 39 3A 3B 3C 3D 3E 3F 38 39 3A 3B 3C 3D 3E 3F
0020 48 49 4A 4B 4C 4D 4E 4F 48 49 4A 4B 4C 4D 4E 4F
0030 58 59 5A 5B 5C 5D 5E 5F 58 59 5A 5B 5C 5D 5E 83
Read IOCTL passed
0000 68 69 6A 6B 6C 6D 6E 6F 68 69 6A 6B 6C 6D 6E 6F
0010 78 79 7A 7B 7C 7D 7E 7F 78 79 7A 7B 7C 7D 7E 7F
0020 88 89 8A 8B 8C 8D 8E 8F 88 89 8A 8B 8C 8D 8E 8F
0030 98 99 9A 9B 9C 9D 9E 9F 98 99 9A 9B 9C 9D 9E 83
另外一次实验
Read IOCTL passed
0000 48 49 4A 4B 4C 4D 4E 4F 48 49 4A 4B 4C 4D 4E 4F
0010 58 59 5A 5B 5C 5D 5E 5F 58 59 5A 5B 5C 5D 5E 5F
0020 68 69 6A 6B 6C 6D 6E 6F 68 69 6A 6B 6C 6D 6E 6F
0030 78 79 7A 7B 7C 7D 7E 7F 78 79 7A 7B 7C 7D 7E FF
Read IOCTL passed
0000 88 89 8A 8B 8C 8D 8E 8F 88 89 8A 8B 8C 8D 8E 8F
0010 98 99 9A 9B 9C 9D 9E 9F 98 99 9A 9B 9C 9D 9E 9F
0020 A8 A9 AA AB AC AD AE AF A8 A9 AA AB AC AD AE AF
0030 B8 B9 BA BB BC BD BE BF B8 B9 BA BB BC BD BE FF
Read 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 EA EB EC ED EE EF E8 E9 EA EB EC ED EE EF
0030 F8 F9 FA FB FC FD FE FF F8 F9 FA FB FC FD FE FF
Read IOCTL passed
0000 08 09 0A 0B 0C 0D 0E 0F 08 09 0A 0B 0C 0D 0E 0F
0010 18 19 1A 1B 1C 1D 1E 1F 18 19 1A 1B 1C 1D 1E 1F
0020 28 29 2A 2B 2C 2D 2E 2F 28 29 2A 2B 2C 2D 2E 2F
0030 38 39 3A 3B 3C 3D 3E 3F 38 39 3A 3B 3C 3D 3E FF

下面实验丢失两个数据
Read IOCTL passed
0000 2E 00 2F 00 28 00 29 00 2A 00 2B 00 2C 00 2D 00
0010 2E 00 2F 00 38 00 39 00 3A 00 3B 00 3C 00 3D 00
0020 3E 00 48 49 4A 4B 4C 4D 4E 4F 58 59 5A 5B 5C 5D
0030 5E 5F 58 59 5A 5B 5C 5D 5E 5F 68 69 6A 6B 6C 6D
Read IOCTL passed
0000 6E 6F 68 69 6A 6B 6C 6D 6E 6F 78 79 7A 7B 7C 7D
0010 7E 7F 78 79 7A 7B 7C 7D 7E 7F 88 89 8A 8B 8C 8D
0020 8E 8F 88 89 8A 8B 8C 8D 8E 8F 98 99 9A 9B 9C 9D
0030 9E 9F 98 99 9A 9B 9C 9D 9E 9F A8 A9 AA AB
Read IOCTL passed
0000 AE AF A8 A9 AA AB AC AD AE AF B8 B9 BA BB BC BD
0010 BE BF B8 B9 BA BB BC BD BE BF C8 C9 CA CB CC CD
0020 CE CF C8 C9 CA CB CC CD CE CF D8 D9 DA DB DC DD
0030 DE DF D8 D9 DA DB DC DD DE DF E8 E9 EA EB EC 55
Read IOCTL passed
0000 EE EF E8 E9 EA EB EC ED EE EF F8 F9 FA FB FC FD
0010 FE FF F8 F9 FA FB FC FD FE FF 08 09 0A 0B 0C 0D
0020 0E 0F 08 09 0A 0B 0C 0D 0E 0F 18 19 1A 1B 1C 1D
0030 1E 1F 18 19 1A 1B 1C 1D 1E 1F 28 29 2A 2B
Read IOCTL passed
0000 2E 2F 28 29 2A 2B 2C 2D 2E 2F 38 39 3A 3B 3C 3D
0010 3E 3F 38 39 3A 3B 3C 3D 3E 3F 48 49 4A 4B 4C 4D
0020 4E 4F 48 49 4A 4B 4C 4D 4E 4F 58 59 5A 5B 5C 5D
0030 5E 5F 58 59 5A 5B 5C 5D 5E 5F 68 69 6A 6B 6C 55
luckyjm
驱动中牛
驱动中牛
  • 注册日期2002-12-19
  • 最后登录2004-03-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-09 09:07
能不能具体说说传的和收的差多少,这样看实在是 太麻烦了。
BRANDER
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2009-05-01
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望15点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-09 10:53
我是用64个字节请求的,传的是64个字节,收到有的时候是64个字节,但是随后的 一个数据包就是42,或者是62个字节。有的时候没有出现丢失数据。但是所有的情况都有问题,最后一个数据是错误的。
luckyjm
驱动中牛
驱动中牛
  • 注册日期2002-12-19
  • 最后登录2004-03-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-09 15:28
我也遇到过这种情况,可能是FIFO没有清空的缘故,你可以试试传完第一次后清空FIFO,再传第二次,看看丢不丢数据。
BRANDER
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2009-05-01
  • 粉丝0
  • 关注0
  • 积分52分
  • 威望15点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-09 16:34
我清空了128字节啊,但是每次都是一次成功后,随后的一次就会丢数据,现在只有抓包才可以知道问题啊
luckyjm
驱动中牛
驱动中牛
  • 注册日期2002-12-19
  • 最后登录2004-03-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-07-09 16:42
你是一次送多少数据,读多少数据,清空FIFO前送的数据是多少字节啊?
如果你每次送128字节,读完之后RESET一下,在重新送128字节,再读,看看会不会丢数啊!
游客

返回顶部