[][src]Struct nrf5340_app_pac::usbd_ns::RegisterBlock

#[repr(C)]
pub struct RegisterBlock {
    pub tasks_startepin: [TASKS_STARTEPIN; 8],
    pub tasks_startisoin: TASKS_STARTISOIN,
    pub tasks_startepout: [TASKS_STARTEPOUT; 8],
    pub tasks_startisoout: TASKS_STARTISOOUT,
    pub tasks_ep0rcvout: TASKS_EP0RCVOUT,
    pub tasks_ep0status: TASKS_EP0STATUS,
    pub tasks_ep0stall: TASKS_EP0STALL,
    pub tasks_dpdmdrive: TASKS_DPDMDRIVE,
    pub tasks_dpdmnodrive: TASKS_DPDMNODRIVE,
    pub subscribe_startepin: [SUBSCRIBE_STARTEPIN; 8],
    pub subscribe_startisoin: SUBSCRIBE_STARTISOIN,
    pub subscribe_startepout: [SUBSCRIBE_STARTEPOUT; 8],
    pub subscribe_startisoout: SUBSCRIBE_STARTISOOUT,
    pub subscribe_ep0rcvout: SUBSCRIBE_EP0RCVOUT,
    pub subscribe_ep0status: SUBSCRIBE_EP0STATUS,
    pub subscribe_ep0stall: SUBSCRIBE_EP0STALL,
    pub subscribe_dpdmdrive: SUBSCRIBE_DPDMDRIVE,
    pub subscribe_dpdmnodrive: SUBSCRIBE_DPDMNODRIVE,
    pub events_usbreset: EVENTS_USBRESET,
    pub events_started: EVENTS_STARTED,
    pub events_endepin: [EVENTS_ENDEPIN; 8],
    pub events_ep0datadone: EVENTS_EP0DATADONE,
    pub events_endisoin: EVENTS_ENDISOIN,
    pub events_endepout: [EVENTS_ENDEPOUT; 8],
    pub events_endisoout: EVENTS_ENDISOOUT,
    pub events_sof: EVENTS_SOF,
    pub events_usbevent: EVENTS_USBEVENT,
    pub events_ep0setup: EVENTS_EP0SETUP,
    pub events_epdata: EVENTS_EPDATA,
    pub publish_usbreset: PUBLISH_USBRESET,
    pub publish_started: PUBLISH_STARTED,
    pub publish_endepin: [PUBLISH_ENDEPIN; 8],
    pub publish_ep0datadone: PUBLISH_EP0DATADONE,
    pub publish_endisoin: PUBLISH_ENDISOIN,
    pub publish_endepout: [PUBLISH_ENDEPOUT; 8],
    pub publish_endisoout: PUBLISH_ENDISOOUT,
    pub publish_sof: PUBLISH_SOF,
    pub publish_usbevent: PUBLISH_USBEVENT,
    pub publish_ep0setup: PUBLISH_EP0SETUP,
    pub publish_epdata: PUBLISH_EPDATA,
    pub shorts: SHORTS,
    pub inten: INTEN,
    pub intenset: INTENSET,
    pub intenclr: INTENCLR,
    pub eventcause: EVENTCAUSE,
    pub halted: HALTED,
    pub epstatus: EPSTATUS,
    pub epdatastatus: EPDATASTATUS,
    pub usbaddr: USBADDR,
    pub bmrequesttype: BMREQUESTTYPE,
    pub brequest: BREQUEST,
    pub wvaluel: WVALUEL,
    pub wvalueh: WVALUEH,
    pub windexl: WINDEXL,
    pub windexh: WINDEXH,
    pub wlengthl: WLENGTHL,
    pub wlengthh: WLENGTHH,
    pub size: SIZE,
    pub enable: ENABLE,
    pub usbpullup: USBPULLUP,
    pub dpdmvalue: DPDMVALUE,
    pub dtoggle: DTOGGLE,
    pub epinen: EPINEN,
    pub epouten: EPOUTEN,
    pub epstall: EPSTALL,
    pub isosplit: ISOSPLIT,
    pub framecntr: FRAMECNTR,
    pub lowpower: LOWPOWER,
    pub isoinconfig: ISOINCONFIG,
    pub epin0: EPIN,
    pub epin1: EPIN,
    pub epin2: EPIN,
    pub epin3: EPIN,
    pub epin4: EPIN,
    pub epin5: EPIN,
    pub epin6: EPIN,
    pub epin7: EPIN,
    pub isoin: ISOIN,
    pub epout0: EPOUT,
    pub epout1: EPOUT,
    pub epout2: EPOUT,
    pub epout3: EPOUT,
    pub epout4: EPOUT,
    pub epout5: EPOUT,
    pub epout6: EPOUT,
    pub epout7: EPOUT,
    pub isoout: ISOOUT,
    // some fields omitted
}

