Что и предполагалось... Мышь то хоть можно втыкать? Если да, то
примочку с custom hid (ниже описывал). Но сначала надо-таки
потестить - воткнуть PicKit2 - в нем аккурат custom hid. Комп пищет
"устройство ввода" при первом втыкании и не нужны сторонние
драйвера для HID. О, кстати! PicKit2 поддерживает
чтение/программирование SPI флеш. Готовый девайс, етить. Считал
флэху и распаковал архив. Мало того, в PicKit2 есть и встроенная
флэш для хранения прошивок. Можно ее
заюзать...
---===>Device Information<===--- English product name: "PICkit 2 Microcontroller Programmer" ConnectionStatus: Current Config Value: 0x01 -> Device Bus Speed: Full Device Address: 0x07 Open Pipes: 2 ===>Endpoint Descriptor<=== bLength: 0x07 bDescriptorType: 0x05 bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1 bmAttributes: 0x03 -> Interrupt Transfer Type wMaxPacketSize: 0x0040 = 0x40 bytes bInterval: 0x01 ===>Endpoint Descriptor<=== bLength: 0x07 bDescriptorType: 0x05 bEndpointAddress: 0x01 -> Direction: OUT - EndpointID: 1 bmAttributes: 0x03 -> Interrupt Transfer Type wMaxPacketSize: 0x0040 = 0x40 bytes bInterval: 0x01 ===>Device Descriptor<=== bLength: 0x12 bDescriptorType: 0x01 bcdUSB: 0x0200 bDeviceClass: 0x00 -> This is an Interface Class Defined Device bDeviceSubClass: 0x00 bDeviceProtocol: 0x00 bMaxPacketSize0: 0x08 = (8) Bytes idVendor: 0x04D8idProduct: 0x0033 bcdDevice: 0x0002 iManufacturer: 0x01 English (United States) "Microchip Technology Inc." iProduct: 0x02 English (United States) "PICkit 2 Microcontroller Programmer" iSerialNumber: 0x03 English (United States) "123456" bNumConfigurations: 0x02 *!*CAUTION: Most host controllers will only work with one configuration per speed ===>Configuration Descriptor<=== bLength: 0x09 bDescriptorType: 0x02 wTotalLength: 0x0029 -> Validated bNumInterfaces: 0x01 bConfigurationValue: 0x01 iConfiguration: 0x02 English (United States) "PICkit 2 Microcontroller Programmer" bmAttributes: 0x80 -> Bus Powered MaxPower: 0x32 = 100 mA ===>Interface Descriptor<=== bLength: 0x09 bDescriptorType: 0x04 bInterfaceNumber: 0x00 bAlternateSetting: 0x00 bNumEndpoints: 0x02 bInterfaceClass: 0x03 -> HID Interface Class bInterfaceSubClass: 0x00 bInterfaceProtocol: 0x00 CAUTION: This may be an invalid bInterfaceProtocol iInterface: 0x00 ===>HID Descriptor<=== bLength: 0x09 bDescriptorType: 0x21 bcdHID: 0x0001 bCountryCode: 0x00 bNumDescriptors: 0x01 bDescriptorType: 0x22 wDescriptorLength: 0x001D ===>Endpoint Descriptor<=== bLength: 0x07 bDescriptorType: 0x05 bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1 bmAttributes: 0x03 -> Interrupt Transfer Type wMaxPacketSize: 0x0040 = 0x40 bytes bInterval: 0x01 ===>Endpoint Descriptor<=== bLength: 0x07 bDescriptorType: 0x05 bEndpointAddress: 0x01 -> Direction: OUT - EndpointID: 1 bmAttributes: 0x03 -> Interrupt Transfer Type wMaxPacketSize: 0x0040 = 0x40 bytes bInterval: 0x01