Skip to content

Commit

Permalink
tests/periph_rtt: Fix for tick conversion test RIOT-OS#15940
Browse files Browse the repository at this point in the history
Signed-off-by: chudov <chudov@gmail.com>
  • Loading branch information
chudov committed May 2, 2023
1 parent 7213c0a commit 7c3186d
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions tests/periph_rtt/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -105,17 +105,17 @@ int main(void)
puts("\nRIOT RTT low-level driver test");

puts("RTT configuration:");
printf("RTT_MAX_VALUE: 0x%08x\n", (unsigned)RTT_MAX_VALUE);
printf("RTT_FREQUENCY: %u\n\n", (unsigned)RTT_FREQUENCY);
printf("RTT_MAX_VALUE: 0x%08lx\n", (unsigned long)RTT_MAX_VALUE);
printf("RTT_FREQUENCY: %lu\n\n", (unsigned long)RTT_FREQUENCY);

puts("Testing the tick conversion");
for (unsigned i = 0; i < ARRAY_SIZE(_ticktest); i++) {
puts("Testing the tick conversion (with rounding if RTT_FREQUENCY is not power of 2)");
for (uint16_t i = 0; i < ARRAY_SIZE(_ticktest); i++) {
uint32_t sec = RTT_TICKS_TO_SEC(_ticktest[i]);
uint32_t ticks = RTT_SEC_TO_TICKS(sec);
printf("Trying to convert %" PRIu32 " to seconds and back\n",
_ticktest[i]);
/* account for rounding errors... */
if ((ticks != 0) && (ticks != _ticktest[i])) {
/* RTT_FREQUENCY is not always power of 2 so compare with rounded result */
if ((ticks != 0) && (ticks != _ticktest[i] / RTT_FREQUENCY * RTT_FREQUENCY)) {
puts("error: TICK conversion not working as expected\n");
return 1;
}
Expand Down

0 comments on commit 7c3186d

Please sign in to comment.