#[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 more