From fe7821aacaf5fd9f74c667e719efc9870424445b Mon Sep 17 00:00:00 2001 From: hathach Date: Tue, 9 Sep 2025 13:01:25 +0700 Subject: [PATCH] fix tone with low frequency e.g 25 hz --- cores/arduino/Tone.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/cores/arduino/Tone.cpp b/cores/arduino/Tone.cpp index 1d4ddc406..3b30cf4e2 100644 --- a/cores/arduino/Tone.cpp +++ b/cores/arduino/Tone.cpp @@ -126,11 +126,17 @@ void tone (uint32_t outputPin, uint32_t frequency, uint32_t duration) case 2: prescalerConfigBits = TC_CTRLA_PRESCALER_DIV8; break; - case 3: prescalerConfigBits = TC_CTRLA_PRESCALER_DIV16; break; + case 3: + case 4: + prescalerConfigBits = TC_CTRLA_PRESCALER_DIV16; break; - case 5: prescalerConfigBits = TC_CTRLA_PRESCALER_DIV64; break; + case 5: + case 6: + prescalerConfigBits = TC_CTRLA_PRESCALER_DIV64; break; - case 7: prescalerConfigBits = TC_CTRLA_PRESCALER_DIV256; break; + case 7: + case 8: + prescalerConfigBits = TC_CTRLA_PRESCALER_DIV256; break; case 9: prescalerConfigBits = TC_CTRLA_PRESCALER_DIV1024; break;