5.6.4 Universal Serial Bus (USB)

Some AVR and PIC32CM MCUs offer integrated USB peripherals that comply with the USB 2.0 Full-Speed (12 Mbps) device standards, supporting all four endpoint transfer types, endpoint buffering, and low-power operation with suspend/resume features, with minimal CPU intervention and interrupt load. Table 5-24 shows a comparison of features between AVR and PIC32CM.

Table 5-24. AVR® and PIC32CM USB Features
FeatureAVR® USBPIC32CM USB
USB SpecificationUSB 2.0 Full-Speed (12 Mbps)USB 2.1 (Full-Speed 12 Mbps, Low-Speed 1.5 Mbps)
Host/Device ModesDevice onlyHost and Device mode
Host Mode FeaturesN/A

Eight physical pipes

Unlimited virtual pipes

Feedback endpoint

SOF clock output

Endpoint Addresses16 (32 endpoints: 16 IN, 16 OUT)8 (16 endpoints: 8 IN, 8 OUT)
Endpoint Transfer Types

Control

Interrupt

Bulk

Isochronous

Control

Interrupt

Bulk

Isochronous

Max Payload per EndpointUp to 1023 bytesNo endpoint size limitation (typically up to 1023 bytes)
Endpoint BufferingInternal SRAM, fully configurableInternal SRAM, fully configurable
Multi-Packet TransferSupportedSupported
Double BufferingN/ADual bank (ping-pong) for all endpoints
Power Management

Suspend/Resume

Wake-up from sleep

Suspend/Resume

Wake-up from sleep

Link Power Management (LPM-L1) support

On-Chip TransceiverSupportedSupported
DMA SupportBuilt-in for endpoint data and configurationBuilt-in for endpoint data and configuration
Crystal-less OperationN/ASupported
Debug SupportOn-chip debug during USB transactionsN/A