diff --git a/tmk_core/common/timer.h b/tmk_core/common/timer.h index 52bc1cc671c..7ee7feac29f 100644 --- a/tmk_core/common/timer.h +++ b/tmk_core/common/timer.h @@ -45,8 +45,8 @@ 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) -#define timer_expired(current, future) (((uint16_t)current - (uint16_t)future) < 0x8000) -#define timer_expired32(current, future) (((uint32_t)current - (uint32_t)future) < 0x80000000) +#define timer_expired(current, future) ((uint16_t)(current - future) < UINT16_MAX / 2) +#define timer_expired32(current, future) ((uint32_t)(current - future) < UINT32_MAX / 2) #ifdef __cplusplus }