USB HID Class on an Embedded Host
Microcontroller applications can easily support USB embedded host functionality. Traditionally, the PC is used as a host in an USB network. Now, with Microchip’s microcontroller with host capability, the host can be implemented in an embedded system. Some of the most common uses of this capability are to interface to Human Interface Devices (HIDs).
The HID (Human Interface Device) class primarily consists of devices that are used to control any particular application. Typical examples of HID class devices include:
-
• Keyboard and pointing devices
• Control switches, sliders and so on
• Joystick, steering and other gaming control inputs
• Point-of-sale bar code scanners and magnetic card readers having an HID Keyboard Emulation mode
The HID class can be used for devices without human interface, too; such applications just need to be able to function within the limits of the HID class specifications.
Applications do not interface directly with the USB HID client driver. Instead, they use an application interface layer which will interface with the client driver, which in turn, will use the host layer.
The HID interface layer comprises the HID parser interfaces and interface functions to send and receive reports to and from the device. The report descriptor is parsed and the data is stored in predefined structures. The parser will populate these data structures with information extracted from the report descriptor. The application can use the functions defined in the interface layer to understand the report descriptor.
Watch & Read: http://dev.emcelettronica.com/usb-human-interface-device-class-embedded-...
Read more: http://ww1.microchip.com/downloads/en/AppNotes/01144a.pdf
- Ionela's blog
- 1822 reads





Post new comment