SerialPort为C#.NET自带的串口通讯类,支持485串口通讯,其中包括写和读操作,类可设置串口参数设置接收函数设置串口波特率,下面介绍下此类如何使用;本案例以VS2019为例。

新建项目

  • 打开VS2019,创建“新项目”->“控制台项目(.NET Framework)”
    1601023613.jpg

1601023613.jpg

{dotted startColor="#ff6c6c" endColor="#1989fa"/}

串口操作

  • 添加“System.IO.Ports”命名空间
  • 设置串口连接参数并创建串口对象“SerialPort”
  • 绑定串口数据接收事件,并打开串口
  • 程序退出或释放资源时关闭串口
class Program
    {
        private static System.IO.Ports.SerialPort serialPort;
        static void Main(string[] args)
        {
            serialPort = new System.IO.Ports.SerialPort(
                "COM1",//目标串口号
                115200,//串口波特率
                System.IO.Ports.Parity.None,//校验检查
                8,//数据位值
                System.IO.Ports.StopBits.One//停止位
                );
            //绑定数据接收事件
            serialPort.DataReceived += OnDataReceived;
            //打开串口
            serialPort.Open();

            ////发送数据示例
            //serialPort.Write("test");
            ////程序退出应关闭串口
            //serialPort.Close();
        }

        /// <summary>
        /// 数据接收事件,由此接收设备发送的数据
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private static void OnDataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {
             //若与设备交互频繁,此处应用队列或者异步去处理上报的数据,否则有几率阻塞通讯导致其他问题。
        }
    }
最后修改:2022 年 11 月 26 日
免责声明:本站为个人博客,博客所发布的一切修改补丁、注册机和注册信息及软件的文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途。否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。访问和下载本站内容,说明您已同意上述条款。