Hola
Perdonar, he tenido que editar porque habia puesto que con los led fallaba y es al reves...
con los reles falla y con los leds va bien... por lo que supongo que es por hard.
Estoy haciendo pruebas de encender y apagar unos reles en una determinada secuencia sin que se lleguen a encender los dos a la vez y no hay forma...
Tengo al menos dos momentos en que se encienden los dos... uno es al principio y otro por el final.
Por favor, podeis indicarme algun posible error... porque llevo 2 horas dandole vueltas y no hay forma.
Segurisimo que teneis alguna forma para hacerlo mas sencillo lo cual por otro lado tambien agradeceria (supongo que seria con millis)... pero lo que quiero es aprender... es decir quiero saber donde esta mi fallo... o igual es que al usar delay termina fallando... no se...
int entrada = 9;
int salida = 8;
void setup() {
pinMode(entrada,OUTPUT);
pinMode(salida,OUTPUT);
digitalWrite(entrada,LOW);
digitalWrite(salida,LOW);
}
void loop() {
digitalWrite(entrada,HIGH);
digitalWrite(salida,LOW);
delay(1000);
digitalWrite(entrada,LOW); //para 1 sg
delay(1000);
digitalWrite(entrada,HIGH); //entra 3 sg
delay(3000);
digitalWrite(entrada,LOW); //para 1/4 sg
digitalWrite(salida,LOW);
delay(250);
digitalWrite(salida,HIGH); //sale 1 sg
delay(10000);
digitalWrite(salida,LOW); //para 1/4 sg
delay(250);
digitalWrite(entrada,HIGH); //entra 4 sg
delay(4000);
digitalWrite(entrada,LOW); //para 1/4 sg
delay(250);
digitalWrite(salida,HIGH); //sale 5 sg
delay(5000);
digitalWrite(salida,LOW); //para 1/4 sg
delay(250);
digitalWrite(entrada,HIGH); //entra 8 sg
delay(8000);
digitalWrite(entrada,LOW); //para 1/4 sg
delay(250);
digitalWrite(salida,HIGH); //sale 7 sg
delay(7000);
digitalWrite(salida,LOW); //para 1/4 sg
delay(250);
digitalWrite(entrada,HIGH); //entra 5 sg
delay(5000);
digitalWrite(entrada,LOW); //para 1/4 sg
delay(250);
digitalWrite(salida,HIGH); //sale 10 sg
delay(10000);
digitalWrite(salida,LOW); //para 1/4 sg
delay(250);
digitalWrite(entrada,HIGH); //entra 10 sg
delay(10000);
digitalWrite(entrada,LOW); //para 1/4 sg
delay(10000);
digitalWrite(salida,HIGH); //entra 10 sg
delay(10000);
digitalWrite(salida,LOW); //para 1/4 sg
delay(10000);
}
Por cierto, ahora que lo veo no hagais caso al tiempo de los delays con respecto al comentario porque he estado haciendo pruebas y no coinciden.