bool IOscilloscope.Close() { SendCommand(":KEY:LOCK DIS"); FindSerialPort.SetComOpenStatus(Port.PortName, false); if (Port.IsOpen) { Port.Close(); } return(true); }
//初期化 bool IOscilloscope.Init() { try { //Comポートリストの取得 var ListComNo = FindSerialPort.GetComNo(ComName); if (ListComNo.Count() == 0) { return(false); } foreach (var c in ListComNo) { //Host側シリアルポート設定 Port.PortName = c; Port.BaudRate = 38400; Port.DataBits = 8; Port.Parity = System.IO.Ports.Parity.None; Port.StopBits = System.IO.Ports.StopBits.One; //Port.RtsEnable = true; //Port.DtrEnable = true; Port.NewLine = "\n"; Port.Open(); //クエリ送信 Thread.Sleep(500); if (SendCommand("*IDN?", true) && RecieveData.Contains(ID_DS_5105B)) { SetRun(); FindSerialPort.SetComOpenStatus(c, true); return(true); } //開いたポートが間違っているのでいったん閉じる Port.Close(); } return(false); } catch { Port.Close(); return(false); } }
//************************************************************************** //HIOKI3239 COMポートのオープン //引数: //戻値:bool //************************************************************************** public static bool Init323x() { try { //Comポートリストの取得 var ListComNo = FindSerialPort.GetComNo(ComName); if (ListComNo.Count() == 0) { return(false); } foreach (var c in ListComNo) { //Agilent34401A用のシリアルポート設定 port.PortName = c; port.BaudRate = 9600; port.DataBits = 8; port.Parity = System.IO.Ports.Parity.None; port.StopBits = System.IO.Ports.StopBits.One; port.DtrEnable = true;//これ設定しないとコマンド送るたびにErrorになります! port.NewLine = ("\r\n"); port.Open(); //クエリ送信 Thread.Sleep(100); port.WriteLine("*IDN?"); if (GetRecieveData() && RecieveData.Contains(ID_323x)) { FindSerialPort.SetComOpenStatus(c, true); return(true); } //開いたポートが間違っているのでいったん閉じる port.Close(); } State3239 = ErrorCode.OpenErr; return(false); } catch { port.Close(); State3239 = ErrorCode.OpenErr; return(false); } }
//************************************************************************** //COMポートのオープン //************************************************************************** public static bool Init7012() { try { //Comポートリストの取得 var ListComNo = FindSerialPort.GetComNo(ComName); if (ListComNo.Count() == 0) { return(false); } foreach (var c in ListComNo) { if (!port.IsOpen) { //シリアルポート設定 port.PortName = c; port.BaudRate = 9600; port.DataBits = 8; port.Parity = System.IO.Ports.Parity.None; port.StopBits = System.IO.Ports.StopBits.One; port.NewLine = ("\r\n"); port.Open(); } if (SendQuery("*IDN?") && RecieveData == SS7012_ID) { FindSerialPort.SetComOpenStatus(c, true); return(true); } //開いたポートが間違っているのでいったん閉じる port.Close(); } return(false); } catch { ClosePort(); return(false); } }