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

pub struct UsbBus<USB> where
    USB: Usb<Enabled> + Send
{ /* 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.

Warning: Currently, UsbBus uses the same USB1_SRAM memory region for both FS and HS peripherals, so it’s not possible to use both peripherals at the same time with this driver.

Implementations

impl<USB> UsbBus<USB> where
    USB: Usb<Enabled> + Send
[src]

pub fn new<PIN>(
    usb_device: USB,
    _usb0_vbus_pin: PIN
) -> UsbBusAllocator<UsbBus<USB>> where
    PIN: Usb0VbusPin + Sync
[src]

Constructs a new USB peripheral driver.

pub fn clear_interrupt(&mut self)[src]

Trait Implementations

impl<USB> UsbBus for UsbBus<USB> where
    USB: Usb<Enabled> + Send
[src]

Auto Trait Implementations

impl<USB> Send for UsbBus<USB>

impl<USB> Sync for UsbBus<USB>

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

Blanket Implementations

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

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

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

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self

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> 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.