コード例 #1
0
        public void GetWeatherLinkData(string PortName)
        {
            byte[]     RawWeatherData;
            SerialPort serialPort;

            serialPort = OpenSerialPort(PortName);

            if (serialPort != null)
            {
                if (WakeSerialVantage(serialPort))
                {
                    Data           = new WeatherLoopData();
                    RawWeatherData = RetrieveSerialData(serialPort, "LOOP 1", 95);
                    if (RawWeatherData != null)
                    {
                        Data.LoopDataArray = RawWeatherData;
                    }
                    else
                    {
                        Show_Message("Lost Connection to Vantage Weatherstation");
                    }
                }
                else
                {
                    Show_Message("Cannot Connect to Vantage Weatherstation");
                }

                serialPort.Close();
            }
        }
コード例 #2
0
        internal void Update(WeatherLinkHandler weather)
        {
            WeatherLoopData weatherLoopData = weather.Data;

            if (weatherLoopData == null)
            {
                return;
            }

            WeatherDataItems.Find(x => x.Name == "BarometricTrend").RawValueUpdate(weatherLoopData.BarometerTrend);
            WeatherDataItems.Find(x => x.Name == "Barometer").RawValueUpdate(weatherLoopData.Barometer);
            WeatherDataItems.Find(x => x.Name == "InsideTemperature").RawValueUpdate(weatherLoopData.InsideTemperature);
            WeatherDataItems.Find(x => x.Name == "InsideHumidity").RawValueUpdate(weatherLoopData.InsideHumidity);
            WeatherDataItems.Find(x => x.Name == "OutsideTemperature").RawValueUpdate(weatherLoopData.OutsideTemperature);
            WeatherDataItems.Find(x => x.Name == "WindSpeed").RawValueUpdate(weatherLoopData.WindSpeed);
            WeatherDataItems.Find(x => x.Name == "WindSpeed10MinAvg").RawValueUpdate(weatherLoopData.WindSpeed10MinAvg);
            WeatherDataItems.Find(x => x.Name == "WindDirectionNamed").RawValueUpdate(weatherLoopData.WindDirection);
            WeatherDataItems.Find(x => x.Name == "WindDirection").RawValueUpdate(weatherLoopData.WindDirection);
            WeatherDataItems.Find(x => x.Name == "OutsideHumidity").RawValueUpdate(weatherLoopData.OutsideHumidity);
            WeatherDataItems.Find(x => x.Name == "RainRate").RawValueUpdate(weatherLoopData.RainRate);
            WeatherDataItems.Find(x => x.Name == "UV").RawValueUpdate(weatherLoopData.UV);
            WeatherDataItems.Find(x => x.Name == "SolarRadiation").RawValueUpdate(weatherLoopData.SolarRadiation);
            WeatherDataItems.Find(x => x.Name == "StormRain").RawValueUpdate(weatherLoopData.StormRain);
            WeatherDataItems.Find(x => x.Name == "RainDay").RawValueUpdate(weatherLoopData.RainDay);
            WeatherDataItems.Find(x => x.Name == "RainMonth").RawValueUpdate(weatherLoopData.RainMonth);
            WeatherDataItems.Find(x => x.Name == "RainYear").RawValueUpdate(weatherLoopData.RainYear);
            WeatherDataItems.Find(x => x.Name == "DayET").RawValueUpdate(weatherLoopData.DayET);
            WeatherDataItems.Find(x => x.Name == "MonthET").RawValueUpdate(weatherLoopData.MonthET);
            WeatherDataItems.Find(x => x.Name == "YearET").RawValueUpdate(weatherLoopData.YearET);
            WeatherDataItems.Find(x => x.Name == "ConsoleBatteryVoltage").RawValueUpdate(weatherLoopData.ConsoleBatteryVoltage);
        }