From acc974c64b1e17e6807133fdc50de5bb34aedda5 Mon Sep 17 00:00:00 2001 From: tmk Date: Wed, 9 Feb 2011 00:03:58 +0900 Subject: added protocol stack: pjrc, vusb --- pjrc/usb_mouse.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 pjrc/usb_mouse.c (limited to 'pjrc/usb_mouse.c') diff --git a/pjrc/usb_mouse.c b/pjrc/usb_mouse.c new file mode 100644 index 000000000..319b65a1c --- /dev/null +++ b/pjrc/usb_mouse.c @@ -0,0 +1,58 @@ +#include +#include +#include "usb_mouse.h" +#include "print.h" +#include "debug.h" + + +uint8_t usb_mouse_protocol=1; + + +int8_t usb_mouse_send(int8_t x, int8_t y, int8_t wheel_v, int8_t wheel_h, uint8_t buttons) +{ + uint8_t intr_state, timeout; + + if (!usb_configured()) return -1; + if (x == -128) x = -127; + if (y == -128) y = -127; + if (wheel_v == -128) wheel_v = -127; + if (wheel_h == -128) wheel_h = -127; + intr_state = SREG; + cli(); + UENUM = MOUSE_ENDPOINT; + timeout = UDFNUML + 50; + while (1) { + // are we ready to transmit? + if (UEINTX & (1<