[][src]Struct lpc55s6x_hal::drivers::usbd::UsbBus

pub struct UsbBus<P> { /* fields omitted */ }

Implements the usb_device::bus::UsbBus trait.

From that documentation:

The UsbBus is shared by reference between the global UsbDevice as well as UsbClasses, and therefore any required mutability must be implemented using interior mutability. Most operations that may mutate the bus object itself take place before enable is called. After the bus is enabled, in practice most access won't mutate the object itself but only endpoint-specific registers and buffers, the access to which is mostly arbitrated by endpoint handles.

Methods

impl<PIN: Usb0VbusPin + Sync> UsbBus<PIN>[src]

pub fn new(
    usbfsd: EnabledUsbfsDevice,
    _usb0_vbus_pin: PIN
) -> UsbBusAllocator<Self>
[src]

Constructs a new USB peripheral driver.

Trait Implementations

impl<PINS: Send + Sync> UsbBus for UsbBus<PINS>[src]

Auto Trait Implementations

impl<P> Unpin for UsbBus<P> where
    P: Unpin

impl<P> Send for UsbBus<P> where
    P: Send

impl<P> Sync for UsbBus<P> where
    P: Sync

Blanket Implementations

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

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

type Error = Infallible

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