zoukankan      html  css  js  c++  java
  • 串口通信

    public System.IO.Ports.SerialPort BoundCom = new System.IO.Ports.SerialPort();
    private StringBuilder BoundCombuilder = new StringBuilder();//避免在事件处理方法中反复的创建,定义到外面。
    private bool CheckComPortScanner(string port,string rate)
    {
        try
        {
        BoundCom.PortName = port;  //端口名称,默认COM1
        BoundCom.BaudRate = Convert.ToInt32(rate);  //波特率,默认9600
        BoundCom.DataBits = 8;  //数据位,默认8
        BoundCom.StopBits = System.IO.Ports.StopBits.One;  //停止位,默认 System.IO.Ports.StopBits.One
        BoundCom.Parity = System.IO.Ports.Parity.None;  //奇偶校验,默认 System.IO.Ports.Parity.None
        BoundCom.Encoding = System.Text.Encoding.GetEncoding("GB2312");
        BoundCom.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(BoundCom_DataReceived);
        if (!BoundCom.IsOpen)
        {
            BoundCom.Open();
        }
        RBAppText("串口端口:" + port + "   波特率:" + rate + "  已开启监听");
        }
        catch (Exception ex)
        {
        RBAppText("错误:串口端口:" + port + "   波特率:" + rate + ",校验失败,错误原因:" + ex.Message);
        return false;
        }         
        return true;
    }
    
    private void BoundCom_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
     {
         if (!BoundCom.IsOpen) return;//串口已经关闭
         this.Invoke((EventHandler)(delegate
         {
         byte[] buffer = new byte[BoundCom.BytesToRead];
         BoundCom.Read(buffer, 0, buffer.Length);
         string str =Encoding.Default.GetString(buffer);
         this.txtSNo.Text = str;
    
         RBAppText("成功:串口" + BoundCom.PortName + "数据已接收");
         }));
     }

    作者:Joe.Fan
             
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    技巧和诀窍;在VS 2005里优化ASP.NET 2.0Web项目的Build性能
    [资源]Flex 中文帮助
    13 Awesome Javascript CSS Menus
    兼容FF\IE的事件获得方法
    MSVCR80D.dll not found解决方案
    [转]一种革命性的自绘菜单实现
    [ZZ]马化腾关于产品设计与用户体验的培训
    [ZZ]WatiN:在.NET中测试Web应用程序
    How to Recommender Systems?
    淘宝第三届D2在上海举办
  • 原文地址:https://www.cnblogs.com/fanxingthink/p/5728274.html
Copyright © 2011-2022 走看看