cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
阅读:3727回复:24

cy7c68013,FIFO-READ读数据出现错误!希望大虾帮帮忙!

楼主#
更多 发布于:2004-11-23 11:35
我从EP2中写进去的数据是:
Write IOCTL passed
0000 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0010 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
0020 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
0030 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
0040 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
0050 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
0060 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
0070 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
0080 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F
0090 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F
00A0 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
00B0 B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
00C0 C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
00D0 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
00E0 E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
00F0 F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
0100 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0110 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
0120 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
0130 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
0140 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
0150 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
0160 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
0170 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
0180 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F
0190 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F
01A0 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
01B0 B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
01C0 C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
01D0 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
01E0 E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
01F0 F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF

但是从EP6中到这样两个数据包(packets):
Read IOCTL passed
0000 FF 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E
0010 0F 10 11 12 13 14 15 16 17 18 06 06 06 06 06 06
0020 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0030 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0040 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0050 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0060 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0070 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0080 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0090 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00A0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00B0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00C0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00D0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00E0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
00F0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0100 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0110 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0120 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0130 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0140 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0150 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0160 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0170 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0180 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
0190 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01A0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01B0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01C0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01D0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01E0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06
01F0 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06

Read IOCTL passed
0000 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28
0010 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38
0020 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48
0030 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58
0040 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68
0050 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78
0060 79 7A 7B 7C 7D 7E FF 80 81 82 83 84 85 86 87 88
0070 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98
0080 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A4 A5 A6 A7 A8
0090 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8
00A0 B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8
00B0 C9 CA CB CC CD CE CF D0 D1 D2 D3 D4 D5 D6 D7 D8
00C0 D9 DA DB DC DD DE DF E0 E1 E2 E3 E4 E5 E6 E7 E8
00D0 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8
00E0 F9 FA FB FC FD FE FF 00 01 02 03 04 05 06 07 08
00F0 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18
0100 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28
0110 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38
0120 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48
0130 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58
0140 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68
0150 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78
0160 79 7A 7B 7C 7D 7E FF 80 81 82 83 84 85 86 87 88
0170 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98
0180 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A4 A5 A6 A7 A8
0190 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8
01A0 B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8
01B0 C9 CA CB CC CD CE CF D0 D1 D2 D3 D4 D5 D6 D7 D8
01C0 D9 DA DB DC DD DE DF E0 E1 E2 E3 E4 E5 E6 E7 E8
01D0 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8
01E0 F9 FA FB FC FD FE FF 00 01 02 03 04 05 06 07 08
01F0 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18
从读出的数据中可以看到!我的一个数据包前面有26个数据是对的!
而第二数据包刚好是接着第一个数据包读出来的!也就是接着第一个数据包的"18"开始读的数据!!
 我用的是GPIF方式!都调试了好几天了,还是这样的数据出来!我不知道是哪里有问题!希望各位大虾帮帮小妹!!
小妹将感激不尽!先谢谢你们了!
也祝大家好运!

最新喜欢:

farorleefarorl...
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-23 16:35
首先自己UP一下!1
希望各位大虾能提个解决这个问题的方案或是意见!
谢谢你们哦!
我找了一天了也没有找出原因来!真的是很郁闷哦!
chaoswang
驱动小牛
驱动小牛
  • 注册日期2003-10-10
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-11-24 08:18
讲的不清楚,是在开发板上测试的吗,data flow是什么样的,具体实现的方式。
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-11-24 10:10
我用的是GPIF方式中的FIFOREAD/FIFOWRITE:
恩……外围呢就是在CYPRESS公司提供的面包上接了一个SRAM,我就是向里面写512个字节,然后在从端点6(EP6)读出来呀!在control panel下观察到的数据就是这样的!反正就是第一个数据包读出的数据只有一个是正确的!而第二个数据包呢!刚好是接到第一个数据包的读下去!
你看看我的数据就可以看的很清楚的一个归类了!谢谢你的回复!

