tests/xtimer_usleep_until: Print statistics at the end
This commit is contained in:
parent
4ea1a56f10
commit
4b47c3e9b7
@ -9,6 +9,4 @@ BOARD_INSUFFICIENT_MEMORY := chronos
|
|||||||
FEATURES_REQUIRED += periph_timer
|
FEATURES_REQUIRED += periph_timer
|
||||||
USEMODULE += xtimer
|
USEMODULE += xtimer
|
||||||
|
|
||||||
CFLAGS += -DNUMOF=200
|
|
||||||
|
|
||||||
include $(RIOTBASE)/Makefile.include
|
include $(RIOTBASE)/Makefile.include
|
||||||
|
|||||||
@ -33,6 +33,8 @@ int main(void)
|
|||||||
puts("xtimer_usleep_until test application.\n");
|
puts("xtimer_usleep_until test application.\n");
|
||||||
|
|
||||||
uint32_t interval = NUMOF;
|
uint32_t interval = NUMOF;
|
||||||
|
int32_t max_diff = INT32_MIN;
|
||||||
|
int32_t min_diff = INT32_MAX;
|
||||||
|
|
||||||
for (int i = 0; i < NUMOF; i++) {
|
for (int i = 0; i < NUMOF; i++) {
|
||||||
printf("Testing interval %u... (now=%"PRIu32")\n", (unsigned)interval, xtimer_now());
|
printf("Testing interval %u... (now=%"PRIu32")\n", (unsigned)interval, xtimer_now());
|
||||||
@ -46,12 +48,20 @@ int main(void)
|
|||||||
for (int i = 0; i < NUMOF; i++) {
|
for (int i = 0; i < NUMOF; i++) {
|
||||||
printf("%4d diff=%"PRIi32"\n", NUMOF-i, res[i]);
|
printf("%4d diff=%"PRIi32"\n", NUMOF-i, res[i]);
|
||||||
|
|
||||||
if (res[i] < -1000 || res[i] > 1000) {
|
if (res[i] > max_diff) {
|
||||||
|
max_diff = res[i];
|
||||||
|
}
|
||||||
|
if (res[i] < min_diff) {
|
||||||
|
min_diff = res[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("\nMin/max error: %" PRId32 "/%" PRId32 "\n", min_diff, max_diff);
|
||||||
|
|
||||||
|
if (min_diff < -1000 || max_diff > 1000) {
|
||||||
puts("too large difference.\n");
|
puts("too large difference.\n");
|
||||||
puts("Test Failed.\n");
|
puts("Test Failed.\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
printf("\nTest complete.\n");
|
printf("\nTest complete.\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user