USB Host Controller Driver Development Concepts (Windows Embedded CE 6.0)

1/6/2010

The universal serial bus (USB) is an external bus architecture for connecting a USB-compatible peripheral device, such as a mouse, keyboard, or printer, to a host computer. USB is a communication protocol that supports serial data transfers between a host computer and a USB-compatible peripheral device.

You can expand existing USB support on your hardware platform. Currently, USB support focuses on the host side of the USB specification, which enables support for USB peripherals. Some support is provided for the device side of the USB specification through the USB function controller driver. The USB function controller driver, however, exists primarily to support USB connectivity to desktop computers.

The following table shows the capabilities of USB and describes their significance for driver development.

USB capability Description

Well-defined, standard connector for all USB peripheral devices

Simplifies the design of USB devices simplifies determining which plugs correspond to which ports on the host computer.

Combined mouse, modem, keyboard, and printer port

Reduces hardware complexity.

Hot plugging

Connects or disconnects USB devices safely while the host computer is turned on. Other generic peripheral connection standards, such as the Small Computer System Interface (SCSI), require that the host computer be turned off when a user adds or removes peripherals.

Plug and Play

Allows the host to identify, configure, and load the driver for a device when a user connects a USB device.

Flexibility in how devices are powered

Allows USB devices to draw power directly from the USB cable. Bus-powered devices draw power from the USB bus. Self-powered devices use a combination of power from batteries or from a wall outlet.

High-speed 480-megabits-per-second (Mbps) mode, full-speed 12 Mbps mode, and a low-speed 1.5-Mbps mode

Supports a variety of peripherals.

Guaranteed bandwidth

Provides guaranteed bandwidth for devices that cannot tolerate transmission that comes in bursts, such as streaming audio and video devices.

Multiple peripherals that can communicate simultaneously with the host computer

Provides user convenience.

See Also

Concepts

USB Devices
USB Host Controller Driver Architecture
USB Host Controller Driver Registry Settings

Other Resources

USB Host Controller Drivers
USB Host Controller Driver Reference