tilt-table-arduino/arduino_controller/arduino_controller.ino

43 lines
1.8 KiB
C++

/* Funduino Joystick Shield Example
This program simply captures all of the inputs of the Funduino Joystick Shield buttons and
joystick every second and displays them in the Serial Monitor Window.
The Arduino pins below are defined by the shield and cannot be changed.
*/
int const UP_BTN = 2;
int const DOWN_BTN = 4;
int const LEFT_BTN = 5;
int const RIGHT_BTN = 3;
int const E_BTN = 6;
int const F_BTN = 7;
int const JOYSTICK_BTN = 8;
int const JOYSTICK_AXIS_X = A0;
int const JOYSTICK_AXIS_Y = A1;
int buttons[] = {UP_BTN, DOWN_BTN, LEFT_BTN, RIGHT_BTN, E_BTN, F_BTN, JOYSTICK_BTN};
//===============================================================================
// Initialization
//===============================================================================
void setup() {
//Set all button pins as inputs with internal pullup resistors enabled.
for (int i; i < 7; i++) pinMode(buttons[i], INPUT_PULLUP);
Serial.begin(9600);
}
//===============================================================================
// Main
//===============================================================================
void loop() {
// Check each button input and print the status to the Serial Monitor Window
Serial.print("UP="),Serial.print(digitalRead(UP_BTN));
Serial.print("\tDOWN="),Serial.print(digitalRead(DOWN_BTN));
Serial.print("\tLEFT="),Serial.print(digitalRead(LEFT_BTN));
Serial.print("\tRIGHT="),Serial.print(digitalRead(RIGHT_BTN));
Serial.print("\tE="),Serial.print(digitalRead(E_BTN));
Serial.print("\tF="),Serial.print(digitalRead(F_BTN));
Serial.print("\tJOYSTICK BTN="),Serial.print(digitalRead(JOYSTICK_BTN));
// Print the full X/Y joystick values (0-1023)
Serial.print("\tX="),Serial.print(analogRead(JOYSTICK_AXIS_X));
Serial.print("\tY="),Serial.println(analogRead(JOYSTICK_AXIS_Y));
delay(250);
}