From 1fe587c5160b9e99bbb67644318cb9e5c9c56b4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Tj=C3=A4der?= Date: Wed, 11 Jan 2023 21:33:44 +0100 Subject: Remove unwrap() from hprintln!() sd 'hprintln(.*).unwrap\(\)' 'hprintln' (fd -e rs .) --- examples/hardware.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'examples/hardware.rs') diff --git a/examples/hardware.rs b/examples/hardware.rs index 6063224..22cf5d9 100644 --- a/examples/hardware.rs +++ b/examples/hardware.rs @@ -24,7 +24,7 @@ mod app { // `init` returns because interrupts are disabled rtic::pend(Interrupt::UART0); // equivalent to NVIC::pend - hprintln!("init").unwrap(); + hprintln!("init"); (Shared {}, Local {}, init::Monotonics()) } @@ -33,7 +33,7 @@ mod app { fn idle(_: idle::Context) -> ! { // interrupts are enabled again; the `UART0` handler runs at this point - hprintln!("idle").unwrap(); + hprintln!("idle"); rtic::pend(Interrupt::UART0); -- cgit v1.2.3 From 050313d62d84dd9f537bbc578213f18cd7640d04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Tj=C3=A4der?= Date: Wed, 11 Jan 2023 21:48:21 +0100 Subject: Missed hprintln with multiline --- examples/hardware.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'examples/hardware.rs') diff --git a/examples/hardware.rs b/examples/hardware.rs index 22cf5d9..8f29455 100644 --- a/examples/hardware.rs +++ b/examples/hardware.rs @@ -53,7 +53,6 @@ mod app { "UART0 called {} time{}", *cx.local.times, if *cx.local.times > 1 { "s" } else { "" } - ) - .unwrap(); + ); } } -- cgit v1.2.3 From 9764121cc1cdd6a7c27e86fa8d65bb6d2d48dc27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Tj=C3=A4der?= Date: Sat, 14 Jan 2023 11:24:51 +0100 Subject: Upgrade of semihosting changed timing New semihosting 0.5 does not use error handling, returns directly and as semihosting is generally slow this led to missing print statements. Workaround is to add NOP, which seems sufficient to let it flush the buffers --- examples/hardware.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'examples/hardware.rs') diff --git a/examples/hardware.rs b/examples/hardware.rs index 8f29455..590bf6a 100644 --- a/examples/hardware.rs +++ b/examples/hardware.rs @@ -37,10 +37,11 @@ mod app { rtic::pend(Interrupt::UART0); - debug::exit(debug::EXIT_SUCCESS); // Exit QEMU simulator - loop { + // Exit moved after nop to ensure that rtic::pend gets + // to run before exiting cortex_m::asm::nop(); + debug::exit(debug::EXIT_SUCCESS); // Exit QEMU simulator } } -- cgit v1.2.3