#define  led_rouge  4 
#define  led_jaune  2 
#define  led_verte  3 

#define  led_rouge2  50 
#define  led_jaune2  51 
#define  led_verte2  52 

#define  bout_etat 0 

#define  vert_pieton 13
#define  rouge_pieton 12

#define  vert_pieton2 10
#define  rouge_pieton2 11

#define  captG 24
#define  captM 25
#define  captD 26


void setup()
{
  pinMode(4, OUTPUT);
  pinMode(2,OUTPUT);
  pinMode(3, OUTPUT);

  pinMode(50, OUTPUT);
  pinMode(51,OUTPUT);
  pinMode(52, OUTPUT);
  
  pinMode(8, INPUT);
  pinMode(7, INPUT);

  pinMode(24, INPUT);
  pinMode(25, INPUT);
  pinMode(26, INPUT);

  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);

  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);

  Serial.begin(9600);
}

void loop(){
  
 int broche8 = digitalRead(8);
while ((digitalRead(captG)==LOW)&&(digitalRead(captD)==LOW)){

  tricolore_CA();
}
  tricolore_CE();

while (digitalRead(captM)==LOW){

  tricolore_CA2();
}
  tricolore_CE2();

while ((digitalRead(captG)==LOW)&&(digitalRead(captD)==LOW)&&(digitalRead(captM)==LOW)){
tricolore_A(); 
Serial.print("apagnan");
}


if (digitalRead(8) == HIGH){
  tricolore_E();
  //Serial.println("e"); 
   
}
else if (digitalRead(8) == LOW){
  tricolore_A(); 
  //Serial.println("a");  
  
  

 
}
if (digitalRead(7) == HIGH){
  tricolore_E2();
  //Serial.println("e"); 
   
}
else if (digitalRead(7) == LOW){
  tricolore_A(); 
  //Serial.println("a");  
  
  

 
}



else if((digitalRead(captG) ==HIGH)||(digitalRead(captD) ==HIGH)){
  
  Serial.println("aaaaaaaaaaaaaaaa");
}


}

 void tricolore_A(){
   
  digitalWrite(led_verte, HIGH);
  digitalWrite(led_rouge2, HIGH);
  //
  digitalWrite(rouge_pieton2, HIGH);
  //
  ///
  digitalWrite(vert_pieton, HIGH);
  ///
  delay(1500);

  digitalWrite(led_verte, LOW);
  digitalWrite(led_jaune, HIGH);
  delay(1500);

  digitalWrite(led_jaune, LOW);
  digitalWrite(led_rouge2, LOW);
  //
  digitalWrite(rouge_pieton2, LOW);
  digitalWrite(vert_pieton2, HIGH);
  //
  ///
  digitalWrite(vert_pieton, LOW);
  digitalWrite(rouge_pieton, HIGH);
  ///
  digitalWrite(led_verte2, HIGH);
  digitalWrite(led_rouge, HIGH);
  delay(1500);

  digitalWrite(led_verte2, LOW);
  digitalWrite(led_jaune2, HIGH);
  delay(1500);

  //
  digitalWrite(vert_pieton2, LOW);
  digitalWrite(rouge_pieton2, HIGH);
  //
  
  digitalWrite(led_jaune2, LOW);
  digitalWrite(led_rouge, LOW);
  digitalWrite(rouge_pieton, LOW);
  digitalWrite(rouge_pieton2, LOW);
  
 }

void tricolore_E(){
  digitalWrite(led_rouge2, HIGH);
  digitalWrite(led_verte, HIGH);

  digitalWrite(vert_pieton, HIGH);
  digitalWrite(rouge_pieton2, HIGH);
  delay(10000);
   digitalWrite(led_rouge2, LOW);
  digitalWrite(led_verte, LOW);

  digitalWrite(vert_pieton, LOW);
  digitalWrite(rouge_pieton2, LOW);
  

   
 }
 void tricolore_E2(){
  digitalWrite(led_verte2, HIGH);
  digitalWrite(led_rouge, HIGH);

  digitalWrite(rouge_pieton, HIGH);
  digitalWrite(vert_pieton2, HIGH);
  delay(10000);
   digitalWrite(led_verte2, LOW);
  digitalWrite(led_rouge, LOW);

  digitalWrite(rouge_pieton, LOW);
  digitalWrite(vert_pieton2, LOW);


 }

 

 void tricolore_CA(){

    digitalWrite(led_rouge, HIGH);
  digitalWrite(led_verte2, HIGH);

  digitalWrite(rouge_pieton, HIGH);
  digitalWrite(vert_pieton2, HIGH);
  


 }
 void tricolore_CE(){

    digitalWrite(led_rouge, LOW);
  digitalWrite(led_verte2, LOW);

  digitalWrite(vert_pieton, LOW);
  digitalWrite(rouge_pieton2, LOW);
  


 }

 void tricolore_CA2(){

    digitalWrite(led_verte, HIGH);
  digitalWrite(led_rouge2, HIGH);

  digitalWrite(rouge_pieton2, HIGH);
  digitalWrite(vert_pieton, HIGH);
  


 }
 void tricolore_CE2(){

    digitalWrite(led_rouge2, LOW);
  digitalWrite(led_verte, LOW);

  digitalWrite(vert_pieton2, LOW);
  digitalWrite(rouge_pieton, LOW);
  


 }