Example #1
0
        private void ConnectPort(string[] connectPortNo, ref List <string> sensorPortNo, ref List <string> sensorKind)
        {
            //ポートの接続
            //初期化
            sensorKind.Clear();
            sensorPortNo.Clear();

            //シリアルポートの取得
            for (int i = 0; i < connectPortNo.Length; i++)
            {
                //ポートの設定
                Basic.Serial myPort = new Basic.Serial(connectPortNo[i]);

                //ポート開放
                myPort.Open();

                //識別番号のみを切り出す
                char[] kindCode = new char[3];
                while (true)
                {
                    if (myPort.GetSerialStats().ReadChar() == '!')
                    {
                        myPort.GetSerialStats().Read(kindCode, 0, 3);
                        break;
                    }
                }
                //センサーの識別番号
                sensorKind.Add(new string(kindCode));
                //センサのポート番号
                sensorPortNo.Add(connectPortNo[i]);
                //ポート閉鎖
                myPort.Close();
            }
        }
Example #2
0
        public void Open()
        {
            //LRFの起動
            Basic.Serial port = new Basic.Serial(portNo);
            //開放
            port.Open();

            //ポート接続されている
            if (port.GetSerialStats().IsOpen)
            {
                //閉鎖
                port.Close();

                if (!openflag)
                {
                    //LRFのデータ取得
                    Task task = new Task(Proc);
                    task.Start();
                }
            }
            //閉鎖
            port.Close();
        }