Keyboard.txt 2.25 KB
Newer Older
1
2
3
4
5
6
7
/** \file
 *
 *  This file contains special DoxyGen information for the generation of the main page and other special
 *  documentation pages. It is not a project source file.
 */
 
/** \mainpage Keyboard Device Demo
8
9
10
11
 *
 *  \section SSec_Info USB Information:
 *
 *  The following table gives a rundown of the USB utilization of this demo.
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 *
 *  <table>
 *   <tr>
 *    <td><b>USB Mode:</b></td>
 *    <td>Device</td>
 *   </tr>
 *   <tr>
 *    <td><b>USB Class:</b></td>
 *    <td>Human Interface Device (HID)</td>
 *   </tr>
 *   <tr> 
 *    <td><b>USB Subclass:</b></td>
 *    <td>N/A</td>
 *   </tr>
 *   <tr>
 *    <td><b>Relevant Standards:</b></td>
 *    <td>USBIF HID Specification, USBIF HID Usage Tables</td>
 *   </tr>
 *   <tr>
 *    <td><b>Usable Speeds:</b></td>
 *    <td>Low Speed Mode, Full Speed Mode</td>
 *   </tr>
 *  </table>
35
36
 *
 *  \section SSec_Description Project Description:
37
 *
38
39
40
41
42
 *  Keyboard demonstration application. This gives a simple reference application
 *  for implementing a USB Keyboard using the basic USB HID drivers in all modern
 *  OSes (i.e. no special drivers required). It is boot protocol compatible, and thus
 *  works under compatible BIOS as if it was a native keyboard (e.g. PS/2).
 *  
43
 *  On start-up the system will automatically enumerate and function
44
45
46
 *  as a keyboard when the USB connection to a host is present. To use
 *  the keyboard example, manipulate the joystick to send the letters
 *  a, b, c, d and e. See the USB HID documentation for more information
47
 *  on sending keyboard event and key presses.
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 *
 *  \section SSec_Options Project Options
 *  
 *  The following defines can be found in this demo, which can control the demo behaviour when defined, or changed in value.
 *
 *  <table>
 *   <tr>
 *    <td><b>Define Name:</b></td>
 *    <td><b>Location:</b></td>
 *    <td><b>Description:</b></td>
 *   </tr>
 *   <tr>
 *    <td>INTERRUPT_CONTROL_ENDPOINT</td>
 *    <td>Makefile CDEFS</td>
 *    <td>When defined, this causes the demo to enable interrupts for the control endpoint,
 *        which services control requests from the host. If not defined, the control endpoint
 *        is serviced via polling using the task scheduler.</td>
 *   </tr>
 *  </table>
67
 */