Hardware Abstraction Layer for FreeRTOS
pwm_software.h
Go to the documentation of this file.
1
#ifndef PWM_SOFTWARE_H_
2
#define PWM_SOFTWARE_H_
3
4
#include <
pwm.h
>
5
#define PWM_PRV
6
#include <
pwm_prv.h
>
7
#include <
gpio.h
>
8
extern
const
struct
pwm_ops software_pwm_ops;
9
struct
pwm_software {
10
struct
pwm_generic
gen;
11
struct
timer *timer;
12
struct
gpio_pin *pin;
13
uint64_t period;
14
uint64_t duty_cycle;
15
uint64_t duty_cycleNew;
16
bool
updated;
17
bool
running;
18
bool
oldvalue;
19
};
21
int32_t
pwm_software_connect
(
struct
pwm *pwm,
struct
timer *timer,
struct
gpio_pin *pin);
22
#define ADD_PWM_SOFTWARE(id) \
23
struct pwm_software pwm_software_##id = { \
24
PWM_INIT_DEV(software) \
25
HAL_NAME("Software PWM " #id) \
26
};\
27
PWM_ADDDEV(software, pwm_software_##id)
28
#define PWM_SOFTWARE_ID(id) HAL_GET_ID(pwm, software, pwm_software_##id)
29
#endif
pwm_generic
Definition:
pwm.h:45
pwm_prv.h
pwm_software_connect
int32_t pwm_software_connect(struct pwm *pwm, struct timer *timer, struct gpio_pin *pin)
gpio.h
pwm.h
driver
include
pwm_software.h
Generated on Tue Aug 17 2021 15:19:23 for Hardware Abstraction Layer for FreeRTOS by
1.8.20