USB Host Controller Driver Development Concepts (Windows CE 5.0)
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.
|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 12-megabits-per-second (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.|
Send Feedback on this topic to the authors