Пример #1
0
        private Serial.SerialPortCfg CollectPortCfg()
        {
            int       baudRate  = 115200;
            int       dataBits  = 8;
            Parity    parity    = Parity.None;
            StopBits  stopBits  = StopBits.One;
            Handshake handshake = Handshake.None;

            var text = tbBaud.Text;

            if (string.IsNullOrWhiteSpace(text))
            {
                throw new System.Exception("please input valid baud rate");
            }

            if (!int.TryParse(text, out baudRate))
            {
                throw new System.Exception("baud rate can't convert to int");
            }

            text = tbDataBits.Text;
            if (string.IsNullOrWhiteSpace(text))
            {
                throw new System.Exception("please input valid data bits");
            }

            if (!int.TryParse(text, out dataBits))
            {
                throw new System.Exception("data bits can't convert to int");
            }

            parity    = (Parity)(cbParity.SelectedIndex);
            stopBits  = (StopBits)(cbStopBits.SelectedIndex);
            handshake = (Handshake)(cbHandshake.SelectedIndex);

            var cfg = new Serial.SerialPortCfg();

            cfg.baudRate  = baudRate;
            cfg.dataBits  = dataBits;
            cfg.parity    = parity;
            cfg.stopBits  = stopBits;
            cfg.handshake = handshake;

            // port name
            cfg.portName = cbPort.SelectedValue as string;

            return(cfg);
        }
Пример #2
0
 public MySerialPort(SerialPortCfg portCfg, SerialPortRecvHnalder handler)
 {
     this.portCfg = portCfg;
     this.handler = handler;
 }