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; }
private void PinSoil_ValueChanged(GpioPin sender, GpioPinValueChangedEventArgs args) { Data.Soil = PinSoil.Read() == GpioPinValue.High ? 1 : 0; }
public int GetSoil() { return(Data.Soil = MainPage.Current.Model.Soil = PinSoil.Read() == GpioPinValue.High ? 1 : 0); }