Register block

Fields

tasks_startepin: [TASKS_STARTEPIN; 8]

0x04 - Description collection: Captures the EPIN[n].PTR and EPIN[n].MAXCNT registers values, and enables endpoint IN n to respond to traffic from host

tasks_startisoin: TASKS_STARTISOIN

0x24 - Captures the ISOIN.PTR and ISOIN.MAXCNT registers values, and enables sending data on ISO endpoint

tasks_startepout: [TASKS_STARTEPOUT; 8]

0x28 - Description collection: Captures the EPOUT[n].PTR and EPOUT[n].MAXCNT registers values, and enables endpoint n to respond to traffic from host

tasks_startisoout: TASKS_STARTISOOUT

0x48 - Captures the ISOOUT.PTR and ISOOUT.MAXCNT registers values, and enables receiving of data on ISO endpoint

tasks_ep0rcvout: TASKS_EP0RCVOUT

0x4c - Allows OUT data stage on control endpoint 0

tasks_ep0status: TASKS_EP0STATUS

0x50 - Allows status stage on control endpoint 0

tasks_ep0stall: TASKS_EP0STALL

0x54 - Stalls data and status stage on control endpoint 0

tasks_dpdmdrive: TASKS_DPDMDRIVE

0x58 - Forces D+ and D- lines into the state defined in the DPDMVALUE register

tasks_dpdmnodrive: TASKS_DPDMNODRIVE

0x5c - Stops forcing D+ and D- lines into any state (USB engine takes control)

subscribe_startepin: [SUBSCRIBE_STARTEPIN; 8]

0x84 - Description collection: Subscribe configuration for task STARTEPIN[n]

subscribe_startisoin: SUBSCRIBE_STARTISOIN

0xa4 - Subscribe configuration for task STARTISOIN

subscribe_startepout: [SUBSCRIBE_STARTEPOUT; 8]

0xa8 - Description collection: Subscribe configuration for task STARTEPOUT[n]

subscribe_startisoout: SUBSCRIBE_STARTISOOUT

0xc8 - Subscribe configuration for task STARTISOOUT

subscribe_ep0rcvout: SUBSCRIBE_EP0RCVOUT

0xcc - Subscribe configuration for task EP0RCVOUT

subscribe_ep0status: SUBSCRIBE_EP0STATUS

0xd0 - Subscribe configuration for task EP0STATUS

subscribe_ep0stall: SUBSCRIBE_EP0STALL

0xd4 - Subscribe configuration for task EP0STALL

subscribe_dpdmdrive: SUBSCRIBE_DPDMDRIVE

0xd8 - Subscribe configuration for task DPDMDRIVE

subscribe_dpdmnodrive: SUBSCRIBE_DPDMNODRIVE

0xdc - Subscribe configuration for task DPDMNODRIVE

events_usbreset: EVENTS_USBRESET

0x100 - Signals that a USB reset condition has been detected on USB lines

events_started: EVENTS_STARTED

0x104 - 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

events_endepin: [EVENTS_ENDEPIN; 8]

0x108 - Description collection: The whole EPIN[n] buffer has been consumed. The buffer can be accessed safely by software.

events_ep0datadone: EVENTS_EP0DATADONE

0x128 - An acknowledged data transfer has taken place on the control endpoint

events_endisoin: EVENTS_ENDISOIN

0x12c - The whole ISOIN buffer has been consumed. The buffer can be accessed safely by software.

events_endepout: [EVENTS_ENDEPOUT; 8]

0x130 - Description collection: The whole EPOUT[n] buffer has been consumed. The buffer can be accessed safely by software.

events_endisoout: EVENTS_ENDISOOUT

0x150 - The whole ISOOUT buffer has been consumed. The buffer can be accessed safely by software.

events_sof: EVENTS_SOF

0x154 - Signals that a SOF (start of frame) condition has been detected on USB lines

events_usbevent: EVENTS_USBEVENT

0x158 - An event or an error not covered by specific events has occurred. Check EVENTCAUSE register to find the cause.

events_ep0setup: EVENTS_EP0SETUP

0x15c - A valid SETUP token has been received (and acknowledged) on the control endpoint

events_epdata: EVENTS_EPDATA

0x160 - A data transfer has occurred on a data endpoint, indicated by the EPDATASTATUS register

