一些需要注意的地方
Serialport 的datareceived事件是串口接收到不大于SerialPort1.ReceivedBytesThreshold个字节的时候触发,但是具体多少个不确定(实验发现,当第一个字节与下一个字节发送间隔很短的时候几乎就是等于SerialPort1.ReceivedBytesThreshold的时候触发,但是间隔很长的时候就不确定了,但是一定小于SerialPort1.ReceivedBytesThreshold)。
在datareceived 事件中不能直接改变窗体上的控件的属性,例如用一个label显示接收到的数,把数直接赋值给label的text属性,这是不可以,但是可以利用同步委托实现。异步委托也可以实现,但是经过实验,这样会在ReceivedBytesThreshold=1,并且相邻两个字节间隔较长的时候造成串口丢失数据。
同步委托
调用