/// <summary> /// Initializes a new connection to the interface /// </summary> /// <remarks>Uses the credentials Port, StopBites, aso.</remarks> private void InitConnection(string port = "COM2", int baudRate = 57600, ComPortParity parityBits = ComPortParity.None, int dataBits = 8, ComPortStopBits stopBits = ComPortStopBits.One) { SerialPortConnection = new ComPortConnection(port, baudRate, parityBits, dataBits, stopBits); try { SerialPortConnection.Open(); } catch (System.UnauthorizedAccessException notavail) { // COM Port in use logme.Log(i18n.FlakeLIErrors.ComPortNotAvailable, logme.LogLevel.error); notavail.ToString(); // foo return; } catch (IOException ioex) { logme.Log(ioex); return; } catch (Exception ex) { logme.Log(ex); return; } }
/// <summary> /// translate flake to serialport an vv /// </summary> /// <param name="value">flakenoun or serialportnoun</param> /// <returns>the representing other thing :-)</returns> private Parity Translate(ComPortParity value) { switch (value) { case ComPortParity.Even: return(Parity.Even); case ComPortParity.Mark: return(Parity.Mark); case ComPortParity.Odd: return(Parity.Odd); case ComPortParity.Space: return(Parity.Space); default: return(Parity.None); } }
/// <summary> /// Creates a new insance of a central class /// </summary> /// <param name="port">Serial port for connetion to interface (eg. 'COM2')</param> /// <param name="baudRate">Baudrate of serial port to interface</param> /// <param name="parityBits">ParityBits of serial port to interface</param> /// <param name="dataBits">DataBits of serial port to interface</param> /// <param name="stopBits">StopBits of serial port to interface</param> public Central(string port = "COM2", int baudRate = 57600, ComPortParity parityBits = ComPortParity.None, int dataBits = 8, ComPortStopBits stopBits = ComPortStopBits.One) { Config = new FlakeLIConfiguration(); _RigisteredEntities = new List <ILIEntity>(); _ErrorInARow = 0; // Open connection to interface InitConnection(port, baudRate, parityBits, dataBits, stopBits); // start command queue worker process //System.Threading.ThreadPool.QueueUserWorkItem(delegate { _AnswerListener = new LIListener(this); }, null); logme.Log(string.Format(i18n.FlakeLIMsgs.StartLIListener, Port), logme.LogLevel.info); SerialPortConnection.ComDataReceived += new ComPortEventHandler(DataReceivedHandler); GetInterfaceAndCentralInfo(); }
/// <summary> /// Creates a new insance of a central class /// </summary> /// <param name="port">Serial port for connetion to interface (eg. 'COM2')</param> /// <param name="baudRate">Baudrate of serial port to interface</param> /// <param name="parityBits">ParityBits of serial port to interface</param> /// <param name="dataBits">DataBits of serial port to interface</param> /// <param name="stopBits">StopBits of serial port to interface</param> public Central(string port = "COM2", int baudRate = 57600, ComPortParity parityBits = ComPortParity.None, int dataBits = 8, ComPortStopBits stopBits = ComPortStopBits.One) { Config = new FlakeLIConfiguration(); _RigisteredEntities = new List<ILIEntity>(); _ErrorInARow = 0; // Open connection to interface InitConnection(port, baudRate, parityBits, dataBits, stopBits); // start command queue worker process //System.Threading.ThreadPool.QueueUserWorkItem(delegate { _AnswerListener = new LIListener(this); }, null); logme.Log(string.Format(i18n.FlakeLIMsgs.StartLIListener, Port), logme.LogLevel.info); SerialPortConnection.ComDataReceived += new ComPortEventHandler(DataReceivedHandler); GetInterfaceAndCentralInfo(); }
/// <summary> /// constructor /// </summary> public ComPortConnection(string portName, int baudRate, ComPortParity parity, int dataBits, ComPortStopBits stopBits) : base() { _SerialPort = new SerialPort(portName, baudRate, Translate(parity), dataBits, Translate(stopBits)); _SerialPort.DataReceived += new SerialDataReceivedEventHandler(OnDataReceive); }
/// <summary> /// translate flake to serialport an vv /// </summary> /// <param name="value">flakenoun or serialportnoun</param> /// <returns>the representing other thing :-)</returns> private Parity Translate(ComPortParity value) { switch (value) { case ComPortParity.Even: return Parity.Even; case ComPortParity.Mark: return Parity.Mark; case ComPortParity.Odd: return Parity.Odd; case ComPortParity.Space: return Parity.Space; default: return Parity.None; } }