macro_rules! set_pins { ([$base_pin: ident, $($pin: ident),*], $value: expr $(,)?) => { ... }; (@reverse_for_output_mask [], [$($pin_rev: ident),* $(,)?], $value: expr) => { ... }; (@reverse_for_output_mask [$first_pin: ident, $($pin: ident),* $(,)?], [$($pin_rev: ident),* $(,)?], $value: expr) => { ... }; (@output_mask $position: expr, [$last_pin: ident, $($pin_rev: ident),* $(,)?], $value: expr) => { ... }; (@output_mask $position: expr, [], $value: expr) => { ... }; }
Expand description
Convenience setter and getter macros to set multiple pins in the same register at once.
Example: To set b0
, b1
and b7
to 0b110
, use set_pins!(b0, b1, b7, 0b110);
.