1.下载VSPD虚拟串口破解版下载6.9 汉化版

2.C#界面

3.source
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
namespace ReadSerialPort
{
public partial class Form1 : Form
{
delegate void UpdateTextEventHandler(string text); //委托,关键所在
UpdateTextEventHandler UpdateTextEventHandler1;
public Form1()
{
InitializeComponent();
}
private void OpenPort()
{
try
{
this.UpdateTextEventHandler1 = new UpdateTextEventHandler(this.getCOM1); // 实例化委托对象
this.serialPort1.Open();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
this.serialPort1.Close();
}
try
{
this.serialPort2.Open();
}
catch (System.Exception ex)
{
//MessageBox.Show(ex.ToString());
this.serialPort2.Close();
}
}
private void Form1_Load(object sender, EventArgs e)
{
OpenPort();
this.comboBox1.Items.AddRange(SerialPort.GetPortNames());
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
this.serialPort1.Close();
this.serialPort2.Close();
}
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
string readString = this.serialPort1.ReadLine();
this.Invoke(UpdateTextEventHandler1, new string[] { readString });
}
private void getCOM1(string text)
{
if (this.serialPort1.IsOpen)
this.txtReceive.Text = this.txtReceive.Text + "\r\n" + text;
}
private void btnSend_Click(object sender, EventArgs e)
{
if (this.serialPort2.IsOpen)
this.serialPort2.WriteLine(this.txtSend.Text.Trim());
}
}
}
C#实现串口读写测试
本文介绍了如何使用C#进行串口读写测试,包括VSPD虚拟串口的下载和C#窗体应用的代码实现。通过创建委托和事件处理,实现了串口数据的接收和发送功能。
3887

被折叠的 条评论
为什么被折叠?



