Exemple #1
0
        /// <summary>
        /// Reads connection configuration into form for user selection.
        /// </summary>
        private void ReadConnectionConfig()
        {
            // Initialize lists of available port names and baud rates
            if (this.CommandTransmitter is SerialTransmitter)
            {
                SerialTransmitter serialTransmitter = this.CommandTransmitter as SerialTransmitter;
                string[]          portNames         = serialTransmitter.PortNames;
                string[]          baudRates         = serialTransmitter.BaudRates;

                aListPortNames.Items.Clear();
                foreach (string portName in portNames)
                {
                    if (!aListPortNames.Items.Contains(portName))
                    {
                        aListPortNames.Items.Add(portName);
                    }
                }

                aListBaudRates.Items.Clear();
                foreach (string baudRate in baudRates)
                {
                    if (!aListBaudRates.Items.Contains(baudRate))
                    {
                        aListBaudRates.Items.Add(baudRate);
                    }
                }
            }
        }
Exemple #2
0
        static void Main(string[] args)
        {
            Generator = new RGBGenerator();
            Generator.ColorGenerated += OnColorGenerated;

            Transmitter = new SerialTransmitter("COM8");
            try
            {
                Transmitter.Open();
                Console.WriteLine("Connection is open.");

                Generator.Run();
                Console.WriteLine("Generating colors...\n");
            }
            catch (UnauthorizedAccessException e)
            {
                Console.WriteLine(e.Message);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            Console.WriteLine("Press any key to leave...");
            Console.ReadKey(true);

            Generator.Stop();
            Transmitter.Clear();
            Transmitter.Close();
        }
Exemple #3
0
 private void aHandControllerForm_FormClosing(object sender, FormClosingEventArgs e)
 {
     if (this.CommandTransmitter is SerialTransmitter)
     {
         SerialTransmitter serialTransmitter = this.CommandTransmitter as SerialTransmitter;
         serialTransmitter.Disconnect();
     }
 }
Exemple #4
0
 private void aButtonDisconnect_Click(object sender, EventArgs e)
 {
     if (this.CommandTransmitter is SerialTransmitter)
     {
         SerialTransmitter serialTransmitter = this.CommandTransmitter as SerialTransmitter;
         string            message           = serialTransmitter.Disconnect();
         aTextOutput.AppendText(message);
     }
 }
Exemple #5
0
        private void aButtonConnect_Click(object sender, EventArgs e)
        {
            // Make sure port and baud rate are selected
            if (aListBaudRates.SelectedItem == null || aListPortNames.SelectedItem == null)
            {
                aTextOutput.AppendText("Please select port name and baud rate." + Environment.NewLine);
                return;
            }

            // Try to connect to serial transmitter
            if (this.CommandTransmitter is SerialTransmitter)
            {
                SerialTransmitter serialTransmitter = this.CommandTransmitter as SerialTransmitter;
                string            portName          = (string)aListPortNames.SelectedItem;
                int baudRate = int.Parse((string)aListBaudRates.SelectedItem);

                string message = serialTransmitter.Connect(portName, baudRate);
                aTextOutput.AppendText(message);
            }
        }
Exemple #6
0
        private void OnConfirmClicked(object sender, EventArgs e)
        {
            var port = txtPort.Text;

            //MessageBox.Show("Message", "Title", MessageBoxButtons.OK);
            if (!string.IsNullOrWhiteSpace(port))
            {
                int baudRate = 9600;

                if (!string.IsNullOrWhiteSpace(BaudText))
                {
                    baudRate = Convert.ToInt32(BaudText);
                }

                // TODO Check it this port belongs to an Arduino
                _transmitter = new SerialTransmitter(port, baudRate);
                OnSuccess?.Invoke(this, new GenericEventArgs <SerialTransmitter>(_transmitter));
                Close();
            }
            else
            {
                MessageBox.Show("Port field must be filled", "Missing field!", MessageBoxButtons.OK);
            }
        }