X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Farm%2Fdrv%2Fpwm_at91.h;h=5d362894707c80a79b95110e9b38964f48d6b69c;hb=4a3929fcd14a8dc8c84d8ad8b794f11de02f1fbc;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..5d362894 100644 --- a/bertos/cpu/arm/drv/pwm_at91.h +++ b/bertos/cpu/arm/drv/pwm_at91.h @@ -33,7 +33,6 @@ * * \brief PWM hardware-specific definition * - * \version $Id$ * * \author Daniele Basile */ @@ -41,14 +40,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 +62,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 +77,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 */