Compare commits
2 commits
e97f3222fb
...
238915b8cd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
238915b8cd | ||
|
|
2116398f95 |
13
Proculite.GpioRest/Models/PinModel.cs
Normal file
13
Proculite.GpioRest/Models/PinModel.cs
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
using System.Device.Gpio;
|
||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace Proculite.GpioRest.Models
|
||||||
|
{
|
||||||
|
public class PinModel(int number, double value, int frequency)
|
||||||
|
{
|
||||||
|
public int Number { get; set; } = number;
|
||||||
|
|
||||||
|
public double Value { get; set; } = value;
|
||||||
|
public int Frequency { get; set; } = frequency;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
using System.Device.Gpio;
|
|
||||||
using System.Text.Json.Serialization;
|
|
||||||
|
|
||||||
namespace Proculite.GpioRest.Models
|
|
||||||
{
|
|
||||||
public class PinValueModel(int pinNumber, double value)
|
|
||||||
{
|
|
||||||
public int PinNumber { get; set; } = pinNumber;
|
|
||||||
|
|
||||||
public double PinValue { get; set; } = value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -32,17 +32,13 @@ namespace Proculite.GpioRest.Services
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel CurrentPinValue(int pinNumber)
|
public PinModel PinValueModelOfPin(int pinNumber)
|
||||||
{
|
{
|
||||||
return new PinValueModel(pinNumber, _pwmPins[pinNumber].Value);
|
PwmWrapper pwmWrapper = _pwmPins[pinNumber];
|
||||||
|
return new PinModel(pinNumber, pwmWrapper.Value, pwmWrapper.Frequency);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel PinValueModelOfPin(int pinNumber)
|
public PinModel[] StateOfAllPins()
|
||||||
{
|
|
||||||
return new PinValueModel(pinNumber, _pwmPins[pinNumber].Value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public PinValueModel[] StateOfAllPins()
|
|
||||||
{
|
{
|
||||||
return _pins.Select(PinValueModelOfPin).ToArray();
|
return _pins.Select(PinValueModelOfPin).ToArray();
|
||||||
}
|
}
|
||||||
|
|
@ -68,25 +64,25 @@ namespace Proculite.GpioRest.Services
|
||||||
_pwmPins[pinNumber].Value = pinValue;
|
_pwmPins[pinNumber].Value = pinValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel SetPinHighReturning(int pinNumber)
|
public PinModel SetPinHighReturning(int pinNumber)
|
||||||
{
|
{
|
||||||
SetPinHigh(pinNumber);
|
SetPinHigh(pinNumber);
|
||||||
return PinValueModelOfPin(pinNumber);
|
return PinValueModelOfPin(pinNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel SetPinLowReturning(int pinNumber)
|
public PinModel SetPinLowReturning(int pinNumber)
|
||||||
{
|
{
|
||||||
SetPinLow(pinNumber);
|
SetPinLow(pinNumber);
|
||||||
return PinValueModelOfPin(pinNumber);
|
return PinValueModelOfPin(pinNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel TogglePinReturning(int pinNumber)
|
public PinModel TogglePinReturning(int pinNumber)
|
||||||
{
|
{
|
||||||
TogglePin(pinNumber);
|
TogglePin(pinNumber);
|
||||||
return PinValueModelOfPin(pinNumber);
|
return PinValueModelOfPin(pinNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PinValueModel SetPinReturning(int pinNumber, double pinValue)
|
public PinModel SetPinReturning(int pinNumber, double pinValue)
|
||||||
{
|
{
|
||||||
SetPin(pinNumber, pinValue);
|
SetPin(pinNumber, pinValue);
|
||||||
return PinValueModelOfPin(pinNumber);
|
return PinValueModelOfPin(pinNumber);
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,12 @@ namespace Proculite.GpioRest.Wrappers
|
||||||
set { _softwarePwmChannel.DutyCycle = value; }
|
set { _softwarePwmChannel.DutyCycle = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int Frequency
|
||||||
|
{
|
||||||
|
get => _softwarePwmChannel.Frequency;
|
||||||
|
set => _softwarePwmChannel.Frequency = value;
|
||||||
|
}
|
||||||
|
|
||||||
public PwmWrapper(int pinNumber, ILogger? logger = null)
|
public PwmWrapper(int pinNumber, ILogger? logger = null)
|
||||||
{
|
{
|
||||||
PinNumber = pinNumber;
|
PinNumber = pinNumber;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue