aboutsummaryrefslogtreecommitdiff
path: root/rtic-monotonics/src/systick.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rtic-monotonics/src/systick.rs')
-rw-r--r--rtic-monotonics/src/systick.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/rtic-monotonics/src/systick.rs b/rtic-monotonics/src/systick.rs
index 9b8fca8..fb4f883 100644
--- a/rtic-monotonics/src/systick.rs
+++ b/rtic-monotonics/src/systick.rs
@@ -203,6 +203,15 @@ impl embedded_hal_async::delay::DelayUs for Systick {
}
}
+impl embedded_hal::delay::DelayUs for Systick {
+ fn delay_us(&mut self, us: u32) {
+ #[cfg(feature = "systick-64bit")]
+ let us = u64::from(us);
+ let done = Self::now() + us.micros();
+ while Self::now() < done {}
+ }
+}
+
/// Register the Systick interrupt for the monotonic.
#[macro_export]
macro_rules! create_systick_token {