/// Macro for sending a formatted string through an ITM channel #[macro_export] macro_rules! iprint { ($channel:expr, $s:expr) => { $crate::itm::write_str($channel, $s); }; ($channel:expr, $($arg:tt)*) => { $crate::itm::write_fmt($channel, format_args!($($arg)*)); }; } /// Macro for sending a formatted string through an ITM channel, with a newline. #[macro_export] macro_rules! iprintln { ($channel:expr) => { iprint!($channel, "\n"); }; ($channel:expr, $fmt:expr) => { iprint!($channel, concat!($fmt, "\n")); }; ($channel:expr, $fmt:expr, $($arg:tt)*) => { iprint!($channel, concat!($fmt, "\n"), $($arg)*); }; }