Ejemplo n.º 1
0
        public void ExecuteOpenCOMCommand()
        {
            Messager(this, new MessageEventArgs("Opening start.\n"));
            try
            {
                DCB dcb = new DCB();
                dcb.BaudRate = int.Parse(_baudRate);
                dcb.DataBits = int.Parse(_dataBits);
                dcb.StopBits = (StopBits)Enum.Parse(typeof(StopBits), _stopBits);
                dcb.Parity = (Parity)Enum.Parse(typeof(Parity), _parity);

                COMMTIMEOUTS commtimeouts = new COMMTIMEOUTS();
                commtimeouts.ReadTimeout = 500;
                commtimeouts.WriteTimeout = 500;

                comPort1.SetDCB(dcb);
                comPort1.SetCOMMTIMEOUTS(commtimeouts);

                comPort1.Open();
                Messager(this, new MessageEventArgs(string.Format("Port {0} is opened.\n", comPort1.PortName)));

                comPort2.SetDCB(dcb);
                comPort2.SetCOMMTIMEOUTS(commtimeouts);

                comPort2.Open();
                Messager(this, new MessageEventArgs(string.Format("Port {0} is opened.\n", comPort2.PortName)));

                _writeCommand.RaiseCanExecuteChanged();
                _readCommand.RaiseCanExecuteChanged();
                _closeCOMsCommand.RaiseCanExecuteChanged();
                _openCOMsCommand.RaiseCanExecuteChanged();
            }
            catch (Exception ex)
            {
                Messager(this, new MessageEventArgs(ex.Message));
            }
        }
Ejemplo n.º 2
0
 public static void SetCOMMTIMEOUTS(this SerialPort com, COMMTIMEOUTS commtimeouts)
 {
     com.ReadTimeout = commtimeouts.ReadTimeout;
     com.WriteTimeout = commtimeouts.WriteTimeout;
 }