pub struct Usbd { /* private fields */ }
Expand description
Universal serial bus device 0
Implementations§
Source§impl Usbd
impl Usbd
pub const unsafe fn from_ptr(ptr: *mut ()) -> Self
pub const fn as_ptr(&self) -> *mut ()
Sourcepub 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
Sourcepub 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
Sourcepub 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
Sourcepub 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
Sourcepub 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
Sourcepub const fn tasks_ep0status(self) -> Reg<u32, W>
pub const fn tasks_ep0status(self) -> Reg<u32, W>
Allows status stage on control endpoint 0
Sourcepub 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
Sourcepub 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
Sourcepub 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)
Sourcepub 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]
Sourcepub const fn subscribe_startisoin(self) -> Reg<Subscribe, RW>
pub const fn subscribe_startisoin(self) -> Reg<Subscribe, RW>
Subscribe configuration for task STARTISOIN
Sourcepub 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]
Sourcepub const fn subscribe_startisoout(self) -> Reg<Subscribe, RW>
pub const fn subscribe_startisoout(self) -> Reg<Subscribe, RW>
Subscribe configuration for task STARTISOOUT
Sourcepub const fn subscribe_ep0rcvout(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0rcvout(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0RCVOUT
Sourcepub const fn subscribe_ep0status(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0status(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0STATUS
Sourcepub const fn subscribe_ep0stall(self) -> Reg<Subscribe, RW>
pub const fn subscribe_ep0stall(self) -> Reg<Subscribe, RW>
Subscribe configuration for task EP0STALL
Sourcepub const fn subscribe_dpdmdrive(self) -> Reg<Subscribe, RW>
pub const fn subscribe_dpdmdrive(self) -> Reg<Subscribe, RW>
Subscribe configuration for task DPDMDRIVE
Sourcepub const fn subscribe_dpdmnodrive(self) -> Reg<Subscribe, RW>
pub const fn subscribe_dpdmnodrive(self) -> Reg<Subscribe, RW>
Subscribe configuration for task DPDMNODRIVE
Sourcepub 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
Sourcepub 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
Sourcepub 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.
Sourcepub 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
Sourcepub 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.
Sourcepub 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.
Sourcepub 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.
Sourcepub 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
Sourcepub 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.
Sourcepub 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
Sourcepub 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
Sourcepub const fn publish_usbreset(self) -> Reg<Publish, RW>
pub const fn publish_usbreset(self) -> Reg<Publish, RW>
Publish configuration for event USBRESET
Sourcepub const fn publish_started(self) -> Reg<Publish, RW>
pub const fn publish_started(self) -> Reg<Publish, RW>
Publish configuration for event STARTED
Sourcepub 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]
Sourcepub const fn publish_ep0datadone(self) -> Reg<Publish, RW>
pub const fn publish_ep0datadone(self) -> Reg<Publish, RW>
Publish configuration for event EP0DATADONE
Sourcepub const fn publish_endisoin(self) -> Reg<Publish, RW>
pub const fn publish_endisoin(self) -> Reg<Publish, RW>
Publish configuration for event ENDISOIN
Sourcepub 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]
Sourcepub const fn publish_endisoout(self) -> Reg<Publish, RW>
pub const fn publish_endisoout(self) -> Reg<Publish, RW>
Publish configuration for event ENDISOOUT
Sourcepub const fn publish_sof(self) -> Reg<Publish, RW>
pub const fn publish_sof(self) -> Reg<Publish, RW>
Publish configuration for event SOF
Sourcepub const fn publish_usbevent(self) -> Reg<Publish, RW>
pub const fn publish_usbevent(self) -> Reg<Publish, RW>
Publish configuration for event USBEVENT
Sourcepub const fn publish_ep0setup(self) -> Reg<Publish, RW>
pub const fn publish_ep0setup(self) -> Reg<Publish, RW>
Publish configuration for event EP0SETUP
Sourcepub const fn publish_epdata(self) -> Reg<Publish, RW>
pub const fn publish_epdata(self) -> Reg<Publish, RW>
Publish configuration for event EPDATA
Sourcepub const fn eventcause(self) -> Reg<Eventcause, RW>
pub const fn eventcause(self) -> Reg<Eventcause, RW>
Details on what caused the USBEVENT event
Sourcepub 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
Sourcepub 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)
Sourcepub const fn bmrequesttype(self) -> Reg<Bmrequesttype, R>
pub const fn bmrequesttype(self) -> Reg<Bmrequesttype, R>
SETUP data, byte 0, bmRequestType
Sourcepub 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).
Sourcepub 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
Sourcepub const fn lowpower(self) -> Reg<Lowpower, RW>
pub const fn lowpower(self) -> Reg<Lowpower, RW>
Controls USBD peripheral low power mode during USB suspend
Sourcepub 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
Trait Implementations§
impl Copy for Usbd
impl Eq for Usbd
impl Send for Usbd
impl StructuralPartialEq for Usbd
impl Sync for Usbd
Auto Trait Implementations§
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
)