From dda71f02620f2852fcc5afb9052a3d8d7583bc48 Mon Sep 17 00:00:00 2001 From: talorion Date: Tue, 25 Aug 2020 23:43:11 +0200 Subject: [PATCH] pwmout - NRF52 - add read methods for period and pulsewidth --- .../TARGET_NRF5x/TARGET_NRF52/pwmout_api.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/pwmout_api.c b/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/pwmout_api.c index 691af9d6f3..79716d4ce1 100644 --- a/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/pwmout_api.c +++ b/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/pwmout_api.c @@ -143,7 +143,7 @@ void pwmout_init(pwmout_t *obj, PinName pin) /* Get hardware instance from pinmap. */ int instance = pin_instance_pwm(pin); - MBED_ASSERT(instance < (int) (sizeof(nordic_nrf5_pwm_instance) / sizeof(nrfx_pwm_t))); + MBED_ASSERT(instance < (int)(sizeof(nordic_nrf5_pwm_instance) / sizeof(nrfx_pwm_t))); /* Populate PWM object with default values. */ obj->instance = instance; @@ -287,6 +287,11 @@ void pwmout_period_us(pwmout_t *obj, int period) nordic_pwm_restart(obj); } +int pwmout_read_period_us(pwmout_t *obj) +{ + return obj->period; +} + /** Set the PWM pulsewidth specified in seconds, keeping the period the same. * * Parameter obj The pwmout object @@ -348,6 +353,10 @@ void pwmout_pulsewidth_us(pwmout_t *obj, int pulse) nordic_pwm_restart(obj); } +int pwmout_read_pulsewidth_us(pwmout_t *obj { + return (obj->period) * (obj->percent); +} + const PinMap *pwmout_pinmap() { return PinMap_PWM_testing;