Interface IDigitalInterruptPort
Contract for ports that are capable of reading digital inputs and raising events when state changes.
Assembly: Meadow.Contracts.dll
View Source
Declaration
public interface IDigitalInterruptPort : IDigitalInputPort, IDigitalPort, IPort<IDigitalChannelInfo>, IDisposable, IObservable<IChangeResult<DigitalState>>
Properties
InterruptMode
Gets the interrupt mode used to determine when interrupts are raised.
View Source
Declaration
InterruptMode InterruptMode { get; }
DebounceDuration
Gets or sets the debounce duration. Effectively a delay after an event where new inputs are ignored
View Source
Declaration
TimeSpan DebounceDuration { get; set; }
GlitchDuration
Gets or sets the glitch duration. This is the minimum amount of time a signal needs to be stable before an event is recognized
View Source
Declaration
TimeSpan GlitchDuration { get; set; }
Methods
CreateObserver(Action<IChangeResult<DigitalState>>, Predicate<IChangeResult<DigitalState>>?)
An IObserver
that handles change notifications and has an optional
predicate that automatically filters results so only results that match
the predicate will reach the subscriber.
View Source
Declaration
public static FilterableChangeObserver<DigitalState> CreateObserver(Action<IChangeResult<DigitalState>> handler, Predicate<IChangeResult<DigitalState>>? filter = null)
Returns
Meadow.FilterableChangeObserver<UNIT>
Parameters
Type | Name |
---|---|
System.Action<Meadow.IChangeResult<Meadow.Hardware.DigitalState>> | handler |
System.Predicate<Meadow.IChangeResult<Meadow.Hardware.DigitalState>> | filter |
Events
Changed
Raised when the state of the digital port is changed / updated.
View Source
Declaration
event EventHandler<DigitalPortResult> Changed
Event Type
System.EventHandler<Meadow.Hardware.DigitalPortResult>