public partial class Form1 : Form { SerialPort serialport1 = new SerialPort();
public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { serialport1.PortName = "COM5"; serialport1.BaudRate = 9600; serialport1.Open(); byte[] data = Encoding.Unicode.GetBytes(textBox1.Text); string str = Convert.ToBase64String(data); serialport1.WriteLine(str); MessageBox.Show("数据发送成功!", "系统提示"); }
private void button2_Click(object sender, EventArgs e) { byte[] data = Convert.FromBase64String(serialport1.ReadLine()); textBox2.Text = Encoding.Unicode.GetString(data); serialport1.Close(); MessageBox.Show("数据接收成功!", "系统提示"); }
为什么button1发送之后,点击button2没有接受到数据,程序直接就死那了,,求解~
9 回答
慕沐林林
TA贡献2016条经验 获得超9个赞
serialport1.Flush没有是否有缓冲问题
另外点击button2是在发送结束后,端口上的数据也有超时丢弃问题,如果已经丢了,那么读的时候就阻塞了,程序直接就死那
- 9 回答
- 0 关注
- 318 浏览
添加回答
举报
0/150
提交
取消