Embassy
rp-pac

Crates

git

Versions

default

Flavors

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 3

Tuple Fields§

§0: u32

Implementations§

source§

impl SmShiftctrl

source

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.

source

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.

source

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.

source

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.

source

pub const fn in_shiftdir(&self) -> bool

1 = shift input shift register to right (data enters from left). 0 = to left.

source

pub fn set_in_shiftdir(&mut self, val: bool)

1 = shift input shift register to right (data enters from left). 0 = to left.

source

pub const fn out_shiftdir(&self) -> bool

1 = shift out of output shift register to right. 0 = to left.

source

pub fn set_out_shiftdir(&mut self, val: bool)

1 = shift out of output shift register to right. 0 = to left.

source

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.

source

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.

source

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.

source

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.

source

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.

source

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.

source

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.

source

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

source§

fn clone(&self) -> SmShiftctrl

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Default for SmShiftctrl

source§

fn default() -> SmShiftctrl

Returns the “default value” for a type. Read more
source§

impl PartialEq<SmShiftctrl> for SmShiftctrl

source§

fn eq(&self, other: &SmShiftctrl) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for SmShiftctrl

source§

impl Eq for SmShiftctrl

source§

impl StructuralEq for SmShiftctrl

source§

impl StructuralPartialEq for SmShiftctrl

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.