恩……,今天早上这个问题也基本上解决了!那么现在又碰到一个新的问题,就是我读的第一个数据是“FF”,而不是“00”,
我不知道怎么能让他从“00”开始读!
希望各位继续帮我的忙!谢谢!
chaoswang
驱动小牛
驱动小牛
  • 注册日期2003-10-10
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-11-24 10:58
是 FF 00 01 还是 FF 01 02,
如果是前者,应该是波形控制的问题
后者吗,我的偶尔会有这个问题
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-11-24 11:11
是“FF 00 01 02......”,你是说你波形控制的问题?
为什么呀?
其实我感觉好象就是这样的数据,像用SINGLEREAD 的话也需要一个dummy read,所以我想不知道是不是这个原因的!
你可不可以说的清楚一点呀?
shen_51000
驱动牛犊
驱动牛犊
  • 注册日期2004-10-12
  • 最后登录2006-05-14
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-11-24 12:03
能问一下 你是使用什么工具查看和USB通讯的数据的?
用bus hound传输的数据是看不出的 呵呵。
3kx
蓝蓝的天空上有一朵白云……
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-11-24 14:24
引用:
――――――――――――――――――――――――――――
能问一下 你是使用什么工具查看和USB通讯的数据的?
用bus hound传输的数据是看不出的 呵呵。
3kx
――――――――――――――――――――――――――――



 我用的是手动的方式!所以可以在CONTROL PANEL下看呀!
你说的那个“用BUS HOUND传输的数据是看不出的”,是什么意思呀?
我用KEIL 在线调试也是有我问的问题那样的情况出现的!所以想问问大家,为什么是从“FF”开始读的数据!觉得很奇怪~!
而且当我读到“7E”的话不是“7F”了,而是一个“FF”,就是这个数据有问题,其他的都是正确的数据,我不是我的硬件的问题,还是程序代码还需要进一步的修正!希望大家帮帮忙!
至于给分的问题!一起给比较好!因为只能按一次,要是觉得我给的不分不多的话,我可以再加的!
chaoswang
驱动小牛
驱动小牛
  • 注册日期2003-10-10
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-11-24 14:33
再仔细找找吧,我想应该还是固件的问题
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-11-24 14:40
我就是觉得奇怪呀!就是一个数据是错的,而其他的都是好的!
我都将固件分析过好多遍了,如果是固件的问题,那么肯定不是只有个这个数据有问题呀?
要是硬件的问题话,那么我将写进去的数据改成512个数据全是一样的,那么读出的数据没有任何一个错误的!所以觉得很迷惑!
我都不知道是哪里有问题了!

不过还是谢谢 chaoswang回答我的问题!非常的感谢你!

希望更多人参与数据出错的讨论!我觉得也许很多人都雨果类似的问题的!我们大家一起讨论,怎么样呀?
shen_51000
驱动牛犊
驱动牛犊
  • 注册日期2004-10-12
  • 最后登录2006-05-14
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-11-24 14:56
BUS HOUND显示出来的先是LEN  这个可以的
下行是DI/DO 内容在DESCR列中,可是却看不成数据 是乱符号
蓝蓝的天空上有一朵白云……
shen_51000
驱动牛犊
驱动牛犊
  • 注册日期2004-10-12
  • 最后登录2006-05-14
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2004-11-24 14:59
写进读出前有FIFORESET相应端点缓存吗
也许有残余数据 ――菜鸟之回答
蓝蓝的天空上有一朵白云……
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-11-24 15:14
TO:shen_51000
谢谢你的回复!
你说的这个问题,我已经考虑到了!
也进行了相应的FIFORESET,
我就是觉得奇怪呀!为什么是中间个一个数据出错,而其他没有错误呢?我不知道为什么有这样的一个"BUG"!所以希望大家一起讨论一下!谢谢你们!

也谢谢shen_51000和chaoswang

我想,至于第一个数据为什么是读的是“FF”,更大可能是.因为写完了数据,而最后一个写入的数据还是保留在DATA BUS上,所以是"FF",至于怎么来解决这个问题,我现在还找不到答案,不知道哪位大虾是不是也碰国类似的问题!希望你能发表一下意见!谢谢!

cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2004-11-25 08:57
那位大虾能帮我吗?
我现在的数据成了这样的了:
写入数据是:
Write IOCTL passed
0000 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0010 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
0020 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
0030 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
0040 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
0050 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
0060 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
0070 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
0080 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F
0090 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F
00A0 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
00B0 B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
00C0 C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
00D0 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
00E0 E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
00F0 F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
0100 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0110 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
0120 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
0130 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
0140 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
0150 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
0160 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
0170 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
0180 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F
0190 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F
01A0 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
01B0 B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
01C0 C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
01D0 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
01E0 E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
01F0 F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF

