Skip to main content

CaptureOps

Trait CaptureOps 

Source
pub trait CaptureOps<const C: u8>: ChannelEnable<C> {
    // Required methods
    fn apply_capture_mode(&mut self);
    fn select_edge(&mut self, edge: Edge);
    fn read_chxcv(&self) -> u16;
    fn read_chxof(&self) -> bool;
    fn clear_chxof(&mut self);
}
Expand description

The input capture half of one channel, numbered by C like PwmOps.

Required Methods§

Source

fn apply_capture_mode(&mut self)

Points the channel at its pin and readies it to latch the counter.

Covers direction, input filter and capture prescaler at once: a channel still pointing at its comparator captures nothing.

Source

fn select_edge(&mut self, edge: Edge)

Chooses the edge the channel takes its snapshot on.

Source

fn read_chxcv(&self) -> u16

Reads the counter value the last edge latched.

Says nothing about whether an edge arrived — the value means something only once read_chxif confirms a capture.

Source

fn read_chxof(&self) -> bool

Overcapture flag — set when an edge lands on a value not yet read.

Source

fn clear_chxof(&mut self)

Clears the overcapture flag.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl CaptureOps<0> for Timer0

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<0> for Timer2

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<0> for Timer13

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<0> for Timer14

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<0> for Timer15

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<0> for Timer16

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<1> for Timer0

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<1> for Timer2

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<1> for Timer14

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<2> for Timer0

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<2> for Timer2

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<3> for Timer0

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Source§

impl CaptureOps<3> for Timer2

Source§

fn apply_capture_mode(&mut self)

Source§

fn select_edge(&mut self, edge: Edge)

Source§

fn read_chxcv(&self) -> u16

Source§

fn read_chxof(&self) -> bool

Source§

fn clear_chxof(&mut self)

Implementors§