kmk_firmware/kmk/kmktime.py
sofubi 75f9d10cc7 Add types to validators, time, types
Update pyproject.toml to ignore boards, user_keymaps for mypy
Update pyproject.toml to reduce loud mypy reporting
2021-08-15 21:23:02 +00:00

24 lines
496 B
Python

import time
def sleep_ms(ms: float) -> None:
return time.sleep(ms / 1000)
def ticks_ms() -> float:
'''Has .25s granularity, but is cheap'''
return time.monotonic() * 1000
def ticks_diff(new: float, old: float) -> float:
return new - old
def accurate_ticks() -> int:
'''Is more expensive, but good for time critical things'''
return time.monotonic_ns()
def accurate_ticks_diff(new: float, old: float, ms: float) -> bool:
return bool(new - old < ms * 1000000)