Struct Usbd
pub struct Usbd { /* private fields */ }
Expand description
Universal serial bus device 0
Implementations§
§impl Usbd
impl Usbd
pub const unsafe fn from_ptr(ptr: *mut ()) -> Usbd
pub const fn as_ptr(&self) -> *mut ()
pub const fn tasks_startepin(self, n: usize) -> Reg<u32, W>
pub const fn tasks_startepin(self, n: usize) -> Reg<u32, W>
Description collection: Captures the EPIN[n].PTR and EPIN[n].MAXCNT registers values, and enables endpoint IN n to respond to traffic from host
pub const fn tasks_startisoin(self) -> Reg<u32, W>
pub const fn tasks_startisoin(self) -> Reg<u32, W>
Captures the ISOIN.PTR and ISOIN.MAXCNT registers values, and enables sending data on ISO endpoint
pub const fn tasks_startepout(self, n: usize) -> Reg<u32, W>
pub const fn tasks_startepout(self, n: usize) -> Reg<u32, W>
Description collection: Captures the EPOUT[n].PTR and EPOUT[n].MAXCNT registers values, and enables endpoint n to respond to traffic from host
pub const fn tasks_startisoout(self) -> Reg<u32, W>
pub const fn tasks_startisoout(self) -> Reg<u32, W>
Captures the ISOOUT.PTR and ISOOUT.MAXCNT registers values, and enables receiving of data on ISO endpoint
pub const fn tasks_ep0rcvout(self) -> Reg<u32, W>
pub const fn tasks_ep0rcvout(self) -> Reg<u32, W>
Allows OUT data stage on control endpoint 0
pub const fn tasks_ep0status(self) -> Reg<u32, W>
pub const fn tasks_ep0status(self) -> Reg<u32, W>
Allows status stage on control endpoint 0
pub const fn tasks_ep0stall(self) -> Reg<u32, W>
pub const fn tasks_ep0stall(self) -> Reg<u32, W>
Stalls data and status stage on control endpoint 0
pub const fn tasks_dpdmdrive(self) -> Reg<u32, W>
pub const fn tasks_dpdmdrive(self) -> Reg<u32, W>
Forces D+ and D- lines into the state defined in the DPDMVALUE register
pub const fn tasks_dpdmnodrive(self) -> Reg<u32, W>
pub const fn tasks_dpdmnodrive(self) -> Reg<u32, W>
Stops forcing D+ and D- lines into any state (USB engine takes control)
pub const fn subscribe_startepin(self, n: usize) -> Reg<Subscribe, RW>
pub const fn subscribe_startepin(self, n: usize) -> Reg<Subscribe, RW>
Description collection: Subscribe configuration for task STARTEPIN[n]
pub const fn subscribe_startisoin(self) -> Reg<Subscribe, RW>
pub const fn subscribe_startisoin(self) -> Reg<Subscribe, RW>
Subscribe configuration for task STARTISOIN
pub const fn subscribe_startepout(self, n: usize) -> Reg<Subscribe, RW>
pub const fn subscribe_startepout(self, n: usize) -> Reg<Subscribe, RW>
Description collection: Subscribe configuration for task STARTEPOUT[n]
pub const fn subscribe_startisoout(self) -> Reg<Subscribe, RW>
pub const fn subscribe_startisoout(self) -> Reg<Subscribe, RW>
Subscribe configuration for task STARTISOOUT
pub const fn subscribe_ep0rcvout(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0rcvout(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0RCVOUT
pub const fn subscribe_ep0status(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0status(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0STATUS
pub const fn subscribe_ep0stall(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0stall(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0STALL
pub const fn subscribe_dpdmdrive(self) -> Reg<Subscribe, RW>
pub const fn subscribe_dpdmdrive(self) -> Reg<Subscribe, RW>
Subscribe configuration for task DPDMDRIVE
pub const fn subscribe_dpdmnodrive(self) -> Reg<Subscribe, RW>
pub const fn subscribe_dpdmnodrive(self) -> Reg<Subscribe, RW>
Subscribe configuration for task DPDMNODRIVE
pub const fn events_usbreset(self) -> Reg<u32, RW>
pub const fn events_usbreset(self) -> Reg<u32, RW>
Signals that a USB reset condition has been detected on USB lines
pub const fn events_started(self) -> Reg<u32, RW>
pub const fn events_started(self) -> Reg<u32, RW>
Confirms that the EPIN[n].PTR and EPIN[n].MAXCNT, or EPOUT[n].PTR and EPOUT[n].MAXCNT registers have been captured on all endpoints reported in the EPSTATUS register
pub const fn events_endepin(self, n: usize) -> Reg<u32, RW>
pub const fn events_endepin(self, n: usize) -> Reg<u32, RW>
Description collection: The whole EPIN[n] buffer has been consumed. The buffer can be accessed safely by software.
pub const fn events_ep0datadone(self) -> Reg<u32, RW>
pub const fn events_ep0datadone(self) -> Reg<u32, RW>
An acknowledged data transfer has taken place on the control endpoint
pub const fn events_endisoin(self) -> Reg<u32, RW>
pub const fn events_endisoin(self) -> Reg<u32, RW>
The whole ISOIN buffer has been consumed. The buffer can be accessed safely by software.
pub const fn events_endepout(self, n: usize) -> Reg<u32, RW>
pub const fn events_endepout(self, n: usize) -> Reg<u32, RW>
Description collection: The whole EPOUT[n] buffer has been consumed. The buffer can be accessed safely by software.
pub const fn events_endisoout(self) -> Reg<u32, RW>
pub const fn events_endisoout(self) -> Reg<u32, RW>
The whole ISOOUT buffer has been consumed. The buffer can be accessed safely by software.
pub const fn events_sof(self) -> Reg<u32, RW>
pub const fn events_sof(self) -> Reg<u32, RW>
Signals that a SOF (start of frame) condition has been detected on USB lines
pub const fn events_usbevent(self) -> Reg<u32, RW>
pub const fn events_usbevent(self) -> Reg<u32, RW>
An event or an error not covered by specific events has occurred. Check EVENTCAUSE register to find the cause.
pub const fn events_ep0setup(self) -> Reg<u32, RW>
pub const fn events_ep0setup(self) -> Reg<u32, RW>
A valid SETUP token has been received (and acknowledged) on the control endpoint
pub const fn events_epdata(self) -> Reg<u32, RW>
pub const fn events_epdata(self) -> Reg<u32, RW>
A data transfer has occurred on a data endpoint, indicated by the EPDATASTATUS register
pub const fn publish_usbreset(self) -> Reg<Publish, RW>
pub const fn publish_usbreset(self) -> Reg<Publish, RW>
Publish configuration for event USBRESET
pub const fn publish_started(self) -> Reg<Publish, RW>
pub const fn publish_started(self) -> Reg<Publish, RW>
Publish configuration for event STARTED
pub const fn publish_endepin(self, n: usize) -> Reg<Publish, RW>
pub const fn publish_endepin(self, n: usize) -> Reg<Publish, RW>
Description collection: Publish configuration for event ENDEPIN[n]
pub const fn publish_ep0datadone(self) -> Reg<Publish, RW>
pub const fn publish_ep0datadone(self) -> Reg<Publish, RW>
Publish configuration for event EP0DATADONE
pub const fn publish_endisoin(self) -> Reg<Publish, RW>
pub const fn publish_endisoin(self) -> Reg<Publish, RW>
Publish configuration for event ENDISOIN
pub const fn publish_endepout(self, n: usize) -> Reg<Publish, RW>
pub const fn publish_endepout(self, n: usize) -> Reg<Publish, RW>
Description collection: Publish configuration for event ENDEPOUT[n]
pub const fn publish_endisoout(self) -> Reg<Publish, RW>
pub const fn publish_endisoout(self) -> Reg<Publish, RW>
Publish configuration for event ENDISOOUT
pub const fn publish_sof(self) -> Reg<Publish, RW>
pub const fn publish_sof(self) -> Reg<Publish, RW>
Publish configuration for event SOF
pub const fn publish_usbevent(self) -> Reg<Publish, RW>
pub const fn publish_usbevent(self) -> Reg<Publish, RW>
Publish configuration for event USBEVENT
pub const fn publish_ep0setup(self) -> Reg<Publish, RW>
pub const fn publish_ep0setup(self) -> Reg<Publish, RW>
Publish configuration for event EP0SETUP
pub const fn publish_epdata(self) -> Reg<Publish, RW>
pub const fn publish_epdata(self) -> Reg<Publish, RW>
Publish configuration for event EPDATA
pub const fn eventcause(self) -> Reg<Eventcause, RW>
pub const fn eventcause(self) -> Reg<Eventcause, RW>
Details on what caused the USBEVENT event
pub const fn epstatus(self) -> Reg<Epstatus, RW>
pub const fn epstatus(self) -> Reg<Epstatus, RW>
Provides information on which endpoint’s EasyDMA registers have been captured
pub const fn epdatastatus(self) -> Reg<Epdatastatus, RW>
pub const fn epdatastatus(self) -> Reg<Epdatastatus, RW>
Provides information on which endpoint(s) an acknowledged data transfer has occurred (EPDATA event)
pub const fn bmrequesttype(self) -> Reg<Bmrequesttype, R>
pub const fn bmrequesttype(self) -> Reg<Bmrequesttype, R>
SETUP data, byte 0, bmRequestType
pub const fn dpdmvalue(self) -> Reg<Dpdmvalue, RW>
pub const fn dpdmvalue(self) -> Reg<Dpdmvalue, RW>
State D+ and D- lines will be forced into by the DPDMDRIVE task. The DPDMNODRIVE task reverts the control of the lines to MAC IP (no forcing).
pub const fn framecntr(self) -> Reg<Framecntr, R>
pub const fn framecntr(self) -> Reg<Framecntr, R>
Returns the current value of the start of frame counter
pub const fn lowpower(self) -> Reg<Lowpower, RW>
pub const fn lowpower(self) -> Reg<Lowpower, RW>
Controls USBD peripheral low power mode during USB suspend
pub const fn isoinconfig(self) -> Reg<Isoinconfig, RW>
pub const fn isoinconfig(self) -> Reg<Isoinconfig, RW>
Controls the response of the ISO IN endpoint to an IN token when no data is ready to be sent