C#实现串口数据循环发送(待更)
1.起始
最近在公司做上位机和设备进行串口通信的项目,自己就写了个串口通信工具,今天是第三天,刚刚实现串口的双向通信。
2.软件的界面
先进行界面设计,将需要的功能放上来。
主要功能包括:打开串口、关闭串口,向串口发送数据以及从串口读取数据。在发送和接收的文本框里面,我加上了切换16进制的功能,方便调试。
在主窗体中需要一些变量用于存储串口名、串口缓冲区数据等相关信息。
private string[] portNames = null;
private List<SerialPort> serialPorts;
private byte[] portBuffer;
串口号的选择采用下拉菜单式,需要在初始化Form的时候扫描所有可用串口并显示在comboBox中。初始化之后需要加上以下代码:
this.serialPorts = new List<SerialPort>();
this.portNames = SerialPort.GetPortNames();
this.portBuffer = new byte[1000];
其中第二行将扫描到的各串口名以字符串存入this.portNames数组。之后需要将扫描到的串口读取到comboBox中。
//Assign the value of port names to serial ports display
if (this.por