1)两种实现方式
=>线程实时读串口(该方式的效率不是很高)
=>事件触发方式读串口(主要使用的方式,下面就是介绍该方式)
在SerialPort类中有DataReceived事件,当串口的读缓存有数据到达时则触发DataReceived事件,其中SerialPort.ReceivedBytesThreshold属性决定了当串口读缓存中数据多少个时才触发DataReceived事件,默认为1。
另外,SerialPort.DataReceived事件运行比较特殊,其运行在辅线程,不能与主线程中的显示数据控件直接进行数据传输,必须用间接的方式实现。
2)SerialPort主要方法