Now in its third edition, this developer's guide to the Universal Serial Bus (USB) interface covers all aspects of project development, including device programming and host application software. This book shows how to transform the information in the USB 3.0 specifications into functioning devices and application software that communicates with the devices. To help build a foundation for design decisions, developers are guided in selecting device-controller hardware. Developers will also learn the benefits of the USB interface, its limitations, and how certain design choices made at the beginning of the project can reduce development time. Recent developments in host and device hardware, more detail on the standard USB classes, application examples using Microsoft's .NET Framework, and information on developing dual-role devices using USB On-The-Go is provided in detail.
This book is for developers who design and program devices that use the Universal Serial Bus (USB) interface. My goal is to introduce you to USB and to help you get your devices up and communicating as quickly and easily as possible.
The USB interface is versatile enough for a wide range of peripheral devices. Standard peripherals that use USB include mice, keyboards, drives, printers, and audio/video devices. USB is also suitable for data-acquisition units, control systems, and other devices with specialized functions, including one-of-a-kind designs.