ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
13 мая
55549 Топик полностью
LazyCamel (31.03.2006 09:08, просмотров: 1) ответил Котик на Все катит, и хид катит из примеров... Только когда я его переделал, он перестал катить
Ответ: Менять надо 3 вещи. HID descriptor, его (дескриптора) размер, и размер пакета конечной точки. Если устройство обозналось как hid-compiliant device, но одновременно не появилось в Hid Mouse Device - с вероятностью 99% у вас ошибка в Hid Descriptor"е. const short mouseDescriptor[] = { 0x0105, // Usage Page (Generic Desktop) 0x0209, // Usage (Mouse) 0x01A1, // Collection (Application) 0x0109, // Usage (Pointer) 0x00A1, // Collection (Physical) 0x0905, // Usage Page (Buttons) 0x0119, // Usage Minimum∙ (01) 0x0329, // Usage Maximum (03) 0x0015, // Logical Minimum (0) 0x0125, // Logical Maximum (1) 0x0395, // Report Count (3) 0x0175, // Report Size (1) ^^^^^^^^^^^^^^^^^ 3 бита 0x0281, // 3 Button bits 0x0195, // Report Count (1) 0x0575, // Report Size (6) 0x0181, // 6 bit padding ^^^^^^^^^^^^^^^^ (на самом деле в коде 5 бит, здесь ошибка в комментарии, 0x0105, // Generic desktop 0x3009, // Usage (X) 0x3109, // Usage(Y) 0x8115, // Logical Minimum (-127) 0x7F25, // Logical Maximum (127) 0x0875, // Report Size (8) 0x0295, // Report Count (2) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ оставшиеся 2 байта. 0x0681, // 2 position bytes 0xC0C0 Вообще если пробуете HID девайс, лучше все-таки начать не с мауса (там из-за бут протокола еще есть тонкости), а например с примера джойстика в FreeRTOS скажем. Если же нужны только короткие пересылки туда-сюда, прекрасно работает HID с объявленым Feature типом данных. Тогда можно не делать ENDPOINT1, и использовать для обмена стандартные функции WinAPI GetFeatureReport/SetFeatureReport.