Esempio n. 1
0
        void GetMotorHumidity()
        {
            Task.Run(() =>
            {
                bool worked     = false;
                double humidity = 0;

                lock ( MotorLock )
                {
                    if (MotorCom.Open(MotorComPort))
                    {
                        humidity = MotorCom.GetHumidity();

                        MotorCom.Close();

                        worked = true;
                    }
                    else
                    {
                        Console.WriteLine("unable to open comport for GetMotorHumidity");
                        return;
                    }
                }

                if (worked)
                {
                    //TODO: handle dual humidities for MotorHumidityLbl
                    //double MotorBoardHumidity = 0;
                    //double BmsBoardHumidity = 0;
                    Action <double> update_action = (h) => { MotorBoardHumidity = h; UpdateHumidityDisplay(); };
                    Dispatcher.BeginInvoke(update_action, humidity);
                }
            });
        }