nxp-pac

Crates

git

Versions

mcxa456

Flavors

Usbcmd

Struct Usbcmd 

Source
#[repr(transparent)]
pub struct Usbcmd(pub u32);
Expand description

USB Command. F70RM 44.6.1.19 (text line 113363). RST and IAA are self-clearing commands. Host reset requires HCH=1. Device reset requires flushed endpoints and RS=0. FS_2:FS_1 jointly select 1024,512,256,128,64,32,16,8 frame-list elements. ITC legal values are 0,1,2,4,8,16,32,64. RM ASP/ASPE prose defaults (3/1) conflict with the register-map/diagram reset 0x00080000; the diagram is retained without guessing a mode-specific alternative.

Tuple Fields§

§0: u32

Implementations§

Source§

impl Usbcmd

Source

pub const fn rs(&self) -> bool

Run/Stop. Raw encoding: 0b - Stopped executing; 1b - Running.

Source

pub const fn set_rs(&mut self, val: bool)

Run/Stop. Raw encoding: 0b - Stopped executing; 1b - Running.

Source

pub const fn rst(&self) -> bool

Controller Reset.

Source

pub const fn set_rst(&mut self, val: bool)

Controller Reset.

Source

pub const fn fs_1(&self) -> u8

Frame List Size 1.

Source

pub const fn set_fs_1(&mut self, val: u8)

Frame List Size 1.

Source

pub const fn pse(&self) -> bool

Periodic Schedule Enable. Raw encoding: 0b - Do not process the periodic schedule; 1b - Process the periodic schedule.

Source

pub const fn set_pse(&mut self, val: bool)

Periodic Schedule Enable. Raw encoding: 0b - Do not process the periodic schedule; 1b - Process the periodic schedule.

Source

pub const fn ase(&self) -> bool

Asynchronous Schedule Enable. Raw encoding: 0b - Do not process the asynchronous schedule; 1b - Access the asynchronous schedule.

Source

pub const fn set_ase(&mut self, val: bool)

Asynchronous Schedule Enable. Raw encoding: 0b - Do not process the asynchronous schedule; 1b - Access the asynchronous schedule.

Source

pub const fn iaa(&self) -> bool

Interrupt on Async Advance Doorbell.

Source

pub const fn set_iaa(&mut self, val: bool)

Interrupt on Async Advance Doorbell.

Source

pub const fn asp(&self) -> u8

Asynchronous Schedule Park Mode Count.

Source

pub const fn set_asp(&mut self, val: u8)

Asynchronous Schedule Park Mode Count.

Source

pub const fn aspe(&self) -> bool

Asynchronous Schedule Park Mode Enable. Raw encoding: 0b - Disables; 1b - Enables.

Source

pub const fn set_aspe(&mut self, val: bool)

Asynchronous Schedule Park Mode Enable. Raw encoding: 0b - Disables; 1b - Enables.

Source

pub const fn sutw(&self) -> bool

Setup Trip Wire (Device mode only).

Source

pub const fn set_sutw(&mut self, val: bool)

Setup Trip Wire (Device mode only).

Source

pub const fn atdtw(&self) -> bool

Add dTD Trip Wire (Device mode only).

Source

pub const fn set_atdtw(&mut self, val: bool)

Add dTD Trip Wire (Device mode only).

Source

pub const fn fs_2(&self) -> bool

Frame List Size 2 (Host mode only). Raw encoding: 000b - 1024 elements (4096 bytes); 001b - 512 elements (2048 bytes); 010b - 256 elements (1024 bytes); 011b - 128 elements (512 bytes); 100b - 64 elements (256 bytes); 101b - 32 elements (128 bytes); 110b - 16 elements (64 bytes); 111b - 8 elements (32 bytes).

Source

pub const fn set_fs_2(&mut self, val: bool)

Frame List Size 2 (Host mode only). Raw encoding: 000b - 1024 elements (4096 bytes); 001b - 512 elements (2048 bytes); 010b - 256 elements (1024 bytes); 011b - 128 elements (512 bytes); 100b - 64 elements (256 bytes); 101b - 32 elements (128 bytes); 110b - 16 elements (64 bytes); 111b - 8 elements (32 bytes).

Source

pub const fn itc(&self) -> u8

Interrupt Threshold Control. Raw encoding: 0000_0000b - Immediate (no threshold); 0000_0001b - 1 microframe; 0000_0010b - 2 microframes; 0000_0100b - 4 microframes; 0000_1000b - 8 microframes; 0001_0000b - 16 microframes; 0010_0000b - 32 microframes; 0100_0000b - 64 microframes.

Source

pub const fn set_itc(&mut self, val: u8)

Interrupt Threshold Control. Raw encoding: 0000_0000b - Immediate (no threshold); 0000_0001b - 1 microframe; 0000_0010b - 2 microframes; 0000_0100b - 4 microframes; 0000_1000b - 8 microframes; 0001_0000b - 16 microframes; 0010_0000b - 32 microframes; 0100_0000b - 64 microframes.

Trait Implementations§

Source§

impl Clone for Usbcmd

Source§

fn clone(&self) -> Usbcmd

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Usbcmd

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Usbcmd

Source§

fn default() -> Usbcmd

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Usbcmd

Source§

fn eq(&self, other: &Usbcmd) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Usbcmd

Source§

impl Eq for Usbcmd

Source§

impl StructuralPartialEq for Usbcmd

Auto Trait Implementations§

§

impl Freeze for Usbcmd

§

impl RefUnwindSafe for Usbcmd

§

impl Send for Usbcmd

§

impl Sync for Usbcmd

§

impl Unpin for Usbcmd

§

impl UnwindSafe for Usbcmd

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> 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<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
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<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.