Mamecontroller/joystick device wrapper library
USBJoystick Class Reference
USBJoystick example. More...
#include <USBJoystick.h>
Public Member Functions | |
USBJoystick (uint16_t vendor_id=0x1234, uint16_t product_id=0x0100, uint16_t product_release=0x0001) | |
Constructor. | |
bool | update (int16_t t, int16_t r, int16_t x, int16_t y, uint8_t buttons, uint8_t hat) |
Write a state of the mouse. | |
bool | update () |
Write a state of the mouse. | |
bool | throttle (int16_t t) |
Move the throttle position. | |
bool | rudder (int16_t r) |
Move the rudder position. | |
bool | move (int16_t x, int16_t y) |
Move the cursor to (x, y) | |
bool | button (uint8_t button) |
Press one or several buttons. | |
bool | hat (uint8_t hat) |
Press hat. |
Detailed Description
USBJoystick example.
#include "mbed.h" #include "USBJoystick.h" USBJoystick joystick; int main(void) { while (1) { joystick.move(20, 0); wait(0.5); } }
#include "mbed.h" #include "USBJoystick.h" #include <math.h> USBJoystick joystick; int main(void) { int16_t i = 0; int16_t throttle = 0; int16_t rudder = 0; int16_t x = 0; int16_t y = 0; int32_t radius = 120; int32_t angle = 0; int8_t button = 0; int8_t hat = 0; while (1) { // Basic Joystick throttle = (i >> 8) & 0xFF; // value -127 .. 128 rudder = (i >> 8) & 0xFF; // value -127 .. 128 button = (i >> 8) & 0x0F; // value 0 .. 15, one bit per button hat = (i >> 8) & 0x07; // value 0..7 or 8 for neutral i++; x = cos((double)angle*3.14/180.0)*radius; // value -127 .. 128 y = sin((double)angle*3.14/180.0)*radius; // value -127 .. 128 angle += 3; joystick.update(throttle, rudder, x, y, button, hat); wait(0.001); } }
Definition at line 114 of file USBJoystick.h.
Constructor & Destructor Documentation
USBJoystick | ( | uint16_t | vendor_id = 0x1234 , |
uint16_t | product_id = 0x0100 , |
||
uint16_t | product_release = 0x0001 |
||
) |
Constructor.
- Parameters:
-
vendor_id Your vendor_id (default: 0x1234) product_id Your product_id (default: 0x0002) product_release Your product_release (default: 0x0001)
Definition at line 124 of file USBJoystick.h.
Member Function Documentation
bool button | ( | uint8_t | button ) |
Press one or several buttons.
- Parameters:
-
button button state
- Returns:
- true if there is no error, false otherwise
Definition at line 73 of file USBJoystick.cpp.
bool hat | ( | uint8_t | hat ) |
Press hat.
- Parameters:
-
hat hat state
- Returns:
- true if there is no error, false otherwise
Definition at line 78 of file USBJoystick.cpp.
bool move | ( | int16_t | x, |
int16_t | y | ||
) |
Move the cursor to (x, y)
- Parameters:
-
x-axis position y-axis position
- Returns:
- true if there is no error, false otherwise
Definition at line 67 of file USBJoystick.cpp.
bool rudder | ( | int16_t | r ) |
Move the rudder position.
- Parameters:
-
r rudder position
- Returns:
- true if there is no error, false otherwise
Definition at line 62 of file USBJoystick.cpp.
bool throttle | ( | int16_t | t ) |
Move the throttle position.
- Parameters:
-
t throttle position
- Returns:
- true if there is no error, false otherwise
Definition at line 57 of file USBJoystick.cpp.
bool update | ( | ) |
Write a state of the mouse.
- Returns:
- true if there is no error, false otherwise
Definition at line 43 of file USBJoystick.cpp.
bool update | ( | int16_t | t, |
int16_t | r, | ||
int16_t | x, | ||
int16_t | y, | ||
uint8_t | buttons, | ||
uint8_t | hat | ||
) |
Write a state of the mouse.
- Parameters:
-
t throttle position r rudder position x x-axis position y y-axis position buttons buttons state hat hat state 0 (up), 1 (right, 2 (down), 3 (left) or 4 (neutral)
- Returns:
- true if there is no error, false otherwise
Definition at line 23 of file USBJoystick.cpp.
Generated on Wed Jul 13 2022 17:27:58 by 1.7.2