#include <Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
const int joyXPin = A0;
const int joyYPin = A1;
const int buttonPin = 2;
const int joyXPin2 = A2;
const int joyYPin2 = A3;
const int buttonPin2 = 3;
const int deadZone = 20;
void setup() {
servo1.attach(9);
servo2.attach(10);
pinMode(buttonPin, INPUT);
servo3.attach(5);
servo4.attach(6);
pinMode(buttonPin2, INPUT);
}
void loop() {
int joyX = analogRead(joyXPin);
int joyY = analogRead(joyYPin);
int buttonState = digitalRead(buttonPin);
int joyX2 = analogRead(joyXPin2);
int joyY2 = analogRead(joyYPin2);
int buttonState2 = digitalRead(buttonPin2);
if (buttonState == HIGH) {
servo1.write(90);
servo2.write(90);
} else {
if (abs(joyX - 512) < deadZone) {
joyX = 512;
}
if (abs(joyY - 512) < deadZone) {
joyY = 512;
}
int angle1 = map(joyY, 0, 1023, 0, 180);
int angle2 = map(joyX, 0, 1023, 0, 180);
servo1.write(angle1);
servo2.write(angle2);
if (buttonState2 == HIGH) {
servo3.write(90);
servo4.write(90);
} else {
if (abs(joyX2 - 512) < deadZone) {
joyX2 = 512;
}
if (abs(joyY2 - 512) < deadZone) {
joyY2 = 512;
}
int angle3 = map(joyY2, 0, 1023, 0, 180);
int angle4 = map(joyX2, 0, 1023, 0, 180);
servo3.write(angle3);
servo4.write(angle4);
}
delay(15);
}
}