Skip to content

Instantly share code, notes, and snippets.

@davidquinte
Created March 25, 2022 20:09
Show Gist options
  • Save davidquinte/3e26abcdc686510a946d50b5b0387d05 to your computer and use it in GitHub Desktop.
Save davidquinte/3e26abcdc686510a946d50b5b0387d05 to your computer and use it in GitHub Desktop.
/*Semaforo : ROJO = 30,AMARILLO =25 ,VERDE=20;
1- Al recibir la instruccion de rojo sumar 30s ,2 amarillo 3 verde , 4 Encendido 5 Apagado, 6 Pausa 7Continuar;
*/
#define led 3
int Semaforo[led] = {5, 4, 3};
int Espera[3] = {3000, 2500, 2000};
char pause;
int i = 0;
void setup () {
Serial.begin(9600);
for (i = 0; i < led; i++) {
pinMode(Semaforo[i], OUTPUT);
}
}
void loop() {
//Secuencia();
if (Serial.available() > 0) {
pause = Serial.read();
}
parar();
}
void Secuencia() {
for ( i = 0; i < led; i++) {
digitalWrite(Semaforo[i], HIGH);
delay(Espera[i]);
digitalWrite(Semaforo[i], LOW);
}
}
void parar() {
switch (pause) {
case '1':
for ( i = 0; i < led; i++) {
digitalWrite(Semaforo[i], HIGH);
delay(Espera[i]);
digitalWrite(Semaforo[i], LOW);
}
break;
case '2':
for ( i = 1; i < led; i++) {
digitalWrite(Semaforo[i], HIGH);
delay(Espera[i]);
digitalWrite(Semaforo[i], LOW);
}
break;
case '3':
for ( i = 2; i < led; i++) {
digitalWrite(Semaforo[i], HIGH);
delay(Espera[i]);
digitalWrite(Semaforo[i], LOW);
}
break;
}
/*if (i == Semaforo[0]) {
digitalWrite(Semaforo[0], HIGH);
digitalWrite(Semaforo[1], LOW);
digitalWrite(Semaforo[2], LOW);
delay(3000000);
} else if (i == Semaforo[1]) {
digitalWrite(Semaforo[0], LOW);
digitalWrite(Semaforo[1], HIGH);
digitalWrite(Semaforo[2], LOW);
delay(3000000);
} else if (i == Semaforo[2]) {
digitalWrite(Semaforo[0], LOW);
digitalWrite(Semaforo[1], HIGH);
digitalWrite(Semaforo[2], LOW);
delay(3000000);
}
*/
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment