Astra MCU SDK Peripheral Driver Library
 
Loading...
Searching...
No Matches
spwm_config_t Struct Reference

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 
 

Detailed Description

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.

Field Documentation

◆ cc0

uint32_t spwm_config_t::cc0

Compare channel 0 value

◆ cc0_buff

uint32_t spwm_config_t::cc0_buff

Compare channel 0 buffered value

◆ cc1

uint32_t spwm_config_t::cc1

Compare channel 1 value

◆ cc1_buff

uint32_t spwm_config_t::cc1_buff

Compare channel 1 buffered value

◆ clkdiv_sel

int spwm_config_t::clkdiv_sel

Clock divider selector

◆ period

uint32_t spwm_config_t::period

Counter period value

◆ counter

uint32_t spwm_config_t::counter

Initial counter value

◆ period_buff

uint32_t spwm_config_t::period_buff

Buffered period value

◆ count_mode

spwm_count_mode_en spwm_config_t::count_mode

Counter direction mode Trigger input configurations (CAP0, COUNT, RELOAD, STOP, START, CAP1)

◆ trig_in

spwm_trigger_in_cfg_t spwm_config_t::trig_in[SPWM_TRIG_IN_COUNT]

Trigger output event selections (OUT0, OUT1)

◆ trig_out

spwm_trigger_out_en spwm_config_t::trig_out[SPWM_TRIG_OUT_COUNT]

Semaphore trigger selections (SEMA0, SEMA1)

◆ mode

spwm_mode_en spwm_config_t::mode

Operating mode

◆ one_shot

bool spwm_config_t::one_shot

One-shot operation enable

◆ prescale

spwm_prescale_en spwm_config_t::prescale

Clock prescaler value

◆ timer

spwm_timer_cfg_t spwm_config_t::timer

Timer/Counter mode fields

◆ pwm

spwm_pwm_cfg_t spwm_config_t::pwm

PWM mode fields

◆ pwmdt

spwm_pwmdt_cfg_t spwm_config_t::pwmdt

PWM with Dead-Time fields

◆ quad

spwm_quad_cfg_t spwm_config_t::quad

Quadrature decoder fields

◆ pwmpr

spwm_pwmpr_cfg_t spwm_config_t::pwmpr

Pseudo-Random PWM fields

◆ sr

spwm_sr_cfg_t spwm_config_t::sr

Shift Register fields

◆ [union]

union { ... } spwm_config_t::cfg

Mode-specific configuration union