aboutsummaryrefslogtreecommitdiff
path: root/examples/schedule.rs
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2020-01-21 22:13:23 +0100
committerGravatar Jorge Aparicio <jorge@japaric.io> 2020-01-21 22:13:23 +0100
commit60639b3a9ca22b89067124651ff86ab3c81756c1 (patch)
tree9add8deaf2b5350b352b38d20d9723c14a2d15a2 /examples/schedule.rs
parent6b0a2df41c024fa8e7da07f3b42a80f19840432e (diff)
downloadrtic-60639b3a9ca22b89067124651ff86ab3c81756c1.tar.gz
rtic-60639b3a9ca22b89067124651ff86ab3c81756c1.tar.zst
rtic-60639b3a9ca22b89067124651ff86ab3c81756c1.zip
use the safe DWT::unlock API
instead of a unsafe write_volatile call
Diffstat (limited to '')
-rw-r--r--examples/schedule.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/examples/schedule.rs b/examples/schedule.rs
index 97818e36..8dbe4ab8 100644
--- a/examples/schedule.rs
+++ b/examples/schedule.rs
@@ -1,9 +1,11 @@
//! examples/schedule.rs
+#![deny(unsafe_code)]
#![deny(warnings)]
#![no_main]
#![no_std]
+use cortex_m::peripheral::DWT;
use cortex_m_semihosting::hprintln;
use panic_halt as _;
use rtfm::cyccnt::{Instant, U32Ext as _};
@@ -15,8 +17,8 @@ const APP: () = {
fn init(mut cx: init::Context) {
// Initialize (enable) the monotonic timer (CYCCNT)
cx.core.DCB.enable_trace();
- // required on devices that software lock the DWT (e.g. STM32F7)
- unsafe { cx.core.DWT.lar.write(0xC5ACCE55) }
+ // required on Cortex-M7 devices that software lock the DWT (e.g. STM32F7)
+ DWT::unlock();
cx.core.DWT.enable_cycle_counter();
// semantically, the monotonic timer is frozen at time "zero" during `init`