/// <summary> /// Create Instance of Native DHT11 pin <see cref="Pin"/> /// </summary> /// <param name="boardController">Board controller <see cref="GpioRaspberryController"/>.</param> /// <param name="pinNumber">Pin position on GPIO Border. GPIO is PIN board of controller.</param> public DHT11(IGpioControllerProvider boardController, int pinNumber = DHT11_PIN) { m_controller = boardController; this.nativePin = (Pin)m_controller.OpenPinProvider(pinNumber, ProviderGpioSharingMode.Exclusive); if (this.nativePin == null) { Message = "Native DHT11 intialization (Open Pin) FAILED! \n \n Program Exit!"; return; } this.nativePin.ValueChanged += NativePin_ValueChanged; this.nativePin.SetDriveMode(ProviderGpioPinDriveMode.Input); }
private GpioController(IGpioControllerProvider provider) => this.Provider = provider;