Module nrf52840_pac::usbd
source · Expand description
Universal serial bus device
Re-exports§
pub use halted::HALTED;
pub use size::SIZE;
pub use epin::EPIN;
pub use isoin::ISOIN;
pub use epout::EPOUT;
pub use isoout::ISOOUT;
Modules§
- SETUP data, byte 0, bmRequestType
- SETUP data, byte 1, bRequest
- 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).
- Data toggle control and status
- Enable USB
- Provides information on which endpoint(s) an acknowledged data transfer has occurred (EPDATA event)
- Cluster Unspecified
- Endpoint IN enable
- Cluster Unspecified
- Endpoint OUT enable
- STALL endpoints
- Provides information on which endpoint’s EasyDMA registers have been captured
- Details on what caused the USBEVENT event
- Description collection[n]: The whole EPIN[n] buffer has been consumed. The RAM buffer can be accessed safely by software.
- Description collection[n]: The whole EPOUT[n] buffer has been consumed. The RAM buffer can be accessed safely by software.
- The whole ISOIN buffer has been consumed. The RAM buffer can be accessed safely by software.
- The whole ISOOUT buffer has been consumed. The RAM buffer can be accessed safely by software.
- An acknowledged data transfer has taken place on the control endpoint
- A valid SETUP token has been received (and acknowledged) on the control endpoint
- A data transfer has occurred on a data endpoint, indicated by the EPDATASTATUS register
- Signals that a SOF (start of frame) condition has been detected on USB lines
- 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
- An event or an error not covered by specific events has occurred. Check EVENTCAUSE register to find the cause.
- Signals that a USB reset condition has been detected on USB lines
- Returns the current value of the start of frame counter
- Cluster Unspecified
- Enable or disable interrupt
- Disable interrupt
- Enable interrupt
- Cluster Unspecified
- Controls the response of the ISO IN endpoint to an IN token when no data is ready to be sent
- Cluster Unspecified
- Controls the split of ISO buffers
- Controls USBD peripheral low power mode during USB suspend
- Shortcut register
- Cluster Unspecified
- Forces D+ and D- lines into the state defined in the DPDMVALUE register
- Stops forcing D+ and D- lines into any state (USB engine takes control)
- Allows OUT data stage on control endpoint 0
- Stalls data and status stage on control endpoint 0
- Allows status stage on control endpoint 0
- Description collection[n]: Captures the EPIN[n].PTR and EPIN[n].MAXCNT registers values, and enables endpoint IN n to respond to traffic from host
- Description collection[n]: Captures the EPOUT[n].PTR and EPOUT[n].MAXCNT registers values, and enables endpoint n to respond to traffic from host
- Captures the ISOIN.PTR and ISOIN.MAXCNT registers values, and enables sending data on ISO endpoint
- Captures the ISOOUT.PTR and ISOOUT.MAXCNT registers values, and enables receiving of data on ISO endpoint
- Device USB address
- Control of the USB pull-up
- SETUP data, byte 5, MSB of wIndex
- SETUP data, byte 4, LSB of wIndex
- SETUP data, byte 7, MSB of wLength
- SETUP data, byte 6, LSB of wLength
- SETUP data, byte 3, MSB of wValue
- SETUP data, byte 2, LSB of wValue
Structs§
- Register block
Type Aliases§
- BMREQUESTTYPE (r) register accessor: an alias for
Reg<BMREQUESTTYPE_SPEC>
- BREQUEST (r) register accessor: an alias for
Reg<BREQUEST_SPEC>
- DPDMVALUE (rw) register accessor: an alias for
Reg<DPDMVALUE_SPEC>
- DTOGGLE (rw) register accessor: an alias for
Reg<DTOGGLE_SPEC>
- ENABLE (rw) register accessor: an alias for
Reg<ENABLE_SPEC>
- EPDATASTATUS (rw) register accessor: an alias for
Reg<EPDATASTATUS_SPEC>
- EPINEN (rw) register accessor: an alias for
Reg<EPINEN_SPEC>
- EPOUTEN (rw) register accessor: an alias for
Reg<EPOUTEN_SPEC>
- EPSTALL (w) register accessor: an alias for
Reg<EPSTALL_SPEC>
- EPSTATUS (rw) register accessor: an alias for
Reg<EPSTATUS_SPEC>
- EVENTCAUSE (rw) register accessor: an alias for
Reg<EVENTCAUSE_SPEC>
- EVENTS_ENDEPIN (rw) register accessor: an alias for
Reg<EVENTS_ENDEPIN_SPEC>
- EVENTS_ENDEPOUT (rw) register accessor: an alias for
Reg<EVENTS_ENDEPOUT_SPEC>
- EVENTS_ENDISOIN (rw) register accessor: an alias for
Reg<EVENTS_ENDISOIN_SPEC>
- EVENTS_ENDISOOUT (rw) register accessor: an alias for
Reg<EVENTS_ENDISOOUT_SPEC>
- EVENTS_EP0DATADONE (rw) register accessor: an alias for
Reg<EVENTS_EP0DATADONE_SPEC>
- EVENTS_EP0SETUP (rw) register accessor: an alias for
Reg<EVENTS_EP0SETUP_SPEC>
- EVENTS_EPDATA (rw) register accessor: an alias for
Reg<EVENTS_EPDATA_SPEC>
- EVENTS_SOF (rw) register accessor: an alias for
Reg<EVENTS_SOF_SPEC>
- EVENTS_STARTED (rw) register accessor: an alias for
Reg<EVENTS_STARTED_SPEC>
- EVENTS_USBEVENT (rw) register accessor: an alias for
Reg<EVENTS_USBEVENT_SPEC>
- EVENTS_USBRESET (rw) register accessor: an alias for
Reg<EVENTS_USBRESET_SPEC>
- FRAMECNTR (r) register accessor: an alias for
Reg<FRAMECNTR_SPEC>
- INTEN (rw) register accessor: an alias for
Reg<INTEN_SPEC>
- INTENCLR (rw) register accessor: an alias for
Reg<INTENCLR_SPEC>
- INTENSET (rw) register accessor: an alias for
Reg<INTENSET_SPEC>
- ISOINCONFIG (rw) register accessor: an alias for
Reg<ISOINCONFIG_SPEC>
- ISOSPLIT (rw) register accessor: an alias for
Reg<ISOSPLIT_SPEC>
- LOWPOWER (rw) register accessor: an alias for
Reg<LOWPOWER_SPEC>
- SHORTS (rw) register accessor: an alias for
Reg<SHORTS_SPEC>
- TASKS_DPDMDRIVE (w) register accessor: an alias for
Reg<TASKS_DPDMDRIVE_SPEC>
- TASKS_DPDMNODRIVE (w) register accessor: an alias for
Reg<TASKS_DPDMNODRIVE_SPEC>
- TASKS_EP0RCVOUT (w) register accessor: an alias for
Reg<TASKS_EP0RCVOUT_SPEC>
- TASKS_EP0STALL (w) register accessor: an alias for
Reg<TASKS_EP0STALL_SPEC>
- TASKS_EP0STATUS (w) register accessor: an alias for
Reg<TASKS_EP0STATUS_SPEC>
- TASKS_STARTEPIN (w) register accessor: an alias for
Reg<TASKS_STARTEPIN_SPEC>
- TASKS_STARTEPOUT (w) register accessor: an alias for
Reg<TASKS_STARTEPOUT_SPEC>
- TASKS_STARTISOIN (w) register accessor: an alias for
Reg<TASKS_STARTISOIN_SPEC>
- TASKS_STARTISOOUT (w) register accessor: an alias for
Reg<TASKS_STARTISOOUT_SPEC>
- USBADDR (r) register accessor: an alias for
Reg<USBADDR_SPEC>
- USBPULLUP (rw) register accessor: an alias for
Reg<USBPULLUP_SPEC>
- WINDEXH (r) register accessor: an alias for
Reg<WINDEXH_SPEC>
- WINDEXL (r) register accessor: an alias for
Reg<WINDEXL_SPEC>
- WLENGTHH (r) register accessor: an alias for
Reg<WLENGTHH_SPEC>
- WLENGTHL (r) register accessor: an alias for
Reg<WLENGTHL_SPEC>
- WVALUEH (r) register accessor: an alias for
Reg<WVALUEH_SPEC>
- WVALUEL (r) register accessor: an alias for
Reg<WVALUEL_SPEC>