stm32开发板上做USB通信,用的CDC虚拟串口。
stm32端将ADC采集的数据通过USB传给电脑,传输速率理论上是12Mbps,上位机是从PC端的串口缓冲区拿数据,用C#编写的上位机将ADC采集的波形还原,也就是画图。
我就不明白,安装的驱动作用是?修改了PID和VID。
还有PC端的USB作用不是太明白?是一下那种情况:
1、stm32端传过来的数据根本没有经过USB的缓冲区,而是直接将数据存到串口(COMx)指定的首地址,一字排开存储起来。驱动的作用是给分配一个COM口,比如在我电脑上COM7,在另外一台电脑上是COM2,并且驱动指定存放数据的首地址。
2、stm32端发过来的数据首先缓存到PC端的USB缓冲区,然后USB缓冲区又将数据转存到串口的缓冲区。那么USB往串口传输数据的速率是多少呢?
顺便问各位大佬:PC端USB的缓冲区和串口缓冲区的大小是多少?是如何定义的,是驱动定义的还是人为可修改的?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
PC端的串口,通过文件方式访问,是可以设置缓冲区的,比较灵活,随便你自己设置.
一周热门 更多>