Introduction

Authors: Robert Perkel, Microchip Technology Inc.

Universal Serial Bus (USB®) is a commonly used serial interface connecting several devices. But, unlike the Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C), or Universal Asynchronous Receiver and Transmitter (UART), USB has more complex implementation requirements. This tech brief covers common implementation errors when setting up a USB 2.0 Full Speed (FS) microcontroller, such as the AVR® DU family of microcontrollers.

Scope

This document covers only USB device 2.0 FS implementations. Other USB versions have different requirements and specifications.

Important: USB specifications are available from USB-IF. For more information about achieving USB compliance, go to www.usb.org/developers.