aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rtic-monotonics/Cargo.toml10
-rw-r--r--rtic-monotonics/src/lib.rs1
-rw-r--r--rtic-monotonics/src/rp2040.rs2
3 files changed, 9 insertions, 4 deletions
diff --git a/rtic-monotonics/Cargo.toml b/rtic-monotonics/Cargo.toml
index 2e75bdb..0c942a2 100644
--- a/rtic-monotonics/Cargo.toml
+++ b/rtic-monotonics/Cargo.toml
@@ -17,18 +17,22 @@ license = "MIT OR Apache-2.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
-cortex-m = { version = "0.7.6" }
-embedded-hal-async = "0.2.0-alpha.0"
-fugit = { version = "0.3.6", features = ["defmt"] }
rtic-time = { version = "1.0.0-alpha.0", path = "../rtic-time" }
+embedded-hal-async = "0.2.0-alpha.0"
+fugit = { version = "0.3.6" }
atomic-polyfill = "1"
cfg-if = "1.0.0"
+cortex-m = { version = "0.7.6", optional = true }
rp2040-pac = { version = ">=0.2.0,<0.5", optional = true }
[features]
default = []
+defmt = ["fugit/defmt"]
+# Systick on Cortex-M, default 1 kHz
+cortex_m_systick = ["dep:cortex-m"]
systick_100hz = []
systick_10khz = []
+# Timer peripheral on the RP2040
rp2040 = ["dep:rp2040-pac"]
diff --git a/rtic-monotonics/src/lib.rs b/rtic-monotonics/src/lib.rs
index fb5dc8a..4eb2261 100644
--- a/rtic-monotonics/src/lib.rs
+++ b/rtic-monotonics/src/lib.rs
@@ -9,6 +9,7 @@
pub use rtic_time::{Monotonic, TimeoutError, TimerQueue};
+#[cfg(feature = "cortex_m_sytick")]
pub mod systick;
#[cfg(feature = "rp2040")]
diff --git a/rtic-monotonics/src/rp2040.rs b/rtic-monotonics/src/rp2040.rs
index 448c388..064a50d 100644
--- a/rtic-monotonics/src/rp2040.rs
+++ b/rtic-monotonics/src/rp2040.rs
@@ -106,7 +106,7 @@ impl Monotonic for Timer {
}
fn pend_interrupt() {
- cortex_m::peripheral::NVIC::pend(Interrupt::TIMER_IRQ_0);
+ rp2040_pac::NVIC::pend(Interrupt::TIMER_IRQ_0);
}
fn on_interrupt() {}