mirror of
https://github.com/embassy-rs/embassy.git
synced 2024-11-21 22:32:29 +00:00
Add from_secs, from_millis.
Uses a hardcoded tick rate for now.
This commit is contained in:
parent
68eac3a57c
commit
3d64a8abef
@ -25,6 +25,9 @@ pub struct Instant {
|
||||
ticks: u64,
|
||||
}
|
||||
|
||||
// TODO allow customizing, probably via Cargo features `tick-hz-32768` or something.
|
||||
pub const TICKS_PER_SECOND: u32 = 32768;
|
||||
|
||||
impl Instant {
|
||||
pub fn now() -> Instant {
|
||||
Instant { ticks: now() }
|
||||
@ -128,6 +131,18 @@ impl Duration {
|
||||
Duration { ticks }
|
||||
}
|
||||
|
||||
pub const fn from_secs(secs: u32) -> Duration {
|
||||
Duration {
|
||||
ticks: secs * TICKS_PER_SECOND,
|
||||
}
|
||||
}
|
||||
|
||||
pub const fn from_millis(millis: u32) -> Duration {
|
||||
Duration {
|
||||
ticks: millis * TICKS_PER_SECOND / 1000,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn checked_add(self, rhs: Duration) -> Option<Duration> {
|
||||
self.ticks
|
||||
.checked_add(rhs.ticks)
|
||||
|
Loading…
Reference in New Issue
Block a user