// TUTORIAL > MIO
// 2 > 0 - led POS
// 12 > 3 - TRIG
// 13 > 2 - ECHO
int DISTANCIA = 0;
int pinLed = 0;
int pinEco = 3;
int pinGatillo = 2;
long readUltrasonicDistance(int triggerPin, int echoPin)
{
Serial.println("readUltrasonicDistance");
// Iniciamos el pin del emisor de sonido en salid
pinMode(triggerPin, OUTPUT);
// Apagamos el emisor de sonido para comenzar con señal limpia
digitalWrite(triggerPin, LOW);
// Retrasamos la emisión de sonido por 2 milésimas de segundo
delayMicroseconds(2);
// Comenzamos a emitir el sonido
digitalWrite(triggerPin, HIGH);
// Emitimos el sonido durante 10 milésimas de segundo
delayMicroseconds(20);
// Apagamos el emisor de sonido
digitalWrite(triggerPin, LOW);
// Comenzamos a escuchar el sonido
pinMode(echoPin, INPUT);
// Devolvemos el cálculo del tiempo que ha tardado en regresar el sonido
return pulseIn(echoPin, HIGH);
}
void setup() {
Serial.begin(115200);
// Configuro el pin del LED como de SALIDA
pinMode(pinLed, OUTPUT);
}
void loop() {
// Calculamos la distancia en CM
DISTANCIA = 0.01723 * readUltrasonicDistance(pinGatillo, pinEco);
// Mostramos la distancia
Serial.println(DISTANCIA);
// Si la distancia es menor de 20 cm enciendo el LED
if(DISTANCIA < 20){
digitalWrite(pinLed, HIGH);
} else{
digitalWrite(pinLed, LOW);
}
delay(10); // this speeds up the simulation
}