From 92f4066a72056901105308ce2e133cc4048b51c2 Mon Sep 17 00:00:00 2001 From: Edgar Bonet Date: Wed, 19 Sep 2018 12:31:52 +0200 Subject: [PATCH 1/2] Fix micros() rollover issue in FFT_03.ino --- Examples/FFT_03/FFT_03.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Examples/FFT_03/FFT_03.ino b/Examples/FFT_03/FFT_03.ino index 868c8be..30d5a7a 100644 --- a/Examples/FFT_03/FFT_03.ino +++ b/Examples/FFT_03/FFT_03.ino @@ -59,7 +59,7 @@ void loop() vReal[i] = analogRead(CHANNEL); vImag[i] = 0; - while(micros() < (microseconds + sampling_period_us)){ + while(micros() - microseconds < sampling_period_us){ //empty loop } } From c564008306528a702f6f8b921de66a7d4da4d922 Mon Sep 17 00:00:00 2001 From: Edgar Bonet Date: Wed, 19 Sep 2018 12:32:05 +0200 Subject: [PATCH 2/2] Ensure accurate sampling frequency in FFT_03.ino --- Examples/FFT_03/FFT_03.ino | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Examples/FFT_03/FFT_03.ino b/Examples/FFT_03/FFT_03.ino index 30d5a7a..9e1640c 100644 --- a/Examples/FFT_03/FFT_03.ino +++ b/Examples/FFT_03/FFT_03.ino @@ -53,15 +53,15 @@ void setup() void loop() { /*SAMPLING*/ + microseconds = micros(); for(int i=0; i