const u8 Joystick_ReportDescriptor[JOYSTICK_SIZ_REPORT_DESC] =
{
/*****************************keyboard ReportDescriptor**************/
0x05, 0x01, // USAGE_PAGE (Generic Desktop)
0x09, 0x06, // USAGE (Keyboard)
0xa1, 0x01, // COLLECTION (Application)
0x85, 0x01, //REPORT ID(1)
0x05, 0x07, // USAGE_PAGE (Keyboard/Keypad)
0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)
0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)
0x15, 0x00, // LOGICAL_MINIMUM (0)
/* 16 */
0x25, 0x01, // LOGICAL_MAXIMUM (1)
0x95, 0x08, // REPORT_COUNT (8)
0x75, 0x01, // REPORT_SIZE (1)
0x81, 0x02, // INPUT (Data,Var,Abs)
0x95, 0x01, // REPORT_COUNT (1)
0x75, 0x08, // REPORT_SIZE (8)
0x81, 0x03, // INPUT (Cnst,Var,Abs)
0x95, 0x06, // REPORT_COUNT (6)
/* 32 */
0x75, 0x08, // REPORT_SIZE (8)
0x15, 0x00, // LOGICAL_MINIMUM(0)
0x25, 0xFF, // LOGICAL_MAXIMUM (255)
0x05, 0x07, // USAGE_PAGE(keboard/Keypad)
0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated))
0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application)
0x81, 0x00, // INPUT (Data,Ary,Abs)
0x25, 0x01, // LOGICAL_MAXIMUM (1)
0x95, 0x05, // REPORT_COUNT (5)
0x75, 0x01, // REPORT_SIZE (1)
/* 52 */
0x05, 0x08, // USAGE_PAGE (LEDs)
0x19, 0x01, // USAGE_MINIMUM (Num Lock)
0x29, 0x05, // USAGE_MAXIMUM (Kana)
0x91, 0x02, // OUTPUT (Data,Var,Abs)
0x95, 0x01, // REPORT_COUNT (1)
0x75, 0x03, // REPORT_SIZE (3) DT¸ÄÄúèY
0x91, 0x03, // OUTPUT (Cnst,Var,Abs)
0xc0, // END_COLLECTION
/* 67 */
/*****************************Mouse ReportDescriptor**************/
0x05,0x01, //USAGE_PAGE(Generic Desktop)
0x09,0x02, //USAGE(MOUSE)
0xa1,0x01, //COLLECTION
0X85,0X02, //REPORT ID(2)
0x09,0x01, /*Usage(Pointer)*/
0xa1,0x00, /*Collection(Linked)*/
0x05,0x09, /*Usage Page(Buttons)*/
0x19,0x01, /*Usage Minimum(1)*/
/* 16 */
0x29,0x03, /*Usage Maximum(3)*/
0x15,0x00, /*Logical Minimum(0)*/
0x25,0x01, /*Logical Maximum(1)*/
0x95,0x03, /*Report Count(3)*/
0x75,0x01, /*Report Size(1)*/
0x81,0x02, /*Input(Variable)*/
0x95,0x01, /*Report Count(1)*/
0x75,0x05, /*Report Size(5)*/
/* 32 */
0x81,0x01, /*Input(Constant,Array)*/
0x05,0x01, /*Usage Page(Generic Desktop)*/
0x09,0x30, /*Usage(X axis)*/
0x09,0x31, /*Usage(Y axis)*/
0x09,0x38, /*Usage(Wheel)*/
0x15,0x81, /*Logical Minimum(-127)*/
0x25,0x7F, /*Logical Maximum(127)*/
0x75,0x08, /*Report Size(8)*/
/* 48 */
0x95,0x03, /*Report Count(3)*/
0x81,0x06, /*Input(Variable, Relative)*/
0xC0, /*End Collection*/
0xc0 //End Collection again
/* 54 */
}
; /* Joystick_ReportDescriptor */复制代码