int num = serialPort1.BytesToRead; //ByteToRead就是串口的buffer数据的个数 if (num>=36) { byte[] data = new byte[36]; serialPort1.Read(data, 0, 36); //读数 Encapsule(data); //数据处理 } }
byte[] _buffRecive = new byte[36];_serialPort1.Read(_buffRecive,0,_buffRecive.Length);
serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);//过程注册 private static void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
int num = serialPort1.BytesToRead; //ByteToRead就是串口的buffer数据的个数
if (num>=36)
{
byte[] data = new byte[36];
serialPort1.Read(data, 0, 36); //读数
Encapsule(data); //数据处理
}
}