예제 #1
0
        /// <summary>
        /// Starts accepting Live input for the MMS
        /// </summary>
        /// <returns></returns>
        private bool Live()
        {
            // Checks if the selected master port is being used
            if (!TestSerialPort((string)SerialChooseIED.SelectedValue))
            {
                return(false);
            }
            #region Hosted Master Port settings
            HostedMB.HostedMasterPort = new SerialPort()
            {
                PortName = (string)SerialChooseIED.SelectedItem,
                BaudRate = Convert.ToInt32(BaudRate.Text),
                DataBits = Convert.ToInt32(DataBits.Text),
            };
            switch (ParityComboBox.Text)
            {
            case "None":
                HostedMB.HostedMasterPort.Parity = Parity.None;
                break;

            case "Odd":
                HostedMB.HostedMasterPort.Parity = Parity.Odd;
                break;

            case "Even":
                HostedMB.HostedMasterPort.Parity = Parity.Even;
                break;
            }
            switch (StopBitsComboBox.Text)
            {
            case "1":
                HostedMB.HostedMasterPort.StopBits = StopBits.One;
                break;

            case "2":
                HostedMB.HostedMasterPort.StopBits = StopBits.Two;
                break;
            }
            HostedMB.TimeOutValue = Convert.ToInt32(Timeout.Text);

            Task task = new Task(() => HostedMB.Live(ct));
            task.Start();
            return(true);

            #endregion
        }