for whell
USBJoystick Class Reference
USBJoystick example. More...
#include <USBJoystick.h>
Public Member Functions | |
| USBJoystick (uint16_t vendor_id=0x1234, uint16_t product_id=0x0600, uint16_t product_release=0x0001, int waitForConnect=true) | |
| Constructor. | |
| bool | update (int16_t s) |
| Write state of the joystick. | |
| bool | update () |
| Write state of the joystick. | |
| bool | steering (int16_t s) |
| 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 | buttons (uint32_t buttons) |
| Press one or several buttons. | |
| bool | hat (uint8_t hat) |
| Press hat. | |
| virtual uint8_t * | reportDesc () |
| To define the report descriptor. | |
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" USBJoystick joystick; int main(void) { uint16_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; uint32_t buttons = 0; uint8_t hat = 0; while (1) { // Basic Joystick throttle = (i >> 8) & 0xFF; // value -127 .. 128 rudder = (i >> 8) & 0xFF; // value -127 .. 128 buttons = (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, buttons, hat); wait(0.001); } }
Definition at line 145 of file USBJoystick.h.
Constructor & Destructor Documentation
| USBJoystick | ( | uint16_t | vendor_id = 0x1234, |
| uint16_t | product_id = 0x0600, |
||
| uint16_t | product_release = 0x0001, |
||
| int | waitForConnect = true |
||
| ) |
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 157 of file USBJoystick.h.
Member Function Documentation
| bool buttons | ( | uint32_t | buttons ) |
Press one or several buttons.
- Parameters:
-
buttons buttons 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.
| uint8_t * reportDesc | ( | ) | [virtual] |
To define the report descriptor.
Warning: this method has to store the length of the report descriptor in reportLength.
- Returns:
- pointer to the report descriptor
Definition at line 102 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 steering | ( | int16_t | s ) |
Move the throttle position.
- Parameters:
-
t throttle position
- Returns:
- true if there is no error, false otherwise
Definition at line 83 of file USBJoystick.cpp.
| bool update | ( | int16_t | s ) |
Write state of the joystick.
- 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 30 of file USBJoystick.cpp.
| bool update | ( | ) |
Write state of the joystick.
- Returns:
- true if there is no error, false otherwise
Definition at line 46 of file USBJoystick.cpp.
Generated on Fri Jul 15 2022 10:20:04 by
1.7.2