ARDUINO MEGA Functions Joysticks
(→Controller 1) |
|||
| Line 39: | Line 39: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
if(joystick.joy1_Buttons & 0x20) // if Button 6 is pressed on joy1: | if(joystick.joy1_Buttons & 0x20) // if Button 6 is pressed on joy1: | ||
| Line 66: | Line 66: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
if(joystick.joy1_TopHat == 0) // if the topmost button on joy1's D-Pad ('TopHat') is pressed: | if(joystick.joy1_TopHat == 0) // if the topmost button on joy1's D-Pad ('TopHat') is pressed: | ||
| Line 93: | Line 93: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
motor[servo_2] = joystick.joy1_x1; // servo_2's powerlevel is set to the left stick's current x-value | motor[servo_2] = joystick.joy1_x1; // servo_2's powerlevel is set to the left stick's current x-value | ||
} | } | ||
| Line 116: | Line 116: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
motor[servo_2] = joystick.joy1_y1; // servo_2's powerlevel is set to the left stick's current y-value | motor[servo_2] = joystick.joy1_y1; // servo_2's powerlevel is set to the left stick's current y-value | ||
} | } | ||
| Line 139: | Line 139: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
motor[servo_2] = joystick.joy1_x2; // servo_2's powerlevel is set to the right stick's current x-value | motor[servo_2] = joystick.joy1_x2; // servo_2's powerlevel is set to the right stick's current x-value | ||
} | } | ||
| Line 162: | Line 162: | ||
while(true) // infinite loop: | while(true) // infinite loop: | ||
{ | { | ||
| − | + | getPCJoystickSettings(joystick); // update buttons and joysticks | |
motor[servo_2] = joystick.joy1_y2; // servo_2's powerlevel is set the right stick's current y-value | motor[servo_2] = joystick.joy1_y2; // servo_2's powerlevel is set the right stick's current y-value | ||
} | } | ||
Revision as of 18:48, 9 May 2012
ARDUINO → Functions and Variables → ARDUINO MEGA Functions Joysticks
The Arduino supports a USB based joystick to send data from the PC over the USB link to the controller. You can access the joysticks by opening the "Joystick Control - Basic" joystick debugger window. For more information, see the different variables the joystick data will populate to below.
Example Code:
TPCJoystick joystick; while(true) { getPCJoystickSettings(joystick); motor[servo_2] = joystick.joy1_y1; motor[servo_3] = joystick.joy1_y2; if(joystick.joy1_Buttons & 0x01) writeDebugStream("Button 1 Pressed"); if(joystick.joy1_TopHat == 0) writeDebugStream("Top of TopHat Pressed"); }
|
| |||||||
Controller 1
joy1_Buttons
| TPCJoystick joy1_Buttons | |
| (TPCJoystick) Returns a "Bit Map" for the 12 buttons on Controller #1. For more information on how to use buttons to control actions, See the "Using Buttons" help section. | |
|
joy1_TopHat
| TPCJoystick joy1_TopHat | |
| (TPCJoystick) Returns the value of the direction pad (or "Top Hat") on Controller #1. A value of -1 is returned when nothing is pressed, and a value of 0 to 7 for selected "octant" when pressed. | |
|
joy1_x1
| TPCJoystick joy1_x1 | |
| (TPCJoystick) Value of the X Axis on the Left Joystick on Controller #1. Ranges in values between -128 to +127. | |
|
joy1_y1
| TPCJoystick joy1_y1 | |
| (TPCJoystick) Value of the Y Axis on the Left Joystick on Controller #1. Ranges in values between -128 to +127. | |
|
joy1_x2
| TPCJoystick joy1_x2 | |
| (TPCJoystick) Value of the X Axis on the Right Joystick on Controller #1. Ranges in values between -128 to +127. | |
|
joy1_y2
| TPCJoystick joy1_y2 | |
| (TPCJoystick) Value of the Y Axis on the Right Joystick on Controller #1. Ranges in values between -128 to +127. | |
|