STM32F4 USB虚拟串口多发送

2019-07-20 01:36发布

各位,小弟最近一个项目需要使用和上位机传5M左右的数据,之前用的CH340太慢了!
我想到了USB虚拟串口,因为我对USB协议不熟,也没有时间去研究,所以直接在网上找了示例代码。

现在遇到的问题为:
USB虚拟串口发送完成后,会多发送一些,如图:

111.png

发送了u8 dat[12] = {"Hello world"};之后,串口多发送了两个0x00,发送的0x00多少随着单次发送字节长度变化。当发送不定长的数据时,0x00会变多

问题如下:

1、有没有遇到过这个问题,这是STM虚拟USB的通病吗?还是我的示例代码有问题
2、虽然我也可以加0xFF之类的作为数据包的结尾,或者增加其他的校验,但是会和之间老版本的设备无法兼容。各位有没有什么对策?
3、如果是我的示例代码有问题,还请发送一份代码给我,小弟不胜感激。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
正点原子
1楼-- · 2019-07-21 00:07
oxygensun 发表于 2019-5-23 21:21
大概是5M字节吧,分包传,所以每个包会有多出来的

USB HS才能满足你的要求,USB FS没戏
oxygensun
2楼-- · 2019-07-21 03:40
正点原子 发表于 2019-5-24 02:41
USB HS才能满足你的要求,USB FS没戏

为什么?我分包,每个包分成128字节,多分几个包总是可以的吧?
正点原子
3楼-- · 2019-07-21 09:23
 精彩回答 2  元偷偷看……
oxygensun
4楼-- · 2019-07-21 12:17
正点原子 发表于 2019-5-25 03:11
你要的是速度,不是大小

但是横竖比115200强啊。

无论怎样,大人有没有HS的示例代码,给一份撒。。。。。。
sammy902583
5楼-- · 2019-07-21 15:00
oxygensun 发表于 2019-5-25 12:54
但是横竖比115200强啊。

无论怎样,大人有没有HS的示例代码,给一份撒。。。。。。

ST的库里面都有范例, 您可以自己去找.
oxygensun
6楼-- · 2019-07-21 18:27
 精彩回答 2  元偷偷看……

一周热门 更多>