技术频道

解析虚拟串口和电脑自带串口(COM1)的区别

  虚拟串口能实现这样的功能吗?

  最近在为公司开发一套系统,其中用到了一个串口设备,暂且不论具体设备是什么用途。但与此设备的通讯不是通过物理串口,而是通过虚拟串口进行的----

  现在一真实的物理串口com1,但是现在已被一个设备A占用了,实际应用可能需要别的设备也从这个串口读数据,例如:设备B需要从com1口读数据,那么有什么方法可以实现呢

  是不是用一个虚拟串口的程序,虚拟出一个串口出来,例如:com3,com3和com1关联,这样读取com3的内容和从COM1中读到的数据内容是一样的,那设备A和设备B可以分别读取com1和com3的内容,但其实数据内容都是一样的,都是从物理串口com1进来的..

  解答:虚拟的就是虚拟的,是用来调试程序用的。完全靠程序来模拟,和已有的com1是不共用任何东西的。使用起来也不会产生任何冲突。

  我们知道早期的PC机都具有一到两个物理串口,COM1/COM2 或 RS232。然后所谓虚拟串口通信,就是在操作系统中安装一个驱动软件,让操作系统以为有一个物理上的串口能够操作和通信,但是这个串口在物理上并不存 在,这个虚拟串口的数据来源可以是来自网络上的,或者来自文件的,或者来自其他物理设备然后被软件转发到这个虚拟的串口上的。

  虚拟串口是用操作系统的虚拟驱动技术产生的串口(COM口),相对于计算机本身的硬件串口(COM1等)来说虚拟串口并不对应一个物理上的串口,但是计算机应用软件可以像硬件串口一样地使用虚拟串口,对于串口软件来说虚拟串口和硬件串口并没有区别。

  虚拟串口是靠硬件来实现的,现在市场上有很多协议转换类的产品。比如:usb转232/485串口,网口转串口,光纤转串口,PCI转232/485等设备。

  小结:通过使用虚拟串口的方式可以很方便的调试串口信息,不用在设备仪器边上进行实时调试,还可以方便的模拟一些可能会出现错误的数据格式进行调试。

文章版权归西部工控xbgk所有,未经许可不得转载。