//
#include <Arduino.h>
//
#define JOYSTICK_X A0
#define JOYSTICK_Y A1
//
#define LED_PIN_1 2
#define LED_PIN_2 3
#define LED_PIN_3 4
#define LED_PIN_4 5
#define LED_PIN_5 6
#define LED_PIN_6 7
#define LED_PIN_7 8
#define LED_PIN_8 9
//
#define JOYSTICK_CENTER 512
#define JOYSTICK_THRESHOLD 100
void setup() {
//
pinMode(LED_PIN_1, OUTPUT);
pinMode(LED_PIN_2, OUTPUT);
pinMode(LED_PIN_3, OUTPUT);
pinMode(LED_PIN_4, OUTPUT);
pinMode(LED_PIN_5, OUTPUT);
pinMode(LED_PIN_6, OUTPUT);
pinMode(LED_PIN_7, OUTPUT);
pinMode(LED_PIN_8, OUTPUT);
//
Serial.begin(9600);
}
void loop() {
//
int xValue = analogRead(JOYSTICK_X);
int yValue = analogRead(JOYSTICK_Y);
//
Serial.print("X: ");
Serial.print(xValue);
Serial.print(" Y: ");
Serial.println(yValue);
//
if (xValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_1, HIGH);
} else {
digitalWrite(LED_PIN_1, LOW);
}
if (xValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_2, HIGH);
} else {
digitalWrite(LED_PIN_2, LOW);
}
if (yValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_3, HIGH);
} else {
digitalWrite(LED_PIN_3, LOW);
}
if (yValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_4, HIGH);
} else {
digitalWrite(LED_PIN_4, LOW);
}
//
if (xValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD && yValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_5, HIGH);
} else {
digitalWrite(LED_PIN_5, LOW);
}
if (xValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD && yValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_6, HIGH);
} else {
digitalWrite(LED_PIN_6, LOW);
}
if (xValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD && yValue > JOYSTICK_CENTER + JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_7, HIGH);
} else {
digitalWrite(LED_PIN_7, LOW);
}
if (xValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD && yValue < JOYSTICK_CENTER - JOYSTICK_THRESHOLD) {
digitalWrite(LED_PIN_8, HIGH);
} else {
digitalWrite(LED_PIN_8, LOW);
}
//
delay(100);
}