Make mouse scrolling work.

This commit is contained in:
László Monda
2016-03-02 01:00:22 +01:00
parent c7a762ae67
commit f4b36fab51

View File

@@ -13,9 +13,10 @@
static usb_device_hid_mouse_struct_t UsbMouseDevice;
static uint8_t scrollCounter = 0;
static usb_status_t UsbMouseAction(void)
{
//usb_device_wheeled_mouse_struct_t *wheeledMouse = (usb_device_wheeled_mouse_struct_t*)&(UsbMouseDevice.buffer);
usb_device_wheeled_mouse_struct_t *wheeledMouse = (usb_device_wheeled_mouse_struct_t*)&(UsbMouseDevice.buffer);
UsbMouseDevice.buffer[0] = 0;
UsbMouseDevice.buffer[1] = 0;
UsbMouseDevice.buffer[2] = 0;
@@ -24,10 +25,19 @@ static usb_status_t UsbMouseAction(void)
UsbMouseDevice.buffer[5] = 0;
UsbMouseDevice.buffer[6] = 0;
if (!GPIO_ReadPinInput(BOARD_SW2_GPIO, BOARD_SW2_GPIO_PIN)) {
UsbMouseDevice.buffer[1] = 1;
// UsbMouseDevice.buffer[0] = 1; // left click
// UsbMouseDevice.buffer[1] = 1; // slow right
// UsbMouseDevice.buffer[2] = 1; // fast right
// UsbMouseDevice.buffer[3] = 1; // slow down
// UsbMouseDevice.buffer[4] = 1; // fast down
if (!(scrollCounter % 10)) {
UsbMouseDevice.buffer[5] = 1; // scroll up
//UsbMouseDevice.buffer[6] = 1; // scroll right
}
//wheeledMouse->x = 32767;
//wheeledMouse->y = 32767;
}
scrollCounter++;
return USB_DeviceHidSend(UsbCompositeDevice.mouseHandle, USB_MOUSE_ENDPOINT_ID,
UsbMouseDevice.buffer, USB_MOUSE_REPORT_LENGTH);
}