RegisterBlock

Struct RegisterBlock 

Source
pub struct RegisterBlock {
Show 67 fields pub tasks_startepin: [Reg<TASKS_STARTEPIN_SPEC>; 8], pub tasks_startisoin: Reg<TASKS_STARTISOIN_SPEC>, pub tasks_startepout: [Reg<TASKS_STARTEPOUT_SPEC>; 8], pub tasks_startisoout: Reg<TASKS_STARTISOOUT_SPEC>, pub tasks_ep0rcvout: Reg<TASKS_EP0RCVOUT_SPEC>, pub tasks_ep0status: Reg<TASKS_EP0STATUS_SPEC>, pub tasks_ep0stall: Reg<TASKS_EP0STALL_SPEC>, pub tasks_dpdmdrive: Reg<TASKS_DPDMDRIVE_SPEC>, pub tasks_dpdmnodrive: Reg<TASKS_DPDMNODRIVE_SPEC>, pub events_usbreset: Reg<EVENTS_USBRESET_SPEC>, pub events_started: Reg<EVENTS_STARTED_SPEC>, pub events_endepin: [Reg<EVENTS_ENDEPIN_SPEC>; 8], pub events_ep0datadone: Reg<EVENTS_EP0DATADONE_SPEC>, pub events_endisoin: Reg<EVENTS_ENDISOIN_SPEC>, pub events_endepout: [Reg<EVENTS_ENDEPOUT_SPEC>; 8], pub events_endisoout: Reg<EVENTS_ENDISOOUT_SPEC>, pub events_sof: Reg<EVENTS_SOF_SPEC>, pub events_usbevent: Reg<EVENTS_USBEVENT_SPEC>, pub events_ep0setup: Reg<EVENTS_EP0SETUP_SPEC>, pub events_epdata: Reg<EVENTS_EPDATA_SPEC>, pub shorts: Reg<SHORTS_SPEC>, pub inten: Reg<INTEN_SPEC>, pub intenset: Reg<INTENSET_SPEC>, pub intenclr: Reg<INTENCLR_SPEC>, pub eventcause: Reg<EVENTCAUSE_SPEC>, pub halted: HALTED, pub epstatus: Reg<EPSTATUS_SPEC>, pub epdatastatus: Reg<EPDATASTATUS_SPEC>, pub usbaddr: Reg<USBADDR_SPEC>, pub bmrequesttype: Reg<BMREQUESTTYPE_SPEC>, pub brequest: Reg<BREQUEST_SPEC>, pub wvaluel: Reg<WVALUEL_SPEC>, pub wvalueh: Reg<WVALUEH_SPEC>, pub windexl: Reg<WINDEXL_SPEC>, pub windexh: Reg<WINDEXH_SPEC>, pub wlengthl: Reg<WLENGTHL_SPEC>, pub wlengthh: Reg<WLENGTHH_SPEC>, pub size: SIZE, pub enable: Reg<ENABLE_SPEC>, pub usbpullup: Reg<USBPULLUP_SPEC>, pub dpdmvalue: Reg<DPDMVALUE_SPEC>, pub dtoggle: Reg<DTOGGLE_SPEC>, pub epinen: Reg<EPINEN_SPEC>, pub epouten: Reg<EPOUTEN_SPEC>, pub epstall: Reg<EPSTALL_SPEC>, pub isosplit: Reg<ISOSPLIT_SPEC>, pub framecntr: Reg<FRAMECNTR_SPEC>, pub lowpower: Reg<LOWPOWER_SPEC>, pub isoinconfig: Reg<ISOINCONFIG_SPEC>, 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: [Reg<TASKS_STARTEPIN_SPEC>; 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: Reg<TASKS_STARTISOIN_SPEC>

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

§tasks_startepout: [Reg<TASKS_STARTEPOUT_SPEC>; 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: Reg<TASKS_STARTISOOUT_SPEC>

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

§tasks_ep0rcvout: Reg<TASKS_EP0RCVOUT_SPEC>

0x4c - Allows OUT data stage on control endpoint 0

§tasks_ep0status: Reg<TASKS_EP0STATUS_SPEC>

0x50 - Allows status stage on control endpoint 0

§tasks_ep0stall: Reg<TASKS_EP0STALL_SPEC>

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

§tasks_dpdmdrive: Reg<TASKS_DPDMDRIVE_SPEC>

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

§tasks_dpdmnodrive: Reg<TASKS_DPDMNODRIVE_SPEC>

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

§events_usbreset: Reg<EVENTS_USBRESET_SPEC>

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

§events_started: Reg<EVENTS_STARTED_SPEC>

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: [Reg<EVENTS_ENDEPIN_SPEC>; 8]

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

§events_ep0datadone: Reg<EVENTS_EP0DATADONE_SPEC>

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

§events_endisoin: Reg<EVENTS_ENDISOIN_SPEC>

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

§events_endepout: [Reg<EVENTS_ENDEPOUT_SPEC>; 8]

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

§events_endisoout: Reg<EVENTS_ENDISOOUT_SPEC>

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

§events_sof: Reg<EVENTS_SOF_SPEC>

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

§events_usbevent: Reg<EVENTS_USBEVENT_SPEC>

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

§events_ep0setup: Reg<EVENTS_EP0SETUP_SPEC>

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

§events_epdata: Reg<EVENTS_EPDATA_SPEC>

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

§shorts: Reg<SHORTS_SPEC>

0x200 - Shortcuts between local events and tasks

§inten: Reg<INTEN_SPEC>

0x300 - Enable or disable interrupt

§intenset: Reg<INTENSET_SPEC>

0x304 - Enable interrupt

§intenclr: Reg<INTENCLR_SPEC>

0x308 - Disable interrupt

§eventcause: Reg<EVENTCAUSE_SPEC>

0x400 - Details on what caused the USBEVENT event

§halted: HALTED

0x420..0x464 - Unspecified

§epstatus: Reg<EPSTATUS_SPEC>

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

§epdatastatus: Reg<EPDATASTATUS_SPEC>

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

§usbaddr: Reg<USBADDR_SPEC>

0x470 - Device USB address

§bmrequesttype: Reg<BMREQUESTTYPE_SPEC>

0x480 - SETUP data, byte 0, bmRequestType

§brequest: Reg<BREQUEST_SPEC>

0x484 - SETUP data, byte 1, bRequest

§wvaluel: Reg<WVALUEL_SPEC>

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

§wvalueh: Reg<WVALUEH_SPEC>

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

§windexl: Reg<WINDEXL_SPEC>

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

§windexh: Reg<WINDEXH_SPEC>

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

§wlengthl: Reg<WLENGTHL_SPEC>

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

§wlengthh: Reg<WLENGTHH_SPEC>

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

§size: SIZE

0x4a0..0x4c4 - Unspecified

§enable: Reg<ENABLE_SPEC>

0x500 - Enable USB

§usbpullup: Reg<USBPULLUP_SPEC>

0x504 - Control of the USB pull-up

§dpdmvalue: Reg<DPDMVALUE_SPEC>

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: Reg<DTOGGLE_SPEC>

0x50c - Data toggle control and status

§epinen: Reg<EPINEN_SPEC>

0x510 - Endpoint IN enable

§epouten: Reg<EPOUTEN_SPEC>

0x514 - Endpoint OUT enable

§epstall: Reg<EPSTALL_SPEC>

0x518 - STALL endpoints

§isosplit: Reg<ISOSPLIT_SPEC>

0x51c - Controls the split of ISO buffers

§framecntr: Reg<FRAMECNTR_SPEC>

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

§lowpower: Reg<LOWPOWER_SPEC>

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

§isoinconfig: Reg<ISOINCONFIG_SPEC>

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§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

Source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
Source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

Source§

fn lossy_into(self) -> Dst

Performs the conversion.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.