Anda di halaman 1dari 3

int estadoActual1=0;

int estadoActual2=0;
int estadoUltimo=0;
int contador=0;
int sensorLDR;
int juan=0;
int distancia;
unsigned long tiempo=0;

int pinRojo = 6;
int pinVerde = 3;
int pinAzul = 5;

void setup(){
pinMode(13,OUTPUT);
pinMode(8,INPUT);
pinMode(pinRojo, OUTPUT);
pinMode(pinVerde, OUTPUT);
pinMode(pinAzul, OUTPUT);

}
void loop(){
enviarYRecibir();
distancia = int(0.034*tiempo);
sensorLDR=analogRead(A0);
estadoActual1=digitalRead(8);
delay(10);
estadoActual2=digitalRead(8);
if (estadoActual1 == estadoActual2) {
if (estadoActual1 != estadoUltimo){
if (estadoActual1 == HIGH) {
contador = contador + 1;
}
}
}
estadoUltimo= estadoActual1;
juan=contador % 2;
if(juan==0){
if (sensorLDR<=341) {
Color(255, 0, 0); // Rojo
}
if (sensorLDR>341 && sensorLDR<=683) {
Color(0, 255, 0); // Verde
}
if (sensorLDR>683 && sensorLDR<=1023) {
Color(0, 0, 255); // Azul
}
digitalWrite(13,LOW);
}
else{
digitalWrite(13,HIGH);
if (20>distancia) {
Color(255, 255, 0); // Amarillo
}
else{
Color(255, 0, 255); // Fucsia
}
}
}

void Color (int rojo, int verde, int azul) {


analogWrite(pinRojo, rojo);
analogWrite(pinVerde, verde);
analogWrite(pinAzul, azul);
}
void enviarYRecibir(){
pinMode(2, OUTPUT);
digitalWrite(2, LOW);
delayMicroseconds(5);
digitalWrite(2, HIGH);
delayMicroseconds(5);
digitalWrite(2, LOW);
pinMode(2, INPUT);
tiempo=pulseIn(2, HIGH);
tiempo=tiempo/2;
}

Anda mungkin juga menyukai