void IssuePrologixCommand(object sender, CommandPrompt.CommandEventArgs e) { try { if (!ComPort.IsOpen) { ComPort.Open(); } if (e.Command.StartsWith("++")) { WriteAsciiBytes(e.Command + USBTerminator); string result = ReadWithTimeout(); e.Message = result; if (e.Command == "++addr") { GpibAddress.SelectedItem = int.Parse(e.Message); } } else { WriteAsciiBytes(EscapeAndTerminate(e.Command + GpibTerminator)); string result = ReadWithTimeout(); e.Message = result; } } catch (Exception ex) { e.Message = ex.Message; } }
void Console_Command(object sender, CommandPrompt.CommandEventArgs e) { if (SelectPrologix.Checked) { IssuePrologixCommand(sender, e); } else { throw new NotImplementedException(); } }
void Console_Command(object sender, CommandPrompt.CommandEventArgs e) { ComPort.Write(AsciiEncoding.GetBytes(e.Command), 0, AsciiEncoding.GetByteCount(e.Command)); if (e.Command[2] == 'R') { int result = ComPort.ReadByte(); byte[] bytes = BitConverter.GetBytes(result); e.Message = Convert.ToString(bytes[0], 2); } else { e.Message = ""; } }