读出的数据是:
Read IOCTL passed
0000 FF 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E
0010 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E
0020 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E
0030 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E
0040 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E
0050 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E
0060 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E
0070 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E
0080 FF 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E
0090 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E
00A0 9F A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE
00B0 AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE
00C0 BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE
00D0 CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE
00E0 DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE
00F0 EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE
0100 FF 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E
0110 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E
0120 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E
0130 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E
0140 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E
0150 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E
0160 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E
0170 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E
0180 FF 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E
0190 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E
01A0 9F A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE
01B0 AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE
01C0 BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE
01D0 CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE
01E0 DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE
01F0 EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE

这里面有两个问题:
1.第一个数据是“FF”而不是“00”
2.当读到“7E”的时候,后面的不是“7F”而是“FF”,其他的数据都是正确的!

至于第二个问题!我觉得可能是我的硬件的问题!我是在面包板上接的飞线,可能有一点干扰!
而对于第一个问题,我实在是不知道怎么去消除这个问题了!
都已经找了三天了,还是不知道问题出在哪里了!
希望各位提替意见!谢谢各位!
这个问题解决后,我将我给的分全部分给你们!以表示我的谢意!!
先谢谢了!
chaoswang
驱动小牛
驱动小牛
  • 注册日期2003-10-10
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2004-11-25 09:16
能不能把有关GPIF的代码贴出来,帮你check一下
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2004-11-25 09:20
这个………恩……,公司不允许的!
你认为更多的是代码的问题吗?
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2004-11-25 10:27
我发我的TD_POLL中的读的程序在这里:
 if(in_enable )    // the IN transfers is enable
      
    {  
  if(GPIFTRIG & 0x80)    // the peripheral is IDLE      
{
   
       if(!(EP68FIFOFLGS & 0x01 ))           // EP6FF = 0 when buffer available
           {
             // the host is taking EP6 data fast enough

                  ledX_rdvar = LED2_ON;   // visual  

       SYNCDELAY;
                  Peripheral_SetAddress( 0 );

                  SYNCDELAY;
                  EP6GPIFTCH = 0x02;    
                  SYNCDELAY;
                  EP6GPIFTCL = 0x00;
                 // trigger FIFO read transaction(s), using SFR
                 // R/W=1, EP[1:0]=FIFO_EpNum for EPx read(s)
              
 SYNCDELAY;
                  GPIFTRIG = GPIFTRIGRD | GPIF_EP6;

                 // NOTE: 512 bytes transfers in ~75usec on 8-bit async bus
                 // NOTE: 64 bytes transfers in ~10usec on 8-bit async bus
                  
              

    // wait for the transaction to terminate naturally...
                 SYNCDELAY;                
                while( !( GPIFTRIG & 0x80 ) )     // poll GPIFTRIG.7, DONE bit...
                   {
                      // should take <75usec @ 8-bit async.
                    ;  
                   }
              
            
  //  GPIF currently pointing to EP6, last FIFO accessed
          if(!( EP2468STAT & 0x20 ))
    {  
                  // master has all the data the peripheral sent...
                    SYNCDELAY;
EP6BCH = 0x02;
       SYNCDELAY;
EP6BCL = 0x00;     // pass the pkt. to USB domain


                 }
   }
       else
        {
          // peripheral interface busy...
          
        }
    }
  }
大家看看是不是这里出了问题!谢谢!
wshsabc
驱动牛犊
驱动牛犊
  • 注册日期2003-05-09
  • 最后登录2008-01-14
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2004-11-25 12:41
你能保证你的波形第一个IN的数据在数据线上有效吗?我觉得波形开始时有问题。
cahwlx1982
驱动小牛
驱动小牛
  • 注册日期2004-08-16
  • 最后登录2006-06-17
  • 粉丝0
  • 关注0
  • 积分31分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2004-11-25 13:19
引用:
――――――――――――――――――――――――――――――
你能保证你的波形第一个IN的数据在数据线上有效吗?我觉得波形开始时有问题。
――――――――――――――――――――――――――――――


不是很明白你的意思,可不可以说的清楚一点呀?
 我觉得我的波形的开始没有问题呀?
你可不可以将的详细一点呀?
chaoswang
驱动小牛
驱动小牛
  • 注册日期2003-10-10
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2004-11-25 17:31
你贴的这些代码没什么问题。你的波形那?
上一页
游客

返回顶部