Refactor the system keyboard report descriptor using LUFA macros.

This commit is contained in:
László Monda
2017-03-07 21:50:00 +01:00
parent 6b54cfcda3
commit 264c5b671b
3 changed files with 7 additions and 27 deletions

View File

@@ -43,7 +43,8 @@
#define HID_RI_USAGE_PAGE_BUTTONS 0x09
#define HID_RI_USAGE_PAGE_CONSUMER 0x0C
#define HID_RI_USAGE_ID_CONSUMER_PAGE_CONSUMER_CONTROL 0x01
#define HID_RI_USAGE_ID_CONSUMER_PAGE_CONSUMER_CONTROL 0x01
#define HID_RI_USAGE_ID_GENERIC_DESKTOP_PAGE_SYSTEM_CONTROL 0x80
#define HID_RI_USAGE_GENERIC_DESKTOP_POINTER 0x01
#define HID_RI_USAGE_GENERIC_DESKTOP_MOUSE 0x02

View File

@@ -2,37 +2,16 @@
#include "usb_descriptor_system_keyboard_report.h"
uint8_t UsbSystemKeyboardReportDescriptor[USB_SYSTEM_KEYBOARD_REPORT_DESCRIPTOR_LENGTH] = {
//TODO limit to system keys only?
// System Control (Power Down, Sleep, Wakeup, ...)
0x05, 0x01, // USAGE_PAGE (Generic Desktop)
0x09, 0x80, // USAGE (System Control)
0xa1, 0x01, // COLLECTION (Application)
// 1 system key
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x26, 0xff, 0x00, // LOGICAL_MAXIMUM (255)
0x19, 0x00, // USAGE_MINIMUM (Undefined)
0x29, 0xff, // USAGE_MAXIMUM (System Menu Down)
0x95, 0x01, // REPORT_COUNT (1)
0x75, 0x08, // REPORT_SIZE (8)
0x81, 0x00, // INPUT (Data,Ary,Abs)
0xc0 // END_COLLECTION
};
/*
uint8_t UsbMediaKeyboardReportDescriptor[USB_MEDIA_KEYBOARD_REPORT_DESCRIPTOR_LENGTH] = {
HID_RI_USAGE_PAGE(8, HID_RI_USAGE_PAGE_CONSUMER),
HID_RI_USAGE(8, 0x01),
HID_RI_USAGE_PAGE(8, HID_RI_USAGE_PAGE_GENERIC_DESKTOP),
HID_RI_USAGE(8, HID_RI_USAGE_ID_GENERIC_DESKTOP_PAGE_SYSTEM_CONTROL),
HID_RI_COLLECTION(8, HID_RI_COLLECTION_APPLICATION),
// Scancodes
// System key
HID_RI_LOGICAL_MINIMUM(8, 0x00),
HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
HID_RI_USAGE_PAGE(8, HID_RI_USAGE_PAGE_KEY_CODES),
HID_RI_USAGE_MINIMUM(8, 0x00),
HID_RI_USAGE_MAXIMUM(8, 0xFF),
HID_RI_REPORT_COUNT(8, USB_MEDIA_KEYBOARD_MAX_KEYS),
HID_RI_REPORT_COUNT(8, USB_SYSTEM_KEYBOARD_MAX_KEYS),
HID_RI_REPORT_SIZE(8, 0x08),
HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
HID_RI_END_COLLECTION(0),
};
*/

View File

@@ -3,7 +3,7 @@
// Macros:
#define USB_SYSTEM_KEYBOARD_REPORT_DESCRIPTOR_LENGTH 22
#define USB_SYSTEM_KEYBOARD_REPORT_DESCRIPTOR_LENGTH 21
#define USB_SYSTEM_KEYBOARD_MAX_KEYS 1
// Variables: