pub trait _esp_hal_pulse_control_OutputChannel {
type ConfiguredChannel<'d, P: OutputPin + 'd>;
// Required methods
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§
sourcetype ConfiguredChannel<'d, P: OutputPin + 'd>
type ConfiguredChannel<'d, P: OutputPin + 'd>
Output channel type
Required Methods§
sourcefn set_idle_output_level(&mut self, level: bool) -> &mut Self
fn set_idle_output_level(&mut self, level: bool) -> &mut Self
Set the logical level that the connected pin is pulled to while the channel is idle
sourcefn set_idle_output(&mut self, state: bool) -> &mut Self
fn set_idle_output(&mut self, state: bool) -> &mut Self
Enable/Disable the output while the channel is idle
sourcefn set_channel_divider(&mut self, divider: u8) -> &mut Self
fn set_channel_divider(&mut self, divider: u8) -> &mut Self
Set channel clock divider value
sourcefn set_carrier_modulation(&mut self, state: bool) -> &mut Self
fn set_carrier_modulation(&mut self, state: bool) -> &mut Self
Enable/Disable carrier modulation
sourcefn assign_pin<'d, P>(
self,
pin: impl Peripheral<P = P> + 'd
) -> Self::ConfiguredChannel<'d, P>where
P: OutputPin,
fn assign_pin<'d, P>( self, pin: impl Peripheral<P = P> + 'd ) -> Self::ConfiguredChannel<'d, P>where P: OutputPin,
Assign a pin that should be driven by this channel