#include <Servo.h>
Servo myservo;
Servo myservo2;
int modes = 0;
int ButtonPin = 9;
//float Potenc;
//float A = 5.683;
unsigned long previousMillis = 0;
const long interval = 1000;
void setup() {
// put your setup code here, to run once:
myservo.attach(11);
myservo2.attach(10);
//Serial.begin(115200);
pinMode(ButtonPin, INPUT);
digitalWrite(ButtonPin, HIGH);
//Serial.begin(9600);
}
void loop() {
unsigned long currentMillis = millis();
int ButtonState = digitalRead(ButtonPin);
// put your main code here, to run repeatedly:
//int value = analogRead(A0);
//Serial.println(value);
//delay(100);
if (ButtonState == LOW)
{
modes++;
Serial.println(modes);
}
if (modes == 1)
{
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
static int angle = 0;
static int angle2 = 90;
myservo2.write(angle2);
if(angle2 == 90)
{
delay(1000);
myservo.write(angle);
}
}
}
if (modes == 2)
{
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
static int angle = 90;
static int angle2 = 180;
myservo.write(angle);
if(angle == 90)
{
delay(1000);
myservo2.write(angle2);
}
}
}
/*if (modes == 3)
{
myservo.write(180);
delay(1000);
myservo.write(0);
delay(1000);
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
static bool direction = false;
myservo.write(direction ? 180 : 0);
direction = !direction;
}
}*/
if (ButtonState == HIGH && modes >= 2 )
{
modes = 0;
}
delay(100);
/*delay(1000);
myservo.write(45);
delay(1000);
myservo.write(90);
delay(1000);
myservo.write(45);
delay(1000);
myservo.write(0);*/
}
/*if (modes == 1)
{
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
static int angle = 0;
static int angle2 = 90;
myservo.write(angle);
myservo2.write(angle2);
}
}
if (modes == 2)
{
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
static int angle = 90;
static int angle2 = 0;
myservo.write(angle);
myservo2.write(angle2);
}
}*/