#[repr(C)]
pub struct RegisterBlock {
Show 87 fields 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, /* private fields */
}
Expand description

Register block

Fields

tasks_startepin: [TASKS_STARTEPIN; 8]

0x04..0x24 - 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..0x48 - 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..0xa4 - Description collection: Subscribe configuration for task STARTEPIN[n]

subscribe_startisoin: SUBSCRIBE_STARTISOIN

0xa4 - Subscribe configuration for task STARTISOIN

subscribe_startepout: [SUBSCRIBE_STARTEPOUT; 8]

0xa8..0xc8 - 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..0x128 - 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..0x150 - 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..0x1a8 - 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..0x1d0 - 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..0x464 - 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..0x4c4 - 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..0x60c - Unspecified

epin1: EPIN

0x614..0x620 - Unspecified

epin2: EPIN

0x628..0x634 - Unspecified

epin3: EPIN

0x63c..0x648 - Unspecified

epin4: EPIN

0x650..0x65c - Unspecified

epin5: EPIN

0x664..0x670 - Unspecified

epin6: EPIN

0x678..0x684 - Unspecified

epin7: EPIN

0x68c..0x698 - Unspecified

isoin: ISOIN

0x6a0..0x6ac - Unspecified

epout0: EPOUT

0x700..0x70c - Unspecified

epout1: EPOUT

0x714..0x720 - Unspecified

epout2: EPOUT

0x728..0x734 - Unspecified

epout3: EPOUT

0x73c..0x748 - Unspecified

epout4: EPOUT

0x750..0x75c - Unspecified

epout5: EPOUT

0x764..0x770 - Unspecified

epout6: EPOUT

0x778..0x784 - Unspecified

epout7: EPOUT

0x78c..0x798 - Unspecified

isoout: ISOOUT

0x7a0..0x7ac - Unspecified

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.