C# 虚拟串口通信


 

将主端口COM8拆分成 COM1和COM2两个虚拟端口

 COM8接收的消息会传递给COM1和COM2

 

SerialPort spSend;//spSend,spReceive用虚拟串口连接,它们之间可以相互传输数据。spSend发送数据

SerialPort spReceive; //spReceive接受数据

private delegate void MyDelegate(string indata); //委托,处理接收的数据

private MyDelegate showDelegate = null;

 showDelegate = new MyDelegate(show);

 spReceive = new SerialPort("COM1", 19200, Parity.None, 8, StopBits.One);

spReceive.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); //虚拟串口监听接收消息监听事件,该事件并不在主线程运行
spReceive.Open();//打开串口,工作完成时务必关闭串口

  void show(string indata)

{

//处理COM1接收的消息

}

private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)

{

 SerialPort sp = (SerialPort)sender;

this.Invoke(showDelegate, new object[] { sp.ReadExisting() });

}

软件:Serial Splitter 4.2 

http://www.pc0359.cn/downinfo/57195.html

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM