Crate quadrature_encoder

Source
Expand description

An efficient no_std-compatible implementation of a quadrature encoder driver, based on a finite-state-transducer with support for different step-modes.

Structs§

Async
Driver initialized in async mode.
Blocking
Driver initialized in blocking mode.
FullStep
A step mode that is able to detect a “change” (e.g. movement) for every stable full cycle (i.e. 1 change per quadrature cycle).
HalfStep
A step mode that is able to detect a “change” (e.g. movement) (e.g. movement) for every stable half cycle (i.e. 2 changes per quadrature cycle), resulting in an effective 2× resolution multiplication.
IncrementalEncoder
A robust incremental encoder with support for multiple step-modes.
IndexedIncrementalEncoder
A robust incremental encoder with support for multiple step-modes.
Linear
The mode of a linear quadrature encoder.
QuadStep
A step mode that is able to detect a “change” (e.g. movement) for every stable quarter cycle (i.e. 4 change per quadrature cycle), resulting in an effective 4× resolution multiplication.
Rotary
The mode of a rotary quadrature encoder.

Enums§

Error
An error indicating quadrature or input pin issues.
InputPinError
An error indicating an input pin issue.
LinearMovement
The movement detected by a linear quadrature encoder.
QuadratureError
An error indicating an invalid quadrature signal sequence.
RotaryMovement
The movement detected by a rotary quadrature encoder.

Traits§

OperationMode
The mode of physical operation of a quadrature encoder.
PollMode
A marker trait for initializing drivers in a specific mode. Inspired by https://github.com/esp-rs/esp-hal

Type Aliases§

IndexedLinearEncoder
Linear encoder.
IndexedRotaryEncoder
Rotary encoder.
LinearEncoder
Linear encoder.
RotaryEncoder
Rotary encoder.