pub struct SimplePwmChannel<'d, T: GeneralInstance4Channel> { /* private fields */ }
Expand description
A single channel of a pwm, obtained from SimplePwm::split
,
SimplePwm::channel
, SimplePwm::ch1
, etc.
It is not possible to change the pwm frequency because the frequency configuration is shared with all four channels.
Implementations§
Source§impl<'d, T: GeneralInstance4Channel> SimplePwmChannel<'d, T>
impl<'d, T: GeneralInstance4Channel> SimplePwmChannel<'d, T>
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Check whether given channel is enabled
Sourcepub fn max_duty_cycle(&self) -> u16
pub fn max_duty_cycle(&self) -> u16
Get max duty value.
This value depends on the configured frequency and the timer’s clock rate from RCC.
Sourcepub fn set_duty_cycle(&mut self, duty: u16)
pub fn set_duty_cycle(&mut self, duty: u16)
Set the duty for a given channel.
The value ranges from 0 for 0% duty, to max_duty_cycle
for 100% duty, both included.
Sourcepub fn set_duty_cycle_fully_off(&mut self)
pub fn set_duty_cycle_fully_off(&mut self)
Set the duty cycle to 0%, or always inactive.
Sourcepub fn set_duty_cycle_fully_on(&mut self)
pub fn set_duty_cycle_fully_on(&mut self)
Set the duty cycle to 100%, or always active.
Sourcepub fn set_duty_cycle_fraction(&mut self, num: u16, denom: u16)
pub fn set_duty_cycle_fraction(&mut self, num: u16, denom: u16)
Set the duty cycle to num / denom
.
The caller is responsible for ensuring that num
is less than or equal to denom
,
and that denom
is not zero.
Sourcepub fn set_duty_cycle_percent(&mut self, percent: u8)
pub fn set_duty_cycle_percent(&mut self, percent: u8)
Set the duty cycle to percent / 100
The caller is responsible for ensuring that percent
is less than or equal to 100.
Sourcepub fn current_duty_cycle(&self) -> u16
pub fn current_duty_cycle(&self) -> u16
Get the duty for a given channel.
The value ranges from 0 for 0% duty, to max_duty_cycle
for 100% duty, both included.
Sourcepub fn set_polarity(&mut self, polarity: OutputPolarity)
pub fn set_polarity(&mut self, polarity: OutputPolarity)
Set the output polarity for a given channel.
Sourcepub fn set_output_compare_mode(&mut self, mode: OutputCompareMode)
pub fn set_output_compare_mode(&mut self, mode: OutputCompareMode)
Set the output compare mode for a given channel.
Trait Implementations§
Source§impl<'d, T: GeneralInstance4Channel> ErrorType for SimplePwmChannel<'d, T>
impl<'d, T: GeneralInstance4Channel> ErrorType for SimplePwmChannel<'d, T>
Source§type Error = Infallible
type Error = Infallible
Source§impl<'d, T: GeneralInstance4Channel> SetDutyCycle for SimplePwmChannel<'d, T>
impl<'d, T: GeneralInstance4Channel> SetDutyCycle for SimplePwmChannel<'d, T>
Source§fn max_duty_cycle(&self) -> u16
fn max_duty_cycle(&self) -> u16
Source§fn set_duty_cycle(&mut self, duty: u16) -> Result<(), Self::Error>
fn set_duty_cycle(&mut self, duty: u16) -> Result<(), Self::Error>
duty / max_duty
. Read more