aboutsummaryrefslogtreecommitdiff
path: root/examples/rp2040_local_i2c_init
diff options
context:
space:
mode:
Diffstat (limited to 'examples/rp2040_local_i2c_init')
-rw-r--r--examples/rp2040_local_i2c_init/Cargo.toml18
-rw-r--r--examples/rp2040_local_i2c_init/src/main.rs7
2 files changed, 16 insertions, 9 deletions
diff --git a/examples/rp2040_local_i2c_init/Cargo.toml b/examples/rp2040_local_i2c_init/Cargo.toml
index 4aed0b8..9029b6e 100644
--- a/examples/rp2040_local_i2c_init/Cargo.toml
+++ b/examples/rp2040_local_i2c_init/Cargo.toml
@@ -6,14 +6,20 @@ license = "MIT OR Apache-2.0"
version = "0.1.0"
edition = "2021"
+[workspace]
+
+[dependencies.rtic]
+path = "../../rtic"
+version = "2.0.0-alpha.1"
+features = ["thumbv6-backend"]
+
+[dependencies.rtic-monotonics]
+path = "../../rtic-monotonics"
+version = "1.0.0-alpha.1"
+features = ["rp2040"]
+
[dependencies]
cortex-m = "0.7"
-rtic = { git = "https://github.com/rtic-rs/rtic", features = [
- "thumbv6-backend",
-] }
-rtic-monotonics = { git = "https://github.com/rtic-rs/rtic", features = [
- "rp2040",
-] }
embedded-hal = { version = "0.2.7", features = ["unproven"] }
fugit = "0.3"
rp-pico = "0.7.0"
diff --git a/examples/rp2040_local_i2c_init/src/main.rs b/examples/rp2040_local_i2c_init/src/main.rs
index 3d881aa..6776892 100644
--- a/examples/rp2040_local_i2c_init/src/main.rs
+++ b/examples/rp2040_local_i2c_init/src/main.rs
@@ -25,8 +25,6 @@ mod app {
use panic_probe as _;
- rtic_monotonics::make_rp2040_monotonic_handler!();
-
type I2CBus = I2C<
pac::I2C1,
(
@@ -51,8 +49,11 @@ mod app {
i2c_ctx: MaybeUninit<I2CBus> = MaybeUninit::uninit()
])]
fn init(mut ctx: init::Context) -> (Shared, Local) {
+ // Initialize the interrupt for the RP2040 timer and obtain the token
+ // proving that we have.
+ let rp2040_timer_token = rtic_monotonics::create_rp2040_monotonic_token!();
// Configure the clocks, watchdog - The default is to generate a 125 MHz system clock
- Timer::start(ctx.device.TIMER, &mut ctx.device.RESETS); // default rp2040 clock-rate is 125MHz
+ Timer::start(ctx.device.TIMER, &mut ctx.device.RESETS, rp2040_timer_token); // default rp2040 clock-rate is 125MHz
let mut watchdog = Watchdog::new(ctx.device.WATCHDOG);
let clocks = clocks::init_clocks_and_plls(
XOSC_CRYSTAL_FREQ,