aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/Magstripe/Descriptors.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2011-01-16 19:34:28 +0000
committerDean Camera <dean@fourwalledcubicle.com>2011-01-16 19:34:28 +0000
commit039a714ee46268c07928c79b30403f29d4040fe8 (patch)
tree78fdc14943524b87d6f779b4b00f9bbee7207e18 /Projects/Magstripe/Descriptors.c
parent32830a2b827cbeb40284c5ea379381948fb9113e (diff)
downloadlufa-039a714ee46268c07928c79b30403f29d4040fe8.tar.gz
lufa-039a714ee46268c07928c79b30403f29d4040fe8.tar.bz2
lufa-039a714ee46268c07928c79b30403f29d4040fe8.zip
New HID report item macros (with HID_RI_ prefix) to allow for easy creation and editing of HID report descriptors.
Changed over all project and demo HID report descriptors to use the new HID report item macros. Moved the HIDParser.c source file to the LUFA/Drivers/USB/Class/Common/ directory from the LUFA/Drivers/USB/Class/Host/.
Diffstat (limited to 'Projects/Magstripe/Descriptors.c')
-rw-r--r--Projects/Magstripe/Descriptors.c58
1 files changed, 35 insertions, 23 deletions
diff --git a/Projects/Magstripe/Descriptors.c b/Projects/Magstripe/Descriptors.c
index f8a17f88e..7feae8ce6 100644
--- a/Projects/Magstripe/Descriptors.c
+++ b/Projects/Magstripe/Descriptors.c
@@ -46,29 +46,41 @@
*/
USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
{
- 0x05, 0x01, /* Usage Page (Generic Desktop) */
- 0x09, 0x06, /* Usage (Keyboard) */
- 0xa1, 0x01, /* Collection (Application) */
- 0x05, 0x07, /* Usage Page (Key Codes) */
- 0x19, 0xe0, /* Usage Minimum (Keyboard LeftControl) */
- 0x29, 0xe7, /* Usage Maximum (Keyboard Right GUI) */
- 0x15, 0x00, /* Logical Minimum (0) */
- 0x25, 0x01, /* Logical Maximum (1) */
- 0x75, 0x01, /* Report Size (1) */
- 0x95, 0x08, /* Report Count (8) */
- 0x81, 0x02, /* Input (Data, Variable, Absolute) */
- 0x95, 0x01, /* Report Count (1) */
- 0x75, 0x08, /* Report Size (8) */
- 0x81, 0x03, /* Input (Const, Variable, Absolute) */
- 0x95, 0x06, /* Report Count (6) */
- 0x75, 0x08, /* Report Size (8) */
- 0x15, 0x00, /* Logical Minimum (0) */
- 0x25, 0x65, /* Logical Maximum (101) */
- 0x05, 0x07, /* Usage Page (Keyboard) */
- 0x19, 0x00, /* Usage Minimum (Reserved (no event indicated)) */
- 0x29, 0x65, /* Usage Maximum (Keyboard Application) */
- 0x81, 0x00, /* Input (Data, Array, Absolute) */
- 0xc0 /* End Collection */
+ HID_RI_USAGE_PAGE(8), 0x01, /* Generic Desktop */
+ HID_RI_USAGE(8), 0x06, /* Keyboard */
+ HID_RI_COLLECTION(8), 0x01, /* Application */
+ HID_RI_USAGE_PAGE(8), 0x07, /* Key Codes */
+ HID_RI_USAGE_MINIMUM(8), 0xE0, /* Keyboard Left Control */
+ HID_RI_USAGE_MAXIMUM(8), 0xE7, /* Keyboard Right GUI */
+ HID_RI_LOGICAL_MINIMUM(8), 0,
+ HID_RI_LOGICAL_MAXIMUM(8), 1,
+ HID_RI_REPORT_SIZE(8), 1,
+ HID_RI_REPORT_COUNT(8), 8,
+ HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+
+ HID_RI_REPORT_COUNT(8), 1,
+ HID_RI_REPORT_SIZE(8), 8,
+ HID_RI_INPUT(8), HID_IOF_CONSTANT,
+
+ HID_RI_USAGE_PAGE(8), 0x08, /* LEDs */
+ HID_RI_USAGE_MINIMUM(8), 0x01, /* Num Lock */
+ HID_RI_USAGE_MAXIMUM(8), 0x05, /* Kana */
+ HID_RI_REPORT_COUNT(8), 5,
+ HID_RI_REPORT_SIZE(8), 1,
+ HID_RI_OUTPUT(8), (HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_REPORT_COUNT(8), 1,
+ HID_RI_REPORT_SIZE(8), 3,
+ HID_RI_OUTPUT(8), HID_IOF_CONSTANT,
+
+ HID_RI_LOGICAL_MINIMUM(8), 0x00,
+ HID_RI_LOGICAL_MAXIMUM(8), 0x65,
+ HID_RI_USAGE_PAGE(8), 0x07, /* Keyboard */
+ HID_RI_USAGE_MINIMUM(8), 0x00, /* Reserved (no event indicated) */
+ HID_RI_USAGE_MAXIMUM(8), 0x65, /* Keyboard Application */
+ HID_RI_REPORT_COUNT(8), 6,
+ HID_RI_REPORT_SIZE(8), 8,
+ HID_RI_INPUT(8), (HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+ HID_RI_END_COLLECTION(0),
};
/** Device descriptor structure. This descriptor, located in FLASH memory, describes the overall