diff --git a/targets/TARGET_STM/pwmout_api.c b/targets/TARGET_STM/pwmout_api.c index b8ce81a745..fcf846143f 100644 --- a/targets/TARGET_STM/pwmout_api.c +++ b/targets/TARGET_STM/pwmout_api.c @@ -386,6 +386,11 @@ void pwmout_period_us(pwmout_t *obj, int us) __HAL_TIM_ENABLE(&TimHandle); } +int pwmout_read_period_us(pwmout_t *obj) +{ + return obj->period; +} + void pwmout_pulsewidth(pwmout_t *obj, float seconds) { pwmout_pulsewidth_us(obj, seconds * 1000000.0f); @@ -402,6 +407,12 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int us) pwmout_write(obj, value); } +int pwmout_read_pulsewidth_us(pwmout_t *obj) +{ + float tmp = pwmout_read(obj); + return (int)(tmp * (float)obj->period); +} + const PinMap *pwmout_pinmap() { return PinMap_PWM;