Offline
Newbie
Karma: 0
Posts: 2
|
 |
« on: December 06, 2012, 02:39:43 pm » |
Estoy haciendo un proyecto, que es un identificador de colores, el problema es que tengo el código:
int valor=0; int verde=9; int rojo=10; int amarillo=8; int azul=11; int blanco=12;
void setup() { pinMode(rojo,OUTPUT); pinMode(verde,OUTPUT); pinMode(amarillo,OUTPUT); pinMode(azul,OUTPUT); pinMode(blanco,OUTPUT);
Serial.begin(9600); }
void loop() {
valor = analogRead(A4); Serial.println(valor); delay(5000); if (valor == 0) { digitalWrite(verde,HIGH); delay(5000); Serial.println("verde"); } else { if (valor == 2 || valor == 3) { digitalWrite(rojo,HIGH); delay(5000); Serial.println("rojo"); } else { if (valor == 4 || valor == 5) { digitalWrite(amarillo,HIGH); delay(5000); Serial.println("amarillo"); } else { if (valor == 22 || valor == 23) { digitalWrite(azul,HIGH); delay(5000); Serial.println("azul"); } else { if (valor == 86 || valor == 87) { digitalWrite(blanco,HIGH); delay(5000); Serial.println("blanco"); } else { digitalWrite(verde,LOW); digitalWrite(rojo,LOW); digitalWrite(amarillo,LOW); digitalWrite(azul,LOW); digitalWrite(blanco,LOW); } } } }
} }
El problema es que lo mando a un APR9600 para que me de una respuesta de audio y me activa todas las salidas digitales por lo tanto se activa siempre el primer mensaje y si le doy LOW a los pines igualmente me lo hace, ¿QUE PUEDO HACER?
|