1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
#![no_std] #![cfg_attr(feature = "usb", feature(align_offset, ptr_offset_from))] #[cfg(feature = "samd21g18a")] pub extern crate atsamd21g18a; #[cfg(feature = "samd21g18a")] pub use atsamd21g18a as target_device; #[cfg(feature = "samd21e18a")] pub extern crate atsamd21e18a; #[cfg(feature = "samd21e18a")] pub use atsamd21e18a as target_device; #[cfg_attr(feature = "usb", macro_use)] extern crate bitfield; extern crate vcell; #[cfg(feature = "use_rtt")] pub extern crate jlink_rtt; #[cfg(feature = "use_rtt")] #[macro_export] macro_rules! dbgprint { ($($arg:tt)*) => { { use core::fmt::Write; let mut out = $crate::jlink_rtt::NonBlockingOutput::new(); writeln!(out, $($arg)*).ok(); } }; } #[cfg(not(feature = "use_rtt"))] #[macro_export] macro_rules! dbgprint { ($($arg:tt)*) => {{}}; } #[cfg_attr(feature = "usb", macro_use)] extern crate cortex_m; pub extern crate embedded_hal as hal; extern crate nb; pub extern crate paste; #[cfg(feature = "usb")] pub extern crate usb_device; extern crate void; mod calibration; pub mod clock; pub mod delay; pub mod gpio; pub mod prelude; pub mod sercom; pub mod time; pub mod timer; #[cfg(feature = "usb")] pub mod usb;