PMSIS API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
pwm.h File Reference

Data Structures

struct  pi_pwm_conf
 PWM configuration structure. More...
 
struct  pi_pwm_ioctl_ch_config
 PWM ioctl channel config arg struct. More...
 
struct  pi_pwm_ioctl_evt
 PWM ioctl event output arg struct. More...
 

Macros

#define PI_PWM_CONFIG_INSEL_OFFSET
 
#define PI_PWM_CONFIG_EVT_OFFSET
 
#define PI_PWM_CONFIG_CLKSEL_OFFSET
 
#define PI_PWM_CONFIG_UPDOWNSEL_OFFSET
 
#define PI_PWM_CONFIG_PRESCALER_OFFSET
 
#define PI_PWM_EVENT_OUTPUT(pwm, channel)
 

Enumerations

enum  pi_pwm_cmd_e
 PWM timer commands. More...
 
enum  pi_pwm_timer_conf_e
 PWM timer config. More...
 
enum  pi_pwm_ch_config_e
 PWM channel configuration. More...
 
enum  pi_pwm_channel_e
 PWM channels. More...
 
enum  pi_pwm_evt_sel_e
 Event output selection. More...
 
enum  pi_pwm_output_evt_e
 Output event source selection. More...
 
enum  pi_pwm_ioctl_cmd_e
 PWM ioctl commands. More...
 

Functions

void pi_pwm_conf_init (struct pi_pwm_conf *conf)
 Initialize a PWM configuration structure. More...
 
int32_t pi_pwm_open (struct pi_device *device)
 Open a PWM device. More...
 
void pi_pwm_close (struct pi_device *device)
 Close a PWM device. More...
 
int32_t pi_pwm_ioctl (struct pi_device *device, pi_pwm_ioctl_cmd_e cmd, void *arg)
 PWM ioctl command. More...
 
uint32_t pi_pwm_counter_get (struct pi_device *device)
 Get PWM timer value. More...
 
static void pi_pwm_timer_start (struct pi_device *device)
 Start PWM timer. More...
 
static void pi_pwm_timer_stop (struct pi_device *device)
 Stop PWM timer. More...
 
int32_t pi_pwm_duty_cycle_set (struct pi_device *device, uint32_t frequency, uint8_t duty_cycle)
 Set PWM frequency and duty_cycle. More...