本帖最后由 天臆弄人 于 2019-4-15 16:59 编辑 4 d! n+ Y" t" S$ b2 K/ _# |$ n8 M' X, V 是这个速度吧 2 r* u, r j3 D
你看到的是USB3.0的,我看到的测速率都是在650K 左右。
刚又用了3级优化,测发送速率达到了 903k/S
不是, 是2.0的, 是以Meg为单位的速度
: T) p) q1 c+ Z* D( J, E& U4 U
我之前用USB的虚拟串口测试过,大概65万bytes每秒。你这里的704k/s,如果是字节的话,应该就差不多了,换算成bit的话就差不多是6Mbit/s了9 ~( h5 _0 B) ^' U
1.接收大数据是否验证正确性?! Y3 K. J; c( F; A5 X/ ~ m. ]
2.每包数据的发送长度是多少?
3.从单片机发送到电脑的速度能达到多少?(在验证发送数据正确不丢数的情况下)
你想说什么啊,USB发数据从来没发现过数据出错的,除非你自己处理不过来丢了
USBD_CDC_SetTxBuffer(&USBD_Device, (uint8_t*)pBuf, 64);5 E. E$ N9 b+ ]; a" l# Y
USBD_CDC_TransmitPacket(&USBD_Device);
我用的是L476RG进行USB cdc数据传输的,通过上面的函数发送到PC端,如果将64改为更大256/512/1024/就会出现数据丢包的现象。
我想问的是:
1、你在发送数据时,每包数据的长度为多少?64? 128?256?512?1024?' D5 z1 m+ J: b- {2 n
2、比如说给PC端发送一个50M的数据,多次发送,PC端每次接收的数据是否一致?是否验证过?. H* T; Y8 H: _$ o* \
3、在满足问题2 的情况下,USB的传输速度能达到多少?