pub trait OutputChannel {
    type ConfiguredChannel<'d, P: OutputPin + 'd>;

    fn set_idle_output_level(&mut self, level: bool) -> &mut Self;
    fn set_idle_output(&mut self, state: bool) -> &mut Self;
    fn set_channel_divider(&mut self, divider: u8) -> &mut Self;
    fn set_carrier_modulation(&mut self, state: bool) -> &mut Self;
    fn assign_pin<'d, P>(
        self,
        pin: impl Peripheral<P = P> + 'd
    ) -> Self::ConfiguredChannel<'d, P>
    where
        P: OutputPin
; }
Expand description

Functionality that every OutputChannel must support

Required Associated Types§

Output channel type

Required Methods§

Set the logical level that the connected pin is pulled to while the channel is idle

Enable/Disable the output while the channel is idle

Set channel clock divider value

Enable/Disable carrier modulation

Assign a pin that should be driven by this channel

Implementors§