Type Alias rp2040_pac::usbctrl_regs::sie_status::W

source ·
pub type W = W<SIE_STATUS_SPEC>;
Expand description

Register SIE_STATUS writer

Aliased Type§

struct W { /* private fields */ }

Implementations§

source§

impl W

source

pub fn suspended(&mut self) -> SUSPENDED_W<'_, SIE_STATUS_SPEC>

Bit 4 - Bus in suspended state. Valid for device and host. Host and device will go into suspend if neither Keep Alive / SOF frames are enabled.

source

pub fn speed(&mut self) -> SPEED_W<'_, SIE_STATUS_SPEC>

Bits 8:9 - Host: device speed. Disconnected = 00, LS = 01, FS = 10

source

pub fn resume(&mut self) -> RESUME_W<'_, SIE_STATUS_SPEC>

Bit 11 - Host: Device has initiated a remote resume. Device: host has initiated a resume.

source

pub fn connected(&mut self) -> CONNECTED_W<'_, SIE_STATUS_SPEC>

Bit 16 - Device: connected

source

pub fn setup_rec(&mut self) -> SETUP_REC_W<'_, SIE_STATUS_SPEC>

Bit 17 - Device: Setup packet received

source

pub fn trans_complete(&mut self) -> TRANS_COMPLETE_W<'_, SIE_STATUS_SPEC>

Bit 18 - Transaction complete.

Raised by device if:

  • An IN or OUT packet is sent with the LAST_BUFF bit set in the buffer control register

Raised by host if:

  • A setup packet is sent when no data in or data out transaction follows * An IN packet is received and the LAST_BUFF bit is set in the buffer control register * An IN packet is received with zero length * An OUT packet is sent and the LAST_BUFF bit is set
source

pub fn bus_reset(&mut self) -> BUS_RESET_W<'_, SIE_STATUS_SPEC>

Bit 19 - Device: bus reset received

source

pub fn crc_error(&mut self) -> CRC_ERROR_W<'_, SIE_STATUS_SPEC>

Bit 24 - CRC Error. Raised by the Serial RX engine.

source

pub fn bit_stuff_error(&mut self) -> BIT_STUFF_ERROR_W<'_, SIE_STATUS_SPEC>

Bit 25 - Bit Stuff Error. Raised by the Serial RX engine.

source

pub fn rx_overflow(&mut self) -> RX_OVERFLOW_W<'_, SIE_STATUS_SPEC>

Bit 26 - RX overflow is raised by the Serial RX engine if the incoming data is too fast.

source

pub fn rx_timeout(&mut self) -> RX_TIMEOUT_W<'_, SIE_STATUS_SPEC>

Bit 27 - RX timeout is raised by both the host and device if an ACK is not received in the maximum time specified by the USB spec.

source

pub fn nak_rec(&mut self) -> NAK_REC_W<'_, SIE_STATUS_SPEC>

Bit 28 - Host: NAK received

source

pub fn stall_rec(&mut self) -> STALL_REC_W<'_, SIE_STATUS_SPEC>

Bit 29 - Host: STALL received

source

pub fn ack_rec(&mut self) -> ACK_REC_W<'_, SIE_STATUS_SPEC>

Bit 30 - ACK received. Raised by both host and device.

source

pub fn data_seq_error(&mut self) -> DATA_SEQ_ERROR_W<'_, SIE_STATUS_SPEC>

Bit 31 - Data Sequence Error.

The device can raise a sequence error in the following conditions:

  • A SETUP packet is received followed by a DATA1 packet (data phase should always be DATA0) * An OUT packet is received from the host but doesn’t match the data pid in the buffer control register read from DPSRAM

The host can raise a data sequence error in the following conditions:

  • An IN packet from the device has the wrong data PID
source

pub unsafe fn bits(&mut self, bits: u32) -> &mut Self

Writes raw bits to the register.

§Safety

Passing incorrect value can cause undefined behaviour. See reference manual