public virtual void Close()
{
if (m_serialPort != null)
{
m_serialPort.DataReceived -= m_serialDataReceivedEventHandler;
try { m_serialPort.Close(); } catch { }
m_serialPort = null;
m_stream = null;
}
}