public bool writeToPort(string MessageToWrite) { try { Port.Write(MessageToWrite); System.Threading.Thread.Sleep(2000); AnsRead(); return(true); } catch (Exception e) { MAT.MessBox(e.Message); return(false); } }
private void connect_Click(object sender, EventArgs e) { if (!isConnected) { if (!portsHandler.connectToPort(portsBox.SelectedItem.ToString())) { MAT.ConnFail(); } else { connectionControl(); } } else { connectionControl(); } }
private void AnsRead() { if (Port.IsOpen) { Port.DiscardInBuffer(); DateTime now = DateTime.Now; DateTime prev = now; string data_rx = ""; while (true) { if (now > prev.AddSeconds(10)) { throw new Exception(MAT.NoAns()); } try { data_rx = Port.ReadExisting(); } catch (Exception) { throw new Exception(MAT.NoAns()); } if (data_rx.Contains("OKEY")) { break; } else if (data_rx.Contains("FALSE")) { throw new Exception(MAT.WrFail()); } now = DateTime.Now; } MAT.Secssed(); } else { throw new Exception(MAT.NoAns()); } }