X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Farm%2Fdrv%2Fpwm_at91.h;h=c8b0fd473d7494053e858ca46c66f5d9f061796f;hb=d2f1e8ab86f41a6a4165cd5f61a5eece1d8e8de6;hp=753d859ffcaf98a9f0cccf00a7f8741d26ed3e37;hpb=8cf8c79b317ab4304343b57cf711481b8b2d9fd0;p=bertos.git diff --git a/bertos/cpu/arm/drv/pwm_at91.h b/bertos/cpu/arm/drv/pwm_at91.h index 753d859f..c8b0fd47 100644 --- a/bertos/cpu/arm/drv/pwm_at91.h +++ b/bertos/cpu/arm/drv/pwm_at91.h @@ -41,14 +41,13 @@ #ifndef DRV_PWM_AT91_H #define DRV_PWM_AT91_H -#include "pwm_map.h" +#include "hw/pwm_map.h" #include #include #include -#include "appconfig.h" #define PWM_HW_MAX_PRESCALER_STEP 10 #define PWM_HW_MAX_PERIOD 0xFFFF @@ -64,6 +63,7 @@ typedef uint16_t pwm_period_t; typedef struct PwmChannel { bool duty_zero; ///< True if duty cyle is zero, false otherwise. + bool pol; ///< PWM polarty flag. int pwm_pin; ///< PWM pin. reg32_t *mode_reg; ///< PWM mode register. reg32_t *duty_reg; ///< PWM duty cycle register. @@ -78,6 +78,7 @@ void pwm_hw_setFrequency(PwmDev dev, uint32_t freq); void pwm_hw_setDutyUnlock(PwmDev dev, uint16_t duty); void pwm_hw_disable(PwmDev dev); void pwm_hw_enable(PwmDev dev); +void pwm_hw_setPolarity(PwmDev dev, bool pol); pwm_period_t pwm_hw_getPeriod(PwmDev dev); #endif /* DRV_ADC_AT91_H */