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.
| Feature | AVR® USB | PIC32CM USB |
|---|---|---|
| USB Specification | USB 2.0 Full-Speed (12 Mbps) | USB 2.1 (Full-Speed 12 Mbps, Low-Speed 1.5 Mbps) |
| Host/Device Modes | Device only | Host and Device mode |
| Host Mode Features | N/A |
Eight physical pipes Unlimited virtual pipes Feedback endpoint SOF clock output |
| Endpoint Addresses | 16 (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 Endpoint | Up to 1023 bytes | No endpoint size limitation (typically up to 1023 bytes) |
| Endpoint Buffering | Internal SRAM, fully configurable | Internal SRAM, fully configurable |
| Multi-Packet Transfer | Supported | Supported |
| Double Buffering | N/A | Dual 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 Transceiver | Supported | Supported |
| DMA Support | Built-in for endpoint data and configuration | Built-in for endpoint data and configuration |
| Crystal-less Operation | N/A | Supported |
| Debug Support | On-chip debug during USB transactions | N/A |
