From 781ee875aab3faf32c2e04865dca2aae0cd3a19f Mon Sep 17 00:00:00 2001 From: Kaspar Schleiser <kaspar@schleiser.de> Date: Wed, 6 Jan 2016 13:58:36 +0100 Subject: [PATCH] tests: xtimer_now64_continuity: initial commit --- tests/xtimer_now64_continuity/Makefile | 8 ++++ tests/xtimer_now64_continuity/README.md | 5 +++ tests/xtimer_now64_continuity/main.c | 49 +++++++++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 tests/xtimer_now64_continuity/Makefile create mode 100644 tests/xtimer_now64_continuity/README.md create mode 100644 tests/xtimer_now64_continuity/main.c diff --git a/tests/xtimer_now64_continuity/Makefile b/tests/xtimer_now64_continuity/Makefile new file mode 100644 index 0000000000..0796faef1d --- /dev/null +++ b/tests/xtimer_now64_continuity/Makefile @@ -0,0 +1,8 @@ +export APPLICATION = xtimer_now64_continuity +include ../Makefile.tests_common + +FEATURES_REQUIRED = periph_timer + +USEMODULE += xtimer + +include $(RIOTBASE)/Makefile.include diff --git a/tests/xtimer_now64_continuity/README.md b/tests/xtimer_now64_continuity/README.md new file mode 100644 index 0000000000..bc72736d9c --- /dev/null +++ b/tests/xtimer_now64_continuity/README.md @@ -0,0 +1,5 @@ +Description +=========== + +This test measures the difference of two consecutive calls to xtimer_now64() 10k times. +Should the difference be larger then 1000us, the test fails, otherwise it succeeds. diff --git a/tests/xtimer_now64_continuity/main.c b/tests/xtimer_now64_continuity/main.c new file mode 100644 index 0000000000..c6bf741454 --- /dev/null +++ b/tests/xtimer_now64_continuity/main.c @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2015 Kaspar Schleiser <kaspar@schleiser.de> + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @ingroup tests + * @{ + * + * @file + * @brief xtimer_now64 continuity test application + * + * @author Kaspar Schleiser <kaspar@schleiser.de> + * + * @} + */ + +#include <stdio.h> +#include <stdint.h> + +#include "xtimer.h" + +#define ITERATIONS (100000LU) +#define MAXDIFF 1000 + +int main(void) +{ + uint32_t n = ITERATIONS; + uint64_t now; + uint64_t before = xtimer_now64(); + + while(--n) { + now = xtimer_now64(); + if ((now-before) > MAXDIFF) { + puts("TEST FAILED."); + break; + } + before = now; + } + + if (!n) { + puts("TEST SUCCESSFUL."); + } + + return 0; +} -- GitLab