private static void CloseUart() { if (csp != null) { if (csp.IsOpen) { csp.Close(); } csp.ReceivedEvent -= Csp_ReceivedEvent;//Csp_DataReceived; csp = null; Console.WriteLine($"close serial port:{selectedComPort} succful!"); } #if RunIsService foreach (var csp in servicePorts.Values) { if (csp.IsOpen) { csp.Close(); } } #endif if (sendTimer != null && sendTimer.Enabled) { sendTimer.Stop(); sendTimer.Elapsed -= SendTimer_Elapsed; } msgIndex = 0; }
public void CloseSerialPort() { serialPort.DiscardInBuffer(); //バッファに蓄積されたデータを全て破棄 if (serialPort.IsOpen) { serialPort.Close(); } }
/// <summary> /// 关闭串口 /// </summary> public static bool CloseUart() { bool flag = false; try { if (m_CSP != null) { if (m_CSP.IsOpen) { m_CSP.Close(); } m_CSP.ReceivedEvent -= Csp_ReceivedEvent;//Csp_DataReceived; m_CSP = null; Console.WriteLine($"关闭串口:{SelectedComPort} 成功!"); SelectedComPort = null; flag = true; } #if RunIsService foreach (var csp in servicePorts.Values) { if (csp.IsOpen) { csp.Close(); } } #endif //if (sendTimer != null && sendTimer.Enabled) //{ // sendTimer.Stop(); // sendTimer.Elapsed -= SendTimer_Elapsed; //} //msgIndex = 0; } catch (Exception err) { } return(flag); }
/// <summary> /// 测试串口是否成功 /// </summary> /// <param name="portName"></param> public static void TestUart(string portName) { CustomSerialPort sp; try { sp = new CustomSerialPort(portName, baudRate); sp.Open(); string msg; msg = "Hello Uart"; sp.WriteLine(msg); Console.WriteLine(msg); msg = "Byebye Uart"; sp.WriteLine(msg); sp.Close(); sp.Dispose(); sp = null; Console.WriteLine(msg); } catch (Exception ex) { Console.WriteLine($"Open Uart Exception:{ex}"); } }