int DISTANCIA = 0;
int pinRed = 2; // Pin del LED rojo
int pinGreen = 19; // Pin del LED verde
int pinBlue = 4; // Pin del LED azul
int pinBuzzer = 5; // Pin del buzzer
int pinEco = 12; // Pin ECHO del sensor ultrasónico
int pinGatillo = 13; // Pin TRIG del sensor ultrasónico
long readUltrasonicDistance(int triggerPin, int echoPin) {
pinMode(triggerPin, OUTPUT);
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
pinMode(echoPin, INPUT);
long duration = pulseIn(echoPin, HIGH);
return duration;
}
void setup() {
Serial.begin(115200);
pinMode(pinRed, OUTPUT);
pinMode(pinGreen, OUTPUT);
pinMode(pinBlue, OUTPUT);
pinMode(pinBuzzer, OUTPUT);
// Inicializa el LED en verde
digitalWrite(pinRed, LOW);
digitalWrite(pinGreen, HIGH);
digitalWrite(pinBlue, LOW);
digitalWrite(pinBuzzer, LOW);
Serial.println("Setup completo");
}
void loop() {
DISTANCIA = 0.01723 * readUltrasonicDistance(pinGatillo, pinEco);
Serial.print("Distancia: ");
Serial.println(DISTANCIA);
if (DISTANCIA < 30) {
digitalWrite(pinRed, HIGH); // Encender LED rojo
digitalWrite(pinGreen, LOW); // Apagar LED verde
digitalWrite(pinBlue, LOW); // Apagar LED azul
digitalWrite(pinBuzzer, HIGH); // Encender buzzer
Serial.println("LED Rojo encendido, parlante encendido");
} else {
digitalWrite(pinRed, LOW); // Apagar LED rojo
digitalWrite(pinGreen, HIGH); // Encender LED verde
digitalWrite(pinBlue, LOW); // Apagar LED azul
digitalWrite(pinBuzzer, LOW); // Apagar buzzer
Serial.println("LED Verde encendido, buzzer apagado");
}
delay(100);
}