41 lines
1.2 KiB
C
41 lines
1.2 KiB
C
#include "usb_device_config.h"
|
|
#include "usb.h"
|
|
#include "usb_device.h"
|
|
#include "include/usb/usb_device_class.h"
|
|
#include "include/usb/usb_device_hid.h"
|
|
#include "usb_descriptor_device.h"
|
|
#include "composite.h"
|
|
#include "usb_class_mouse.h"
|
|
|
|
static usb_device_endpoint_struct_t UsbMouseEndpoints[USB_MOUSE_ENDPOINT_COUNT] = {{
|
|
USB_MOUSE_ENDPOINT_ID | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT),
|
|
USB_ENDPOINT_INTERRUPT,
|
|
USB_MOUSE_INTERRUPT_IN_PACKET_SIZE,
|
|
}};
|
|
|
|
static usb_device_interface_struct_t UsbMouseInterface[] = {{
|
|
USB_MOUSE_INTERFACE_ALTERNATE_SETTING,
|
|
{USB_MOUSE_ENDPOINT_COUNT, UsbMouseEndpoints},
|
|
NULL,
|
|
}};
|
|
|
|
static usb_device_interfaces_struct_t UsbMouseInterfaces[USB_MOUSE_INTERFACE_COUNT] = {{
|
|
USB_MOUSE_CLASS,
|
|
USB_MOUSE_SUBCLASS,
|
|
USB_MOUSE_PROTOCOL,
|
|
USB_MOUSE_INTERFACE_INDEX,
|
|
UsbMouseInterface,
|
|
sizeof(UsbMouseInterface) / sizeof(usb_device_interfaces_struct_t),
|
|
}};
|
|
|
|
static usb_device_interface_list_t UsbMouseInterfaceList[USB_DEVICE_CONFIGURATION_COUNT] = {{
|
|
USB_MOUSE_INTERFACE_COUNT,
|
|
UsbMouseInterfaces,
|
|
}};
|
|
|
|
usb_device_class_struct_t UsbMouseClass = {
|
|
UsbMouseInterfaceList,
|
|
kUSB_DeviceClassTypeHid,
|
|
USB_DEVICE_CONFIGURATION_COUNT,
|
|
};
|