From 3745c73e916f5c33bcb99eae3babd1816c021c3d Mon Sep 17 00:00:00 2001 From: Wilfried Chauveau Date: Thu, 31 May 2018 12:53:02 +0100 Subject: [PATCH] set the tolerance to 5% if NO_SYSTICK is enabled --- TESTS/mbed_drivers/timer/main.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/TESTS/mbed_drivers/timer/main.cpp b/TESTS/mbed_drivers/timer/main.cpp index 76f28422567..d94ef6b686d 100644 --- a/TESTS/mbed_drivers/timer/main.cpp +++ b/TESTS/mbed_drivers/timer/main.cpp @@ -45,9 +45,15 @@ extern uint32_t SystemCoreClock; * 1000 ms delay: tolerance = 20500 us * * */ -#define DELTA_US(delay_ms) (500 + (delay_ms) * US_PER_MSEC / 50) -#define DELTA_MS(delay_ms) (1 + ((delay_ms) * US_PER_MSEC / 50 / US_PER_MSEC)) -#define DELTA_S(delay_ms) (0.000500f + (((float)(delay_ms)) / MSEC_PER_SEC / 50)) +#ifdef NO_SYSTICK +#define TOLERANCE 5 +#else +#define TOLERANCE 2 +#endif + +#define DELTA_US(delay_ms) (500 + (delay_ms) * US_PER_MSEC * TOLERANCE / 100) +#define DELTA_MS(delay_ms) (1 + (delay_ms) * TOLERANCE / 100) +#define DELTA_S(delay_ms) (0.000500f + ((float)(delay_ms)) * ((float)(TOLERANCE) / 100.f) / MSEC_PER_SEC) #define TICKER_FREQ_1MHZ 1000000 #define TICKER_BITS 32