void m_serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { int byteCount = m_serialPort.BytesToRead; while (byteCount > 0) { m_rdTimout = 0; byte[] buf = new byte[byteCount]; try { int rdLen = m_serialPort.Read(buf, 0, byteCount); m_rxBuf.PutRange(buf, 0, rdLen); // DataRecivedEventArgs drea = new DataRecivedEventArgs(buf, rdLen); OnDataRecived(this, drea); // Thread.Sleep(0); byteCount = m_serialPort.BytesToRead; } catch { byteCount = 0; break; } } }
protected void OnDataRecived(object sender, DataRecivedEventArgs e) { if (DataRecived != null) { DataRecived(sender, e); } }