pub struct Driver<'d> { /* private fields */ }
Available on crate feature
unstable
only.Expand description
Asynchronous USB driver.
Implementations§
Source§impl<'d> Driver<'d>
impl<'d> Driver<'d>
Sourcepub fn new(peri: Usb<'d>, ep_out_buffer: &'d mut [u8], config: Config) -> Self
pub fn new(peri: Usb<'d>, ep_out_buffer: &'d mut [u8], config: Config) -> Self
Initializes USB OTG peripheral with internal Full-Speed PHY, for asynchronous operation.
§Arguments
ep_out_buffer
- An internal buffer used to temporarily store received packets.
Must be large enough to fit all OUT endpoint max packet sizes. Endpoint allocation will fail if it is too small.
Trait Implementations§
Source§impl<'d> Driver<'d> for Driver<'d>
impl<'d> Driver<'d> for Driver<'d>
Source§type EndpointOut = Endpoint<'d, Out>
type EndpointOut = Endpoint<'d, Out>
Type of the OUT endpoints for this driver.
Source§type EndpointIn = Endpoint<'d, In>
type EndpointIn = Endpoint<'d, In>
Type of the IN endpoints for this driver.
Source§type ControlPipe = ControlPipe<'d>
type ControlPipe = ControlPipe<'d>
Type of the control pipe for this driver.
Source§fn alloc_endpoint_in(
&mut self,
ep_type: EndpointType,
max_packet_size: u16,
interval_ms: u8,
) -> Result<Self::EndpointIn, EndpointAllocError>
fn alloc_endpoint_in( &mut self, ep_type: EndpointType, max_packet_size: u16, interval_ms: u8, ) -> Result<Self::EndpointIn, EndpointAllocError>
Allocates an IN endpoint. Read more
Source§fn alloc_endpoint_out(
&mut self,
ep_type: EndpointType,
max_packet_size: u16,
interval_ms: u8,
) -> Result<Self::EndpointOut, EndpointAllocError>
fn alloc_endpoint_out( &mut self, ep_type: EndpointType, max_packet_size: u16, interval_ms: u8, ) -> Result<Self::EndpointOut, EndpointAllocError>
Allocates an OUT endpoint. Read more