X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fpwm.h;h=f2c651b10df6f1946dd2ee9a146f3dda7ef396d6;hb=c5478437ae3b87dd00978e2644d635559e0a1f92;hp=58c4ee5ae5794530dc3d31e52302cd85ea0441f7;hpb=48606ccf318afe90b928fb43e0bd48586ff8d632;p=bertos.git diff --git a/bertos/drv/pwm.h b/bertos/drv/pwm.h index 58c4ee5a..f2c651b1 100644 --- a/bertos/drv/pwm.h +++ b/bertos/drv/pwm.h @@ -41,21 +41,46 @@ #ifndef DRV_PWM_H #define DRV_PWM_H -#include +#include "hw/pwm_map.h" + +#include + +#include CPU_HEADER(pwm) + #include #define PWM_MAX_DUTY ((pwm_duty_t)0xFFFF) -#define PWM_MAX_PERIOD 0xFFFF -#define PWM_MAX_PERIOD_LOG2 16 +#define PWM_MAX_PERIOD 0xFFFF +#define PWM_MAX_PERIOD_LOG2 16 +/** + * PWM type define. + */ typedef uint16_t pwm_duty_t; typedef uint32_t pwm_freq_t; + + +/** + * Set PWM polarity of pwm \p dev. + */ +INLINE void pwm_setPolarity(PwmDev dev, bool pol) +{ + pwm_hw_setPolarity(dev, pol); +} + void pwm_setDuty(PwmDev dev, pwm_duty_t duty); void pwm_setFrequency(PwmDev dev, pwm_freq_t freq); void pwm_enable(PwmDev dev, bool state); void pwm_init(void); -void pwm_test(void); +/** + * Test function prototypes. + * + * See pwm_test.c for implemntation of these functions. + */ +int pwm_testRun(void); +int pwm_testSetUp(void); +int pwm_testTearDown(void); #endif /* DRV_PWM_H */