pub struct Operator<'d, const OP: u8, PWM> { /* private fields */ }
Available on crate feature
unstable
only.Expand description
A MCPWM operator
The PWM Operator submodule has the following functions:
- Generates a PWM signal pair, based on timing references obtained from the corresponding PWM timer.
- Each signal out of the PWM signal pair includes a specific pattern of dead time. (Not yet implemented)
- Superimposes a carrier on the PWM signal, if configured to do so. (Not yet implemented)
- Handles response under fault conditions. (Not yet implemented)
Implementations§
Source§impl<'d, const OP: u8, PWM: PwmPeripheral> Operator<'d, OP, PWM>
impl<'d, const OP: u8, PWM: PwmPeripheral> Operator<'d, OP, PWM>
Sourcepub fn with_pin_a(
self,
pin: impl Peripheral<P = impl PeripheralOutput> + 'd,
config: PwmPinConfig<true>,
) -> PwmPin<'d, PWM, OP, true>
pub fn with_pin_a( self, pin: impl Peripheral<P = impl PeripheralOutput> + 'd, config: PwmPinConfig<true>, ) -> PwmPin<'d, PWM, OP, true>
Use the A output with the given pin and configuration
Sourcepub fn with_pin_b(
self,
pin: impl Peripheral<P = impl PeripheralOutput> + 'd,
config: PwmPinConfig<false>,
) -> PwmPin<'d, PWM, OP, false>
pub fn with_pin_b( self, pin: impl Peripheral<P = impl PeripheralOutput> + 'd, config: PwmPinConfig<false>, ) -> PwmPin<'d, PWM, OP, false>
Use the B output with the given pin and configuration
Sourcepub fn with_pins(
self,
pin_a: impl Peripheral<P = impl PeripheralOutput> + 'd,
config_a: PwmPinConfig<true>,
pin_b: impl Peripheral<P = impl PeripheralOutput> + 'd,
config_b: PwmPinConfig<false>,
) -> (PwmPin<'d, PWM, OP, true>, PwmPin<'d, PWM, OP, false>)
pub fn with_pins( self, pin_a: impl Peripheral<P = impl PeripheralOutput> + 'd, config_a: PwmPinConfig<true>, pin_b: impl Peripheral<P = impl PeripheralOutput> + 'd, config_b: PwmPinConfig<false>, ) -> (PwmPin<'d, PWM, OP, true>, PwmPin<'d, PWM, OP, false>)
Use both the A and the B output with the given pins and configurations
Sourcepub fn with_linked_pins(
self,
pin_a: impl Peripheral<P = impl PeripheralOutput> + 'd,
config_a: PwmPinConfig<true>,
pin_b: impl Peripheral<P = impl PeripheralOutput> + 'd,
config_b: PwmPinConfig<false>,
config_dt: DeadTimeCfg,
) -> LinkedPins<'d, PWM, OP>
pub fn with_linked_pins( self, pin_a: impl Peripheral<P = impl PeripheralOutput> + 'd, config_a: PwmPinConfig<true>, pin_b: impl Peripheral<P = impl PeripheralOutput> + 'd, config_b: PwmPinConfig<false>, config_dt: DeadTimeCfg, ) -> LinkedPins<'d, PWM, OP>
Link two pins using the deadtime generator
This is useful for complementary or mirrored signals with or without configured deadtime