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); }
public MySerialPort(SerialPortCfg portCfg, SerialPortRecvHnalder handler) { this.portCfg = portCfg; this.handler = handler; }