阅读:1790回复:10
求教1581问题!
我用端点bulk传输64个数据:用周立功的usb调试助手接受数据时,发现连续不断的接受数据时,会丢掉一部分数据。比如我一直发送
0000,0001,。。。。0031,接受时大部分是对的,但是还有一些 0000----0007,002x---00031等等,好像丢掉了一些数据,不知道为什么? |
|
沙发#
发布于:2004-11-19 12:44
奇怪的现象,怎么可能在一个报的中间丢失数据呢
通常丢失数据都是在包与包之间! 你可以在写数据时从0写到FFFF,这样就能判断是在什么地方丢失了数据了。 |
|
板凳#
发布于:2004-11-20 18:50
我从0-写到ffff时发现,每64个字节是连续的,但之间不一定连续
00000000h:01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 00000010h:09 00 0a 00 0b 00 0c 00 0d 00 0e 00 0f 00 10 00 00000020h:11 00 12 00 13 00 14 00 15 00 16 00 17 00 18 00 00000030h:19 00 1a 00 1b 00 1c 00 1d 00 1e 00 1f 00 20 00 00000040h:21 00 22 00 23 00 24 00 25 00 26 00 27 00 28 00 00000050h:29 00 2a 00 2b 00 2c 00 2d 00 2e 00 2f 00 30 00 00000060h:31 00 32 00 33 00 34 00 35 00 36 00 37 00 38 00 00000070h:39 00 3a 00 3b 00 3c 00 3d 00 3e 00 3f 00 40 00 00000080h:5b 3c 5c 3c 5d 3c 5e 3c 5f 3c 60 3c 61 3c 62 3c 00000090h:63 3c 64 3c 65 3c 66 3c 67 3c 68 3c 69 3c 6a 3c 000000a0h:6b 3c 6c 3c 6d 3c 6e 3c 6f 3c 70 3c 71 3c 72 3c 000000b0h:73 3c 74 3c 75 3c 76 3c 77 3c 78 3c 79 3c 7a 3c 000000c0h:21 3d 22 3d 23 3d 24 3d 25 3d 26 3d 27 3d 28 3d 000000d0h:29 3d 2a 3d 2b 3d 2c 3d 2d 3d 2e 3d 2f 3d 30 3d 000000e0h:31 3d 32 3d 33 3d 34 3d 35 3d 36 3d 37 3d 38 3d 000000f0h:39 3d 3a 3d 3b 3d 3c 3d 3d 3d 3e 3d 3f 3d 40 3d 00000100h:eb 3d ec 3d ed 3d ee 3d ef 3d f0 3d f1 3d f2 3d 00000110h:f3 3d f4 3d f5 3d f6 3d f7 3d f8 3d f9 3d fa 3d 00000120h:fb 3d fc 3d fd 3d fe 3d ff 3d 00 3e 01 3e 02 3e 00000130h:03 3e 04 3e 05 3e 06 3e 07 3e 08 3e 09 3e 0a 3e 00000140h:b7 3e b8 3e b9 3e ba 3e bb 3e bc 3e bd 3e be 3e 00000150h:bf 3e c0 3e c1 3e c2 3e c3 3e c4 3e c5 3e c6 3e 00000160h:c7 3e c8 3e c9 3e ca 3e cb 3e cc 3e cd 3e ce 3e 00000170h:cf 3e d0 3e d1 3e d2 3e d3 3e d4 3e d5 3e d6 3e 00000180h:81 3f 82 3f 83 3f 84 3f 85 3f 86 3f 87 3f 88 3f 00000190h:89 3f 8a 3f 8b 3f 8c 3f 8d 3f 8e 3f 8f 3f 90 3f 000001a0h:91 3f 92 3f 93 3f 94 3f 95 3f 96 3f 97 3f 98 3f 000001b0h:99 3f 9a 3f 9b 3f 9c 3f 9d 3f 9e 3f 9f 3f a0 3f 000001c0h:4d 40 4e 40 4f 40 50 40 51 40 52 40 53 40 54 40 000001d0h:55 40 56 40 57 40 58 40 59 40 5a 40 5b 40 5c 40 000001e0h:5d 40 5e 40 5f 40 60 40 61 40 62 40 63 40 64 40 000001f0h:65 40 66 40 67 40 68 40 69 40 6a 40 6b 40 6c 40 00000200h:21 41 22 41 23 41 24 41 25 41 26 41 27 41 28 41 00000210h:29 41 2a 41 2b 41 2c 41 2d 41 2e 41 2f 41 30 41 00000220h:31 41 32 41 33 41 34 41 35 41 36 41 37 41 38 41 00000230h:39 41 3a 41 3b 41 3c 41 3d 41 3e 41 3f 41 40 41 |
|
地板#
发布于:2004-11-21 09:47
发和收要一一对应.1581发送和接收有两种模式:16位和8位.是否你的
给搞混了. |
|
|
地下室#
发布于:2004-11-21 10:42
用的16位总线!
我用16位发送的给电脑的. |
|
5楼#
发布于:2004-11-21 11:05
一直发送0000-001f收到如下:
00 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 00 0b 00 0c 00 0d 00 0e 00 0f 00 10 00 11 00 12 00 13 00 14 00 15 00 16 00 17 00 18 00 19 00 1a 00 1b 00 1c 00 1d 00 1e 00 1f 00 00 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 00 0b 00 0c 00 0d 00 0e 00 0f 00 10 00 11 00 12 00 13 00 14 00 15 00 16 00 17 00 18 00 19 00 1a 00 1b 00 1c 00 1d 00 1e 00 1f 00 14 00 15 00 16 00 17 00 18 00 19 00 1a 00 1b 00 1c 00 1d 00 1e 00 1f 00 00 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 00 0b 00 0c 00 0d 00 0e 00 0f 00 10 00 11 00 12 00 13 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 00 0b 00 0c 00 0d 00 0e 00 0f 00 10 00 11 00 12 00 13 00 14 00 15 00 16 00 17 00 18 00 19 00 1a 00 1b 00 1c 00 1d 00 1e 00 1f 00 00 00 01 00 |
|
6楼#
发布于:2004-11-21 13:56
配成单BUF试一下,好像double buffer容易丢数据
|
|
7楼#
发布于:2004-11-21 21:01
你发个全FF试一下,看看数据总线上的数据是什么,再看看你的存储器
里的数据是什么. |
|
|
8楼#
发布于:2004-11-22 10:36
下位机发得太快了,收到发送中断后再发,还有,配置端点后要清BUF,配成双BUF无碍.
|
|
|
9楼#
发布于:2004-11-22 18:15
后来知道了,原来我发送后没有对TX中断进行判断!
太感谢大家了! |
|
10楼#
发布于:2004-11-24 09:57
我发现等待发送中断的时间很长(30ms),为何?
|
|