#include <Servo.h>
#define pb1 2
#define pb2 3
#define ledr 4
#define ledy 5
#define ledg 6
int pb1state;
int pb2state;
Servo servo1;
void setup() {
servo1.attach(9);
pinMode(pb2, INPUT_PULLUP);
pinMode(pb1, INPUT_PULLUP);
pinMode(ledr, OUTPUT);
pinMode(ledy, OUTPUT);
pinMode(ledg, OUTPUT);
servo1.write(90);
}
void crossing(){
delay(1000);
digitalWrite(ledr, 0);
digitalWrite(ledy, 1);
digitalWrite(ledg, 0);
delay(1000);
digitalWrite(ledr, 1);
digitalWrite(ledy, 0);
digitalWrite(ledg, 0);
servo1.write(0);
delay(5000);
digitalWrite(ledr, 0);
digitalWrite(ledy, 1);
digitalWrite(ledg, 0);
delay(1000);
servo1.write(90);
digitalWrite(ledr, 0);
digitalWrite(ledy, 0);
digitalWrite(ledg, 1);
}
void nocrossing(){
digitalWrite(ledg, 1);
servo1.write(90);
}
void loop(){
pb1state = digitalRead(pb1);
delay(100);
if(pb1state == 1){
delay(50);
nocrossing();
}
if(pb1state == 0){
delay(50);
crossing();
}
Serial.println(pb1state);
}