From ed448c9baf8cd512a6b1e2240d3cebe435e8b7cd Mon Sep 17 00:00:00 2001 From: Filip Strajnar Date: Wed, 25 Sep 2024 20:05:55 +0200 Subject: [PATCH] Added methods for toggling pin's value. --- Proculite.GpioRest/Services/GpioService.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Proculite.GpioRest/Services/GpioService.cs b/Proculite.GpioRest/Services/GpioService.cs index f093bfc..c64fe36 100644 --- a/Proculite.GpioRest/Services/GpioService.cs +++ b/Proculite.GpioRest/Services/GpioService.cs @@ -69,6 +69,13 @@ namespace Proculite.GpioRest.Services _gpioController.Write(pinNumber, PinValue.Low); } + public void TogglePin(int pinNumber) + { + PinValue currentValue = CurrentPinValue(pinNumber); + PinValue newValue = currentValue == PinValue.High ? PinValue.Low : PinValue.High; + _gpioController.Write(pinNumber, newValue); + } + public PinValueModel SetPinHighReturning(int pinNumber) { SetPinHigh(pinNumber); @@ -80,5 +87,11 @@ namespace Proculite.GpioRest.Services SetPinLow(pinNumber); return PinValueModelOfPin(pinNumber); } + + public PinValueModel TogglePinReturning(int pinNumber) + { + TogglePin(pinNumber); + return PinValueModelOfPin(pinNumber); + } } }