Compare commits
No commits in common. "53075f63ec7cac6c4b691b2562b2abd8fa8792b6" and "57f701e8aa207662f10d9b9b327e2562a169321a" have entirely different histories.
53075f63ec
...
57f701e8aa
|
@ -9,9 +9,7 @@ path = "static_pins_macros"
|
||||||
[dependencies.arduino-hal]
|
[dependencies.arduino-hal]
|
||||||
git = "https://github.com/rahix/avr-hal"
|
git = "https://github.com/rahix/avr-hal"
|
||||||
rev = "3e362624547462928a219c40f9ea8e3a64f21e5f"
|
rev = "3e362624547462928a219c40f9ea8e3a64f21e5f"
|
||||||
|
features = ["sparkfun-promicro"]
|
||||||
[features]
|
|
||||||
sparkfun-promicro = ["arduino-hal/sparkfun-promicro"]
|
|
||||||
|
|
||||||
[profile.dev]
|
[profile.dev]
|
||||||
panic = "abort"
|
panic = "abort"
|
||||||
|
|
29
src/lib.rs
29
src/lib.rs
|
@ -1,7 +1,26 @@
|
||||||
#![no_std]
|
#![no_std]
|
||||||
|
|
||||||
use arduino_hal::{hal::port::*, pac::*};
|
pub use static_pins_macros::*;
|
||||||
use static_pins_macros::impl_static_pin;
|
|
||||||
|
pub trait StaticPinOps {
|
||||||
|
type Port;
|
||||||
|
const PIN_NUM: u8;
|
||||||
|
const PIN_POS: u8;
|
||||||
|
|
||||||
|
fn into_input();
|
||||||
|
fn into_output();
|
||||||
|
fn into_output_high();
|
||||||
|
fn into_pull_up_input();
|
||||||
|
|
||||||
|
fn write(data: u8);
|
||||||
|
fn read() -> u8;
|
||||||
|
|
||||||
|
fn is_low() -> bool;
|
||||||
|
fn is_high() -> bool;
|
||||||
|
|
||||||
|
fn set_low();
|
||||||
|
fn set_high();
|
||||||
|
}
|
||||||
|
|
||||||
#[macro_export]
|
#[macro_export]
|
||||||
macro_rules! impl_static_pins {
|
macro_rules! impl_static_pins {
|
||||||
|
@ -31,9 +50,3 @@ macro_rules! impl_static_pins {
|
||||||
)+
|
)+
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "sparkfun-promicro")]
|
|
||||||
impl_static_pins!(
|
|
||||||
PB0, PB1, PB2, PB3, PB4, PB5, PB6, PB7, PC6, PC7, PD0, PD1, PD2, PD3, PD4, PD5, PD6, PD7, PE2,
|
|
||||||
PE6, PF0, PF1, PF4, PF5, PF6, PF7
|
|
||||||
);
|
|
||||||
|
|
Loading…
Reference in New Issue