网站服务器和空间,谁会制作网站,哪儿网站建设费用低,wordpress手机底部本文用来简单介绍一下C#串口编程的知识#xff0c;主要以实例为内容。 凡是串口设备和计算机交互的时候都用到串口#xff0c;在C#中我们如何来操作串口呢#xff1f; 大话串口工作原理 实际串口是用来和外部设备进行交换数据的#xff0c;我抽象出下面一个图形#xff0c…本文用来简单介绍一下C#串口编程的知识主要以实例为内容。 凡是串口设备和计算机交互的时候都用到串口在C#中我们如何来操作串口呢 大话串口工作原理 实际串口是用来和外部设备进行交换数据的我抽象出下面一个图形来简单解释一下串口的原理。 上图表示一个COM口可以往外传输数据流也可以往里传输数据流我们如果想获得传入的数据流只需要监听往计算机的数据流即可。 虚拟串口软件 当我们没有设备时我们可以用虚拟串口软件来模拟串口操作。下面我来介绍一款软件 VSPM 虚拟串口软件。大家可以去天空软件站下载地址请点击我。 下载下来安装成功后如下图所示 然后你就点击添加端口我上图中的COM2和COM3就是VSDM添加的这个时候你把COM2和Com3看做是一个真实的串口然后用两个软件连接就相当于一个串口了我用一个串口测试器和我们自己编写的软件进行测试 如下图所示我们的串口测试器已经连接到COM3上了 监听串口程序 直接上代码在控制台程序中添加如下源码就可以直接运行了 using System;
using System.IO.Ports;
using System.Text;
namespace PortDataReceived
{class PortDataReceived{public static void Main(){SerialPort mySerialPort new SerialPort(COM2);mySerialPort.BaudRate 9600;mySerialPort.Parity Parity.None;mySerialPort.StopBits StopBits.One;mySerialPort.DataBits 8;mySerialPort.Handshake Handshake.None;mySerialPort.DataReceived new SerialDataReceivedEventHandler(DataReceivedHandler); mySerialPort.Open(); Console.WriteLine(Press any key to continue...); Console.WriteLine(); Console.ReadKey(); mySerialPort.Close();}private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e){SerialPort sp (SerialPort)sender; string indata sp.ReadExisting(); Console.WriteLine(Data Received:); Console.Write(StrToHex(indata));}public static string StrToHex(string mStr) //返回处理后的十六进制字符串 {return BitConverter.ToString(ASCIIEncoding.Default.GetBytes(mStr)).Replace(-, );}}
} 运行结果如下图 数据完全正确发出的数据和接受的数据都一样而且此时VSDM的界面有简单变化 总结本文写了一个用虚拟串口软件编写的C#串口编程实例。希望对大家有帮助。 除非注明木杉博客文章均为原创并采用BY-NC-SA协议进行授权原创文章转载请注明 转载自木杉博客 转载于:https://www.cnblogs.com/lusunqing/p/3449594.html