X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Fpwm.c;h=021d2437c79e4f7f1e9b44cc74f7de1ff628e77a;hb=9d38debd0d2b2eaeeeec7f82d7c39e749ac729e5;hp=3946188262263c0f406062adef2fac522a19d77b;hpb=791e167e053bdd9250d34a9a5ccae6ccde4d6679;p=bertos.git diff --git a/bertos/drv/pwm.c b/bertos/drv/pwm.c index 39461882..021d2437 100644 --- a/bertos/drv/pwm.c +++ b/bertos/drv/pwm.c @@ -38,14 +38,15 @@ * \author Daniele Basile */ -#include -#include +#include +#include #include -#include -#include -#include +#include CPU_HEADER(pwm) + +#include +#include /** @@ -56,13 +57,13 @@ void pwm_setDuty(PwmDev dev, pwm_duty_t duty) pwm_period_t period = 0; pwm_duty_t real_duty = 0; - duty = MIN(duty, (pwm_duty_t)PWM_MAX_DUTY); + duty = MIN(duty, PWM_MAX_DUTY); period = pwm_hw_getPeriod(dev); real_duty = (uint64_t)(duty * period) >> (uint64_t)PWM_MAX_PERIOD_LOG2; -// kprintf("real_duty[%d] duty[%d], period[%d]\n", real_duty, duty, period); +// TRACEMSG("real_duty[%d] duty[%d], period[%d]", real_duty, duty, period); pwm_hw_setDutyUnlock(dev, real_duty); } @@ -95,12 +96,12 @@ void pwm_init(void) IRQ_SAVE_DISABLE(flags); + pwm_hw_init(); + /* set all pwm to 0 */ for (dev = 0; dev < PWM_CNT; dev++) pwm_setDuty(dev, 0); - pwm_hw_init(); - IRQ_RESTORE(flags); }