1.连接串口方法

SerialPort ser = new SerialPort();//也可以在工具箱中直接拖SerialPort控件
public void OpenCom()
{try{//波特率ser.BaudRate = 9600;//数据位ser.DataBits = 8;ser.PortName = cbcomsmqB.Text;//端口几,例COM1//两个停止位ser.StopBits = System.IO.Ports.StopBits.One;//无奇偶校验位ser.Parity = System.IO.Ports.Parity.None;ser.ReadTimeout = 100;ser.Open();if (!ser.IsOpen){MessageBox.Show("端口打开失败");return;}else{ToolData.WriteLog(lrtxtLog, "端口" + cbcomsmqB.Text + "打开成功", 0);}ser.DataReceived += ser_DataReceived;}catch (Exception ex){//stop();ser.Dispose();ToolData.WriteLog(lrtxtLog, ex.Message + "-----------------------", 1);}
}

2.事件监听方法

private void ser_DataReceived(object sender, SerialDataReceivedEventArgs e){string receive = "";//数据接收try{Thread.Sleep(50);  //(毫秒)等待一定时间,确保数据的完整性 int len        int len = ser.BytesToRead;if (len != 0){byte[] buff = new byte[len];ser.Read(buff, 0, len);receive = Encoding.Default.GetString(buff);//数据接收内容}}catch{ToolData.WriteLog(lrtxtLog, "接收数据出错", 1);return;}}

3.发送数据方法

public void comsendmessage(object message){try{ser.Write(message.ToString());ToolData.WriteLog(lrtxtlog, "已发送字符串:" + message.ToString(), 0);}catch (Exception ex){ToolData.WriteLog(lrtxtlog, "错误提示:" + ex.Message, 1);}}

4.断开连接方法

public void endconnect()
{ser.Dispose();
}

5.获取所有串口列表

String[] portnames = SerialPort.GetPortNames();
foreach (var item in portnames)
{cbcomname.Items.Add(item);cbcomsmqA.Items.Add(item);cbcomsmqB.Items.Add(item);cbtestcomname.Items.Add(item);
}

C#利用SerialPort类对串口发送接收数据相关推荐

  1. c# 串口发送接收数据

    /********************** 串口数据接收事件 *****************************/private void SerialPort_DataReceived( ...

  2. 51单片机模拟串口发送接收数据(不使用SBUF)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 51单片机.模拟串口.串口发送.串口接收.逻辑分析仪 前言 一.配置定时器 二.串口发送 三.串口接收 四.主函数 五.波形图 5.1 ...

  3. STM32串口发送接收数据

    目录 1.串口通信 2.串口的结构体 3.如何配置串口的发送 4.通过串口向电脑发送ok字符 5.封装发送字符串函数 6.重定向printf串口发送 7.串口输入控制LED灯开关 遇到的问题 1.串口 ...

  4. 在C#中使用SerialPort类实现串口通信 遇到多线程问题

    在C#中使用SerialPort类实现串口通信 遇到多线程问题 在C#中使用SerialPort类实现串口通信. 2009年11月01日 星期日 10:03 在.NET work 2.0中提供了Ser ...

  5. 求android 中串口的发送接收数据代码

    RT,求高手帮忙! 就是 /dev/ttyS0 和/dev/ttyS1 两个设备的通信问题.. 同求~ 这个是不是需要串口驱动啊?最近正在搞这个串口通信的案子,头疼 同样也没有搞出来,老是报:不能扫描 ...

  6. C语言程序周期接收虚拟串口发送的数据

    背景 我之前的一篇博客讲解了怎么使用虚拟串口和串口调试助手:虚拟串口模拟器和串口调试助手使用教程,这次我们在此基础上继续来使用虚拟串口周期发送和接收功能. 我们知道,在Windows的操作系统上,将串 ...

  7. STM32—USART串口发送+接收

    STM32-USART串口发送+接收 本文来自于<STM32--江科大>的笔记整理. 文章目录 STM32-USART串口发送+接收 10.3 串口发送 串口调试助手 10.3.1 数据模 ...

  8. matlab 串口实时接收数据 绘图

    利用matlab实时接收串口发送的数据,并绘图. clear s=serial('com5') %选择串口号 set(s,'BaudRate',115200,'StopBits',1,'Parity' ...

  9. 使用c#实现tcp的连接和发送接收数据

    最近有个小项目,需要调用装置的录波数据,使用tcp模式,在这里整理了下如何使用c#实现tcp连接并实现发送接收数据,分享出来. 我这里使用的tcpclient ,终端是tcpserver模式. 首先自 ...

最新文章

  1. 如何使用ui-router中的ui-sref将参数传递给控制器
  2. access sql 取余_计算机二级ACCESS模拟题库2016最新
  3. salt return mysql_mysql中储存salt返回结果
  4. COCOS2D-X 抖动效果 CCShake
  5. 引入其他配置文件(分模块开发)
  6. 请求编码和响应编码乱码原因及解决方案
  7. [css] css中的选择器、属性、属性值区分大小写吗?
  8. 声明式事务、Spring 中常用注解、Ajax
  9. 关于JVM内存的N个问题
  10. win10下如何检测快捷键被被哪个进程占用
  11. 100句美文、150个哲理成语和9篇课本素材运用
  12. 计算机毕设(附源码)JAVA-SSM京津冀畅游网设计
  13. 阿里云企业实名认证教程
  14. 家具vr虚拟交互展示外包制作
  15. Android学习-通知的使用详解
  16. SM2加密解决java与iOS端加解密不配套问题
  17. 2.2.2 定点数的移位运算
  18. 端午节论屈原之离骚和程序开发之离怨
  19. 「实在RPA·制造业数字员工」助力制造业加「数」发展
  20. 多背景图CSS,CSS3设置多张背景图片

热门文章

  1. linux 下camera调试笔记【转】
  2. jenkins搭建cc++自动化构建
  3. p187让元素垂直居中
  4. MongoDB:逐渐变得无关紧要
  5. bash脚本编程之for循环
  6. ubuntu10.10---用Apache+mod_wsgi部署python程序
  7. (转)一个as3写的减速效果
  8. 解决存储过程中数据安全问题的四种方式
  9. xp里删除不想要的删不掉的帐户
  10. winfrom中,父窗体中只允许显示一个子窗体的代码怎么写?