pub struct Usbd { /* private fields */ }
Expand description
Universal serial bus device
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 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 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
)