quadrature_encoder/
lib.rs1#![warn(missing_docs)]
4#![cfg_attr(not(test), no_std)]
5
6mod encoder;
7mod mode;
8mod traits;
9pub use quadrature_decoder::{Error as QuadratureError, FullStep, HalfStep, QuadStep};
10
11pub use self::{
12 encoder::{
13 IncrementalEncoder, IndexedIncrementalEncoder, IndexedLinearEncoder, IndexedRotaryEncoder,
14 LinearEncoder, RotaryEncoder,
15 },
16 mode::{
17 Async, Blocking, Linear, LinearMovement, OperationMode, PollMode, Rotary, RotaryMovement,
18 },
19};
20
21#[repr(u8)]
23#[derive(Clone, Copy, PartialEq, Eq, Debug)]
24pub enum InputPinError {
25 PinClk,
27 PinDt,
29 PinIdx,
31}
32
33#[repr(u8)]
35#[derive(Clone, Copy, PartialEq, Eq, Debug)]
36pub enum Error {
37 Quadrature(QuadratureError),
39 InputPin(InputPinError),
41}