Пример #1
0
        public async void InitSensors()
        {
            gpio = GpioController.GetDefault();

            PinDht  = gpio.OpenPin(Pin_Dht, GpioSharingMode.Exclusive);
            PinPm25 = gpio.OpenPin(Pin_Pm25, GpioSharingMode.Exclusive);
            PinRain = gpio.OpenPin(Pin_Rain, GpioSharingMode.Exclusive);
            PinSoil = gpio.OpenPin(Pin_Soil, GpioSharingMode.Exclusive);

            PinPm25.SetDriveMode(GpioPinDriveMode.Input);
            PinRain.SetDriveMode(GpioPinDriveMode.Input);
            PinSoil.SetDriveMode(GpioPinDriveMode.Input);

            PinPm25.ValueChanged += PinPm25_ValueChanged;
            PinRain.ValueChanged += PinRain_ValueChanged;
            PinSoil.ValueChanged += PinSoil_ValueChanged;

            Data.Pm25 = PinPm25.Read() == GpioPinValue.High ? 1 : 0;
            Data.Rain = PinRain.Read() == GpioPinValue.High ? 1 : 0;
            Data.Soil = PinSoil.Read() == GpioPinValue.High ? 1 : 0;
        }
Пример #2
0
 private void PinSoil_ValueChanged(GpioPin sender, GpioPinValueChangedEventArgs args)
 {
     Data.Soil = PinSoil.Read() == GpioPinValue.High ? 1 : 0;
 }
Пример #3
0
 public int GetSoil()
 {
     return(Data.Soil = MainPage.Current.Model.Soil = PinSoil.Read() == GpioPinValue.High ? 1 : 0);
 }