Struct rp_pac::pio::regs::SmShiftctrl
source · #[repr(transparent)]pub struct SmShiftctrl(pub u32);
Expand description
Control behaviour of the input/output shift registers for state machine 0
Tuple Fields§
§0: u32
Implementations§
source§impl SmShiftctrl
impl SmShiftctrl
sourcepub const fn autopush(&self) -> bool
pub const fn autopush(&self) -> bool
Push automatically when the input shift register is filled, i.e. on an IN instruction which causes the input shift counter to reach or exceed PUSH_THRESH.
sourcepub fn set_autopush(&mut self, val: bool)
pub fn set_autopush(&mut self, val: bool)
Push automatically when the input shift register is filled, i.e. on an IN instruction which causes the input shift counter to reach or exceed PUSH_THRESH.
sourcepub const fn autopull(&self) -> bool
pub const fn autopull(&self) -> bool
Pull automatically when the output shift register is emptied, i.e. on or following an OUT instruction which causes the output shift counter to reach or exceed PULL_THRESH.
sourcepub fn set_autopull(&mut self, val: bool)
pub fn set_autopull(&mut self, val: bool)
Pull automatically when the output shift register is emptied, i.e. on or following an OUT instruction which causes the output shift counter to reach or exceed PULL_THRESH.
sourcepub const fn in_shiftdir(&self) -> bool
pub const fn in_shiftdir(&self) -> bool
1 = shift input shift register to right (data enters from left). 0 = to left.
sourcepub fn set_in_shiftdir(&mut self, val: bool)
pub fn set_in_shiftdir(&mut self, val: bool)
1 = shift input shift register to right (data enters from left). 0 = to left.
sourcepub const fn out_shiftdir(&self) -> bool
pub const fn out_shiftdir(&self) -> bool
1 = shift out of output shift register to right. 0 = to left.
sourcepub fn set_out_shiftdir(&mut self, val: bool)
pub fn set_out_shiftdir(&mut self, val: bool)
1 = shift out of output shift register to right. 0 = to left.
sourcepub const fn push_thresh(&self) -> u8
pub const fn push_thresh(&self) -> u8
Number of bits shifted into ISR before autopush, or conditional push (PUSH IFFULL), will take place. Write 0 for value of 32.
sourcepub fn set_push_thresh(&mut self, val: u8)
pub fn set_push_thresh(&mut self, val: u8)
Number of bits shifted into ISR before autopush, or conditional push (PUSH IFFULL), will take place. Write 0 for value of 32.
sourcepub const fn pull_thresh(&self) -> u8
pub const fn pull_thresh(&self) -> u8
Number of bits shifted out of OSR before autopull, or conditional pull (PULL IFEMPTY), will take place. Write 0 for value of 32.
sourcepub fn set_pull_thresh(&mut self, val: u8)
pub fn set_pull_thresh(&mut self, val: u8)
Number of bits shifted out of OSR before autopull, or conditional pull (PULL IFEMPTY), will take place. Write 0 for value of 32.
sourcepub const fn fjoin_tx(&self) -> bool
pub const fn fjoin_tx(&self) -> bool
When 1, TX FIFO steals the RX FIFO’s storage, and becomes twice as deep. RX FIFO is disabled as a result (always reads as both full and empty). FIFOs are flushed when this bit is changed.
sourcepub fn set_fjoin_tx(&mut self, val: bool)
pub fn set_fjoin_tx(&mut self, val: bool)
When 1, TX FIFO steals the RX FIFO’s storage, and becomes twice as deep. RX FIFO is disabled as a result (always reads as both full and empty). FIFOs are flushed when this bit is changed.
sourcepub const fn fjoin_rx(&self) -> bool
pub const fn fjoin_rx(&self) -> bool
When 1, RX FIFO steals the TX FIFO’s storage, and becomes twice as deep. TX FIFO is disabled as a result (always reads as both full and empty). FIFOs are flushed when this bit is changed.
sourcepub fn set_fjoin_rx(&mut self, val: bool)
pub fn set_fjoin_rx(&mut self, val: bool)
When 1, RX FIFO steals the TX FIFO’s storage, and becomes twice as deep. TX FIFO is disabled as a result (always reads as both full and empty). FIFOs are flushed when this bit is changed.
Trait Implementations§
source§impl Clone for SmShiftctrl
impl Clone for SmShiftctrl
source§fn clone(&self) -> SmShiftctrl
fn clone(&self) -> SmShiftctrl
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Default for SmShiftctrl
impl Default for SmShiftctrl
source§fn default() -> SmShiftctrl
fn default() -> SmShiftctrl
source§impl PartialEq for SmShiftctrl
impl PartialEq for SmShiftctrl
impl Copy for SmShiftctrl
impl Eq for SmShiftctrl
impl StructuralPartialEq for SmShiftctrl
Auto Trait Implementations§
impl Freeze for SmShiftctrl
impl RefUnwindSafe for SmShiftctrl
impl Send for SmShiftctrl
impl Sync for SmShiftctrl
impl Unpin for SmShiftctrl
impl UnwindSafe for SmShiftctrl
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)