LUFA Library
USB Core - LUFA/Drivers/USB/USB.h

Core driver for the microcontroller hardware USB module. More...


 Device Management
 USB Device management definitions for USB device mode.
 Endpoint Management
 Endpoint management definitions.
 HID Report Parser
 USB Human Interface Device (HID) Class report descriptor parser.
 Host Management
 USB Host management definitions for USB host mode.
 Pipe Management
 Pipe management definitions.
 Standard USB Requests
 USB control endpoint request definitions.
 USB Descriptors
 Standard USB Descriptor definitions.
 USB Events
 USB Event management definitions.
 USB Interface Management
 USB Controller definitions for general USB controller management.
 USB Mode Tokens
 USB mode and feature support definitions.
 USB On The Go (OTG) Management
 USB OTG management definitions.

Detailed Description

Module Source Dependencies

The following files must be built with any user project that uses this module:

Module Description

Driver and framework for the USB controller of the selected architecture and microcontroller model. This module consists of many submodules, and is designed to provide an easy way to configure and control USB host, device or OTG mode USB applications.

The USB stack requires the sole control over the USB controller in the microcontroller only; i.e. it does not require any additional timers or other peripherals to operate. This ensures that the USB stack requires as few resources as possible.

The USB stack can be used in Device Mode for connections to USB Hosts (see Device Management), in Host mode for hosting of other USB devices (see Host Management), or as a dual role device which can either act as a USB host or device depending on what peripheral is connected (see USB On The Go (OTG) Management). Both modes also require a common set of USB management functions found USB Interface Management.