![](/media/cache/profiles/e17aeca56fab22ce30ac615e72cc64e5.jpg.50x50_q85.jpg)
Based on USBKeyboardMouse example. I added USB String Descriptor so mbed reports itself to host not only with VID & PID but also with name of manufacturer, product name, serial number, configuration number and interface name. These can be changed to matching Yours in USBhid.cpp file on lines 88 - 122.
Diff: USBKeyboardMouse/USBMouse.h
- Revision:
- 0:f97b1f255167
diff -r 000000000000 -r f97b1f255167 USBKeyboardMouse/USBMouse.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/USBKeyboardMouse/USBMouse.h Thu Sep 08 15:01:33 2011 +0000 @@ -0,0 +1,60 @@ +#include "usbhid.h" + +#ifndef MBED_USBMOUSE_H +#define MBED_USBMOUSE_H + +/* Class: USBMouse + * Emulate a USB Mouse HID device + * + * Example: + * > #include "mbed.h" + * > #include "USBMouse.h" + * > + * > USBMouse mouse; + * > + * > int main() { + * > while(1) { + * > mouse.move(10, 0); + * > wait(2); + * > } + * > } + */ +class USBMouse : private usbhid { +public: + /* Constructor: USBMouse + * Create a USB Mouse using the mbed USB Device interface + */ + USBMouse(); + + /* Function: move + * Move the mouse + * + * Variables: + * x - Distance to move in x-axis + * y - Distance to move in y-axis + */ + void move(int x, int y); + + /* Function: scroll + * Scroll the scroll wheel + * + * Variables: + * z - Distance to scroll scroll wheel + */ + void scroll(int z); + + /* Function: buttons + * Set the state of the buttons + * + * Variables: + * left - set the left button as down (1) or up (0) + * middle - set the middle button as down (1) or up (0) + * right - set the right button as down (1) or up (0) + */ + void buttons(int left, int middle, int right); + +private: + int _buttons; +}; + +#endif