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 

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

  

 

posted @   左转右转  阅读(4185)  评论(2编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示