mbed library sources
Dependents: Freedman_v2 Nucleo_i2c_OLED_BME280_copy
Fork of mbed-src by
Diff: common/Timer.cpp
- Revision:
- 525:c320967f86b9
- Parent:
- 358:9d7ef901f004
- Child:
- 547:88c982c8f758
diff -r c0134becc221 -r c320967f86b9 common/Timer.cpp --- a/common/Timer.cpp Mon Apr 27 09:45:08 2015 +0100 +++ b/common/Timer.cpp Tue Apr 28 11:45:12 2015 +0100 @@ -14,17 +14,22 @@ * limitations under the License. */ #include "Timer.h" +#include "ticker_api.h" #include "us_ticker_api.h" namespace mbed { -Timer::Timer() : _running(), _start(), _time() { +Timer::Timer() : _running(), _start(), _time(), _ticker_data(get_us_ticker_data()) { + reset(); +} + +Timer::Timer(const ticker_data_t *const data) : _running(), _start(), _time(), _ticker_data(data) { reset(); } void Timer::start() { if (!_running) { - _start = us_ticker_read(); + _start = ticker_read(_ticker_data); _running = 1; } } @@ -48,14 +53,14 @@ int Timer::slicetime() { if (_running) { - return us_ticker_read() - _start; + return ticker_read(_ticker_data) - _start; } else { return 0; } } void Timer::reset() { - _start = us_ticker_read(); + _start = ticker_read(_ticker_data); _time = 0; }