我不确定你的最终目标,但是如果你只想查看 receive 数据并在文本框中显示它们,那么标准RS232串行通信应该没有区别,这应该是这样做的 . 此示例中的文本框的名称是txtOutput .
开始:
public Form1()
{
InitializeComponent();
serialPort1.PortName=("COM1");
serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(serialPort1_DataReceived);
serialPort1.Open();
}
串行端口
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
try
{
SetText(serialPort1.ReadLine());
}
catch (Exception ex)
{
SetText(ex.ToString());
}
}
代表:
delegate void SetTextCallback(string text);
附加到文本框:
private void SetText(string text)
{
if (this.txtOutput.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
this.BeginInvoke(d, new object[] { text });
}
else
{
txtOutput.AppendText(text + "\r\n");
}}
请记住使用波形设置串行端口1,并确保已将串行端口添加到表单中 . 我已经使用标准串行连接测试了代码并且它正在运行 .