publish_usbreset: PUBLISH_USBRESET

0x180 - Publish configuration for event USBRESET

publish_started: PUBLISH_STARTED

0x184 - Publish configuration for event STARTED

publish_endepin: [PUBLISH_ENDEPIN; 8]

0x188 - Description collection: Publish configuration for event ENDEPIN[n]

publish_ep0datadone: PUBLISH_EP0DATADONE

0x1a8 - Publish configuration for event EP0DATADONE

publish_endisoin: PUBLISH_ENDISOIN

0x1ac - Publish configuration for event ENDISOIN

publish_endepout: [PUBLISH_ENDEPOUT; 8]

0x1b0 - Description collection: Publish configuration for event ENDEPOUT[n]

publish_endisoout: PUBLISH_ENDISOOUT

0x1d0 - Publish configuration for event ENDISOOUT

publish_sof: PUBLISH_SOF

0x1d4 - Publish configuration for event SOF

publish_usbevent: PUBLISH_USBEVENT

0x1d8 - Publish configuration for event USBEVENT

publish_ep0setup: PUBLISH_EP0SETUP

0x1dc - Publish configuration for event EP0SETUP

publish_epdata: PUBLISH_EPDATA

0x1e0 - Publish configuration for event EPDATA

shorts: SHORTS

0x200 - Shortcuts between local events and tasks

inten: INTEN

0x300 - Enable or disable interrupt

intenset: INTENSET

0x304 - Enable interrupt

intenclr: INTENCLR

0x308 - Disable interrupt

eventcause: EVENTCAUSE

0x400 - Details on what caused the USBEVENT event

halted: HALTED

0x420 - Unspecified

epstatus: EPSTATUS

0x468 - Provides information on which endpoint's EasyDMA registers have been captured

epdatastatus: EPDATASTATUS

0x46c - Provides information on which endpoint(s) an acknowledged data transfer has occurred (EPDATA event)

usbaddr: USBADDR

0x470 - Device USB address

bmrequesttype: BMREQUESTTYPE

0x480 - SETUP data, byte 0, bmRequestType

brequest: BREQUEST

0x484 - SETUP data, byte 1, bRequest

wvaluel: WVALUEL

0x488 - SETUP data, byte 2, LSB of wValue

wvalueh: WVALUEH

0x48c - SETUP data, byte 3, MSB of wValue

windexl: WINDEXL

0x490 - SETUP data, byte 4, LSB of wIndex

windexh: WINDEXH

0x494 - SETUP data, byte 5, MSB of wIndex

wlengthl: WLENGTHL

0x498 - SETUP data, byte 6, LSB of wLength

wlengthh: WLENGTHH

0x49c - SETUP data, byte 7, MSB of wLength

size: SIZE

0x4a0 - Unspecified

enable: ENABLE

0x500 - Enable USB

usbpullup: USBPULLUP

0x504 - Control of the USB pull-up

dpdmvalue: DPDMVALUE

0x508 - 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).

dtoggle: DTOGGLE

0x50c - Data toggle control and status

epinen: EPINEN

0x510 - Endpoint IN enable

epouten: EPOUTEN

0x514 - Endpoint OUT enable

epstall: EPSTALL

0x518 - STALL endpoints

isosplit: ISOSPLIT

0x51c - Controls the split of ISO buffers

framecntr: FRAMECNTR

0x520 - Returns the current value of the start of frame counter

lowpower: LOWPOWER

0x52c - Controls USBD peripheral low power mode during USB suspend

isoinconfig: ISOINCONFIG

0x530 - Controls the response of the ISO IN endpoint to an IN token when no data is ready to be sent

epin0: EPIN

0x600 - Unspecified

epin1: EPIN

0x614 - Unspecified

epin2: EPIN

0x628 - Unspecified

epin3: EPIN

0x63c - Unspecified

epin4: EPIN

0x650 - Unspecified

epin5: EPIN

0x664 - Unspecified

epin6: EPIN

0x678 - Unspecified

epin7: EPIN

0x68c - Unspecified

isoin: ISOIN

0x6a0 - Unspecified

epout0: EPOUT

0x700 - Unspecified

epout1: EPOUT

0x714 - Unspecified

epout2: EPOUT

0x728 - Unspecified

epout3: EPOUT

0x73c - Unspecified

epout4: EPOUT

0x750 - Unspecified

epout5: EPOUT

0x764 - Unspecified

epout6: EPOUT

0x778 - Unspecified

epout7: EPOUT

0x78c - Unspecified

isoout: ISOOUT

0x7a0 - Unspecified

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = !

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self