Browse Source

Fixing wrapping math logic for timer_expired functions (#6746)

pull/6788/head
XScorpion2 4 years ago
committed by fauxpark
parent
commit
2f49cae9bc
1 changed files with 2 additions and 2 deletions
  1. +2
    -2
      tmk_core/common/timer.h

+ 2
- 2
tmk_core/common/timer.h View File

@ -45,9 +45,9 @@ uint16_t timer_elapsed(uint16_t last);
uint32_t timer_elapsed32(uint32_t last);
// Utility functions to check if a future time has expired & autmatically handle time wrapping if checked / reset frequently (half of max value)
inline bool timer_expired(uint16_t current, uint16_t last) { return current - last < 0x8000; }
inline bool timer_expired(uint16_t current, uint16_t future) { return (uint16_t)(current - future) < 0x8000; }
inline bool timer_expired32(uint32_t current, uint32_t future) { return current - future < 0x80000000; }
inline bool timer_expired32(uint32_t current, uint32_t future) { return (uint32_t)(current - future) < 0x80000000; }
#ifdef __cplusplus
}


Loading…
Cancel
Save