Unified SPWM configuration structure. More...
#include <spwm.h>
Data Fields | ||
| uint32_t | cc0 | |
| uint32_t | cc0_buff | |
| uint32_t | cc1 | |
| uint32_t | cc1_buff | |
| int | clkdiv_sel | |
| uint32_t | period | |
| uint32_t | counter | |
| uint32_t | period_buff | |
| spwm_count_mode_en | count_mode | |
| spwm_trigger_in_cfg_t | trig_in [SPWM_TRIG_IN_COUNT] | |
| spwm_trigger_out_en | trig_out [SPWM_TRIG_OUT_COUNT] | |
| spwm_trigger_out_en | sema [SPWM_SEMA_COUNT] | |
| spwm_mode_en | mode | |
| bool | one_shot | |
| spwm_prescale_en | prescale | |
| union { | ||
| spwm_timer_cfg_t timer | ||
| spwm_pwm_cfg_t pwm | ||
| spwm_pwmdt_cfg_t pwmdt | ||
| spwm_quad_cfg_t quad | ||
| spwm_pwmpr_cfg_t pwmpr | ||
| spwm_sr_cfg_t sr | ||
| } | cfg | |
Unified SPWM configuration structure.
This structure contains all parameters needed to configure an SPWM group, including common resources and mode-specific fields accessed via the cfg union.
| uint32_t spwm_config_t::cc0 |
Compare channel 0 value
| uint32_t spwm_config_t::cc0_buff |
Compare channel 0 buffered value
| uint32_t spwm_config_t::cc1 |
Compare channel 1 value
| uint32_t spwm_config_t::cc1_buff |
Compare channel 1 buffered value
| int spwm_config_t::clkdiv_sel |
Clock divider selector
| uint32_t spwm_config_t::period |
Counter period value
| uint32_t spwm_config_t::counter |
Initial counter value
| uint32_t spwm_config_t::period_buff |
Buffered period value
| spwm_count_mode_en spwm_config_t::count_mode |
Counter direction mode Trigger input configurations (CAP0, COUNT, RELOAD, STOP, START, CAP1)
| spwm_trigger_in_cfg_t spwm_config_t::trig_in[SPWM_TRIG_IN_COUNT] |
Trigger output event selections (OUT0, OUT1)
| spwm_trigger_out_en spwm_config_t::trig_out[SPWM_TRIG_OUT_COUNT] |
Semaphore trigger selections (SEMA0, SEMA1)
| spwm_mode_en spwm_config_t::mode |
Operating mode
| bool spwm_config_t::one_shot |
One-shot operation enable
| spwm_prescale_en spwm_config_t::prescale |
Clock prescaler value
| spwm_timer_cfg_t spwm_config_t::timer |
Timer/Counter mode fields
| spwm_pwm_cfg_t spwm_config_t::pwm |
PWM mode fields
| spwm_pwmdt_cfg_t spwm_config_t::pwmdt |
PWM with Dead-Time fields
| spwm_quad_cfg_t spwm_config_t::quad |
Quadrature decoder fields
| spwm_pwmpr_cfg_t spwm_config_t::pwmpr |
Pseudo-Random PWM fields
| spwm_sr_cfg_t spwm_config_t::sr |
Shift Register fields
| union { ... } spwm_config_t::cfg |
Mode-specific configuration union