c#串口测试

Posted 国产小品牌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#串口测试相关的知识,希望对你有一定的参考价值。

软件和代码网盘下载 https://pan.baidu.com/s/1dFrE1pv#list/path=%2F

SerialPort 类 https://msdn.microsoft.com/zh-cn/library/system.io.ports.serialport(v=vs.110).aspx

 

问题解释:

命名空间:using System.IO.Ports;

1.serialPort可以直接调用系统的组件,也可以自己写。最好自己写到方法里面,否则跨界面不好调用。

2.serialPort有默认属性,给它一个串口以后可以直接使用。最好用枚举把参数传递过来。

3.流程:赋值,判断状态,开启,传递/接收,关闭。

4.发送:Write;接收send;

5.最困难的是接收。通过serialPort的 DataReceived接收数据,通过serialPort error获取错误信息。

如果不使用控件而自定义的Privite SerialPort  se=new serialPort(); ser.DataReceived += new SerialDataReceivedEventHandler(ser_DataReceived);

写下ser.DataReceived +=  双击tab 然后就自动写了一个  void ser_DataReceived(object sender, SerialDataReceivedEventArgs e)方法; 

6.每次缓冲有数据系统会调用DataReceived ,在里面写一个方法,先把数据传递到txt上面然后调用这个方法,截取字符串来判断消息然后处理消息。 不过因为控件是主线程创建的,所以会产生线程间操作无效: 从不是创建控件的线程访问;解决办法 微软文档:https://msdn.microsoft.com/en-us/library/ms171728.aspx

1.使用委托。2使用backgroundWorker。

 

以上是关于c#串口测试的主要内容,如果未能解决你的问题,请参考以下文章

C#实战:基于WPF开发一个串口转UDP工具

串口编程 - 虚拟串口设备(串口测试)

自己编了个C#的串口调试程序,但发送命令后,得不到数据!找不到问题所在,想请教各位!谢谢,急用!

怎样测试串口和串口线是否正常

Android 串口驱动和应用测试

Linux下如何测试及使用USB转串口线