ConfigureInputFilterClock

Trait ConfigureInputFilterClock 

Source
pub trait ConfigureInputFilterClock {
    type Debouncing: ConfigureInputFilterClock;
    type SlowClock: ConfigureInputFilterClock;

    // Required methods
    fn debouncing_filter(self) -> Self::Debouncing;
    unsafe fn debouncing_filter_unchecked(self) -> Self::Debouncing;
    fn slow_clock_filter(self) -> Self::SlowClock;
    unsafe fn slow_clock_filter_unchecked(self) -> Self::SlowClock;
}
Expand description

§Input filter clock configuration

For further details, refer to the module-level documentation for links to the relevant device manuals.

Required Associated Types§

Required Methods§

Source

fn debouncing_filter(self) -> Self::Debouncing

Select the debouncing filter clock for this pin.

Source

unsafe fn debouncing_filter_unchecked(self) -> Self::Debouncing

Select the debouncing filter clock without waiting for the status register to update.

§Safety

This function returns a type showing that this pin has the debouncing clock selected, but the clock isn’t actually selected until the corresponding bit in PIO_IFDGSR is cleared.

Source

fn slow_clock_filter(self) -> Self::SlowClock

Select the slow clock filter clock for this pin.

Source

unsafe fn slow_clock_filter_unchecked(self) -> Self::SlowClock

Select the slow clock filter clock without waiting for the status register to update.

§Safety

This function returns a type showing that this pin has the slow clock selected, but the clock isn’t actually selected until the corresponding bit in PIO_IFDGSR is set.

Implementors§

Source§

impl<Pio, Pid, Mdvr, Pioc, Padr, Irpt> ConfigureInputFilterClock for Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<Unconfigured>>
where Pio: PioRegisters, Pid: PinId<Controller = Pio>, Mdvr: MultiDriverCfg, Pioc: PioControlCfg, Padr: PadResistorCfg, Irpt: InterruptCfg,

Source§

type Debouncing = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<Debouncing>>

Source§

type SlowClock = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<SlowClock>>

Source§

impl<Pio, Pid, Mdvr, Pioc, Padr, Irpt> ConfigureInputFilterClock for Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<Debouncing>>
where Pio: PioRegisters, Pid: PinId<Controller = Pio>, Mdvr: MultiDriverCfg, Pioc: PioControlCfg, Padr: PadResistorCfg, Irpt: InterruptCfg,

Source§

type Debouncing = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<Debouncing>>

Source§

type SlowClock = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<SlowClock>>

Source§

impl<Pio, Pid, Mdvr, Pioc, Padr, Irpt> ConfigureInputFilterClock for Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<SlowClock>>
where Pio: PioRegisters, Pid: PinId<Controller = Pio>, Mdvr: MultiDriverCfg, Pioc: PioControlCfg, Padr: PadResistorCfg, Irpt: InterruptCfg,

Source§

type Debouncing = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<Debouncing>>

Source§

type SlowClock = Pin<Pio, Pid, Mdvr, Pioc, Padr, Irpt, InputFilterEnabled<SlowClock>>