pwmout - TMPM4G9 - add read methods for period and pulsewidth

pull/13492/head
talorion 2020-08-25 23:47:39 +02:00 committed by Gregor Mayramhof
parent 7388ff8b43
commit f2bed4d582
1 changed files with 11 additions and 1 deletions

View File

@ -193,7 +193,7 @@ void pwmout_period_us(pwmout_t *obj, int us)
prscl = T32A_PRSCLx_32;
obj->trailing_timing = (us * CALCULATE_RGC1_VAL);
obj->leading_timing = ((obj->trailing_timing)- (obj->trailing_timing * duty_cycle));
obj->leading_timing = ((obj->trailing_timing) - (obj->trailing_timing * duty_cycle));
obj->p_t32a.p_instance->MOD = T32A_MODE_32;
obj->p_t32a.p_instance->RUNC = (T32A_RUN_DISABLE | T32A_COUNT_STOP);
@ -207,6 +207,11 @@ void pwmout_period_us(pwmout_t *obj, int us)
obj->p_t32a.p_instance->RUNC = (T32A_RUN_ENABLE | T32A_COUNT_START);
}
int pwmout_read_period_us(pwmout_t *obj)
{
return obj->trailing_timing;
}
void pwmout_pulsewidth(pwmout_t *obj, float seconds)
{
pwmout_pulsewidth_us(obj, (seconds * 1000000.0f));
@ -227,6 +232,11 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us)
pwmout_write(obj, value);
}
int pwmout_read_pulsewidth_us(pwmout_t *obj)
{
return obj->trailing_timing - obj->leading_timing;
}
const PinMap *pwmout_pinmap()
{
return PinMap_PWM;