From 18e9f747381a342aa86d7ad28cf8fe8bf725038f Mon Sep 17 00:00:00 2001 From: Egor Leonenko Date: Fri, 17 Aug 2018 19:34:03 +1200 Subject: [PATCH] Fix PWM Support on NRF52840 Replace usage of pin number alone with port+pin combination in NRF port of PWMOut --- ports/nrf/common-hal/pulseio/PWMOut.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/nrf/common-hal/pulseio/PWMOut.c b/ports/nrf/common-hal/pulseio/PWMOut.c index c85b77fcd1..0f14610924 100644 --- a/ports/nrf/common-hal/pulseio/PWMOut.c +++ b/ports/nrf/common-hal/pulseio/PWMOut.c @@ -146,7 +146,7 @@ void common_hal_pulseio_pwmout_construct(pulseio_pwmout_obj_t* self, // check if mapped to PWM channel already for(int i=0; ipin); + int ch = pin2channel(pwm_arr[i], NRF_GPIO_PIN_MAP(pin->port, pin->pin)); if ( ch >= 0 ) { self->pwm = pwm_arr[i]; @@ -168,7 +168,7 @@ void common_hal_pulseio_pwmout_construct(pulseio_pwmout_obj_t* self, // disable before mapping pin channel self->pwm->ENABLE = 0; - self->pwm->PSEL.OUT[self->channel] = pin->pin; + self->pwm->PSEL.OUT[self->channel] = NRF_GPIO_PIN_MAP(pin->port, pin->pin); self->pwm->COUNTERTOP = (PWM_MAX_FREQ/frequency); self->freq = frequency;