diff --git a/TESTS/mbed_hal/lp_us_tickers/main.cpp b/TESTS/mbed_hal/lp_us_tickers/main.cpp index 5e1ced8af1..a0283e17b0 100644 --- a/TESTS/mbed_hal/lp_us_tickers/main.cpp +++ b/TESTS/mbed_hal/lp_us_tickers/main.cpp @@ -49,8 +49,10 @@ unsigned int ticker_overflow_delta; /* Auxiliary function to count ticker ticks elapsed during execution of N cycles of empty while loop. * Parameter is used to disable compiler optimisation. */ -uint32_t count_ticks(volatile uint32_t cycles, uint32_t step) +uint32_t count_ticks(uint32_t cycles, uint32_t step) { + register uint32_t reg_cycles = cycles; + core_util_critical_section_enter(); const uint32_t start = intf->read();