예제 #1
0
        private void Ti_sconnetto_alla_chiusura(object sender, EventArgs e)
        {
            try
            {
                if (Funzioni.GetStatus("MONTATURA").Equals("ON"))
                {
                    if (Messaggi.YesNo("E' stata richiesta la chiusura del programma. Non è sicuro procedere se la montatura non è stata spenta correttamente. Spegnere?") == DialogResult.Yes)
                    {
                        AccendiMontatura();
                        Funzioni.SetStatus("MONTATURA", "OFF");
                    }
                }

                if (Funzioni.GetStatus("PANNELLO").Equals("ON"))
                {
                    if (Messaggi.YesNo("E' stata richiesta la chiusura del programma. Non è sicuro procedere se la montatura non è stata spenta correttamente. Spegnere?") == DialogResult.Yes)
                    {
                        SpegniPannello();
                        Funzioni.SetStatus("PANNELLO", "OFF");
                    }
                }

                if (ARDU.IsOpen)
                {
                    ARDU.WriteLine("g");
                    richTextBoxCommunication.Text += Environment.NewLine + "Send g to Arduino. N.:1";
                    ARDU.Close();
                }

                if (MONT.IsOpen)
                {
                    MONT.Close();
                }

                Application.Exit();
            }
            catch (Exception ex)
            {
                Messaggi.ShowException("Errore Ti_sconnetto_alla_chiusura", ex);
            }
        }
예제 #2
0
        private void Button_connetti_Click(object sender, EventArgs e)
        {
            try
            {
                if (button_connetti.Text.Equals("Connetti"))
                {
                    if (!Object.Equals(ComboBox_porta_montatura.SelectedItem, null) && !Object.Equals(ComboBox_porta_arduino.SelectedItem, null) && !Object.Equals(ComboBox_all_nto.SelectedItem, null))
                    {
                        MONT.Close();
                        MONT.PortName    = ComboBox_porta_montatura.SelectedItem.ToString();
                        MONT.BaudRate    = 9600;
                        MONT.DataBits    = 8;
                        MONT.Parity      = Parity.None;
                        MONT.StopBits    = StopBits.One;
                        MONT.Handshake   = Handshake.None;
                        MONT.Encoding    = System.Text.Encoding.Default; //molto importante!!!
                        MONT.ReadTimeout = 10000;
                        MONT.Open();

                        ARDU.Close();
                        ARDU.PortName    = ComboBox_porta_arduino.SelectedItem.ToString();
                        ARDU.BaudRate    = 9600;
                        ARDU.DataBits    = 8;
                        ARDU.Parity      = Parity.None;
                        ARDU.StopBits    = StopBits.One;
                        ARDU.Handshake   = Handshake.None;
                        ARDU.Encoding    = System.Text.Encoding.Default; //molto importante!!!
                        ARDU.ReadTimeout = 10000;
                        ARDU.Open();

                        timer_refresh.Enabled = true;
                        timer_refresh.Start();

                        button_connetti.Text = "Disconnetti";
                        if (Funzioni.GetStatus("MONTATURA").Equals("OFF"))
                        {
                            button_accendi_pannello.Visible = true;
                        }
                        if (Funzioni.GetStatus("MONTATURA").Equals("ON"))
                        {
                            ARDU.WriteLine("G");
                        }
                        if (Funzioni.GetStatus("PANNELLO").Equals("OFF"))
                        {
                            button_accendi_pannello.Visible = true;
                        }
                        if (Funzioni.GetStatus("PANNELLO").Equals("ON"))
                        {
                            button_accendi_pannello.Visible = true;
                        }

                        if (ComboBox_all_nto.SelectedIndex == (int)Funzioni.Allineamenti.AstroPhysics)
                        {
                            Funzioni.currentAllignment = Funzioni.Allineamenti.AstroPhysics;
                        }
                        else if (ComboBox_all_nto.SelectedIndex == (int)Funzioni.Allineamenti.RitcheyChrétien)
                        {
                            Funzioni.currentAllignment = Funzioni.Allineamenti.RitcheyChrétien;
                        }

                        Funzioni.SYSTEM_IS_CONNECTED = !Funzioni.SYSTEM_IS_CONNECTED;
                    }
                    else
                    {
                        MessageBox.Show("Selezionare una porta o un allineamento adeguato", "Cupola Remota");
                    }
                }
                else if (button_connetti.Text.Equals("Disconnetti"))
                {
                    ARDU.WriteLine("g");
                    richTextBoxCommunication.Text += Environment.NewLine + "Send g to Arduino. N.:2";
                    MONT.Close();
                    ARDU.Close();
                    timer_refresh.Stop();
                    button_connetti.Text = "Connetti";
                }
            }
            catch (Exception ex)
            {
                Messaggi.ShowException("Errore in button_connetti_Click", ex);
            }
        }