Module nrf52840_hal::pac::usbd

source ·
Expand description

Universal serial bus device

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§

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>