English
Language : 

AN249 Datasheet, PDF (1/42 Pages) Silicon Laboratories – HUMAN INTERFACE DEVICE TUTORIAL
AN249
HUMAN INTERFACE DEVICE TUTORIAL
Relevant Devices
This application note applies to the following devices:
All Silicon Labs USB MCUs.
1. Introduction
The Human Interface Device (HID) class specification allows designers to create USB-based devices and
applications without the need for custom driver development. Their high levels of on-chip integration and robust
USB interface make Silicon Laboratories microcontrollers ideal devices for HID designs.
1.1. About this Document
This application note assumes that the reader has a basic understanding of the USB specification, including some
knowledge of endpoints, descriptors, and transfer protocols. This document concentrates on highlighting the
benefits of designing with HID and techniques for creating and optimizing HID-based systems that use Silicon
Laboratories microcontrollers.
This document includes the following:
Discussion on HID
A firmware template that can be used as a starting point for HID device firmware
Description of the HID object class that can be used by host applications to communicate with HID devices
Explanation of two example HID firmware systems implemented by modifying the Template Firmware
Firmware source for each HID example discussed in the text
Example code for host-side application software
1.2. HID Examples
Both HID examples in this application note were created using the included firmware template as a starting point.
The sections titled "7. USB Mouse Example" on page 26 and "8. HID Blinky Firmware and Software Example" on
page 33 describe how the firmware template was modified to create each example. Section “8. HID Blinky
Firmware and Software Example” also provides an example of how the HID class object can be used to
communicate with an HID device.
Rev. 0.2 11/06
Copyright © 2006 by Silicon Laboratories
AN249