Hola a todos, soy nuevo en esto de realizar proyectos con arduino y tengo un problemita, primeramente lo hice con 1 led basandome en tutoriales de YouTube y funciono sin problema y ahora lo quiero hacer con 2 led .
Bueno hice una aplicaci贸n en app inventor el cual tiene 2 botones los cuales al presionarlos encender谩n los 2 leds en distinto momento.
Lo que busco con el c贸digo es que una vez encendido mi led1 pasado 1 segundo se apague autom谩ticamente lo cual si se cumple.
Pero el detalle est谩 con mi led2, el cual al presionar el bot贸n 2 si enciende pero pasado el segundo no se apaga , solo cuando enciendo mi led1 y pasado un 1 segundo se apagan ambos led. Donde estaria el error?? Ayuda por favor.
int led1=4;
int led2=7;
int estado=0;
insigned long tiempoanterior = 0;
long espera = 1000;
void setup() {
Serial.begin(9600);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
}
void loop() {
if (Serial.available()>0){
estado = Serial.read();
if (estado == '1'){
digitalWrite(led1,HIGH);
tiempoanterior = millis();
}
}
if(millis() = tiempoanterior > espera){
digitalWrite(led1,LOW);
}
if (estado == '2'){
digitalWrite(led2,HIGH);
tiempoanterior = millis();
}
if(millis() = tiempoanterior > espera){
digitalWrite(led2,LOW);
}
}
Moderador:
Por favor, lee las Normas del foro y edita tu c贸digo/error usando etiquetas de c贸digo.
Ve a edici贸n, luego selecciona todo el c贸digo que has publicado, lo cortas y click en </>
Aunque sea una l铆nea de c贸digo debe ir con etiquetas. Hablo de tu respuesta.
Edita el t铆tulo retirando la palabra Ayuda tal como lo indica el punto 5 acerca de c贸mo poner t铆tulos en este foro.
Con este cambio lo prob茅, no boto error todo bien, solo que sigue lo mismo. El led1 se apaga autom谩ticamente despues de 1 segundo. Pero el led2 no, solo cuando enciendo el led1 reci茅n se apagan ambos despues de 1 segundo.
Ah y no era asi:
if(millis() = tiempoanterior2 > espera){
Si no:
if(millis() - tiempoanterior2 > espera){
int led1=4;
int led2=7;
int estado=0;
insigned long tiempoanterior1 = 0;
insigned long tiempoanterior2 = 0;
long espera = 1000;
void setup() {
Serial.begin(9600);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
}
void loop() {
if (Serial.available()>0){
estado = Serial.read();
if (estado == '1'){
digitalWrite(led1,HIGH);
tiempoanterior1 = millis();
}
}
if(millis() - tiempoanterior1 > espera){
digitalWrite(led1,LOW);
}
if (estado == '2'){
digitalWrite(led2,HIGH);
tiempoanterior2 = millis();
}
if(millis() - tiempoanterior2 > espera){
digitalWrite(led2,LOW);
}
}