USB轮询为虚拟串行COM

时间:2017-06-01 15:17:58

标签: matlab serialization serial-port usb

我试图绕过这个,但是我们还没有找到答案。一点背景(另外,我不知道这是否是完美的子)。我完成了电子工程专业的本科学习。我们还没有研究太多的沟通,直到现在我还没有找到它的必要性。我目前正在以400 Hz的速率感应和数字化150 Hz带宽的信号。我将1秒的采样存储在带有内置串行USB适配器的微处理器中,因此我可以将其直接连接到我的PC,并且目前使用Matlab将uP的内容以10秒的循环转储到我的计算机上。所以1 s采样,倾倒; 1 s采样,倾倒......总共10次。

根据我收集的内容,uP I / O UART +驱动程序以及主机(我的计算机)中的类似内容允许将USB视为使用rs协议的串行端口。这个协议允许我使用C#,C ++或类似代码来编写中断。

但从USB协议的角度来看,主机通过以确定的速率轮询来启动设备IN包。

所以,我的问题是。当使用USB端口作为串行虚拟端口时,此虚拟端口是否仅限于USB协议,还是以某种方式被覆盖(从轮询角度来看)?我猜这个前者。

我也非常好奇,所有的主板都包含usb到串口的接口,还是通过软件来处理这个?

在我写这篇文章的时候,我一直在读书,而且我猜测我所说的一些事情表明他们缺乏理解,所以请保持温和。我知道我需要阅读越来越多。

非常感谢。

1 个答案:

答案 0 :(得分:0)

我不是深入了解USB的专家,但我会根据我对VCP(虚拟COM端口)的实际使用情况回答您的问题。

对于民意调查问题,是后者。一旦主机将设备识别为串行端口,该设备的工作方式几乎与内置串行端口相同(大多数现代计算机不存在)。唯一的区别似乎是一些参数设置,比如LatencyTimer for VCP。

主机根据USB协议识别VCP,并使用设备制造商驱动程序工作。如果我是正确的,它与计算机主板(通用USB支持除外)无关。

在我看来,你不必过于担心USB问题。虽然串口是一种过时的硬件,但所有主要的软件工具包都很好地支持它。