From 7a9b06ad867259f48ec0393701b8c9963c5a6610 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Mon, 7 Apr 2025 11:55:50 -0400 Subject: [PATCH] stm32: Fix prescaler overflow check in hard_pwm.c Signed-off-by: Kevin O'Connor --- src/stm32/hard_pwm.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/stm32/hard_pwm.c b/src/stm32/hard_pwm.c index bbdd18b2..09a29ed5 100644 --- a/src/stm32/hard_pwm.c +++ b/src/stm32/hard_pwm.c @@ -291,10 +291,10 @@ gpio_pwm_setup(uint8_t pin, uint32_t cycle_time, uint8_t val){ if (pclock_div > 1) pclock_div /= 2; // Timers run at twice the normal pclock frequency uint32_t prescaler = cycle_time / (pclock_div * (MAX_PWM - 1)); - if (prescaler > 0) { - prescaler -= 1; - } else if (prescaler > UINT16_MAX) { + if (prescaler > UINT16_MAX) { prescaler = UINT16_MAX; + } else if (prescaler > 0) { + prescaler -= 1; } gpio_peripheral(p->pin, p->function, 0);