Documente Academic
Documente Profesional
Documente Cultură
#include <LiquidCrystal.h> // Entre los símbolos <> buscará en la carpeta de librerías configurada
// Número de muestras
bool primeraMedia = false; // Para saber que ya hemos calculado por lo menos una
void setup()
Serial.begin(9600);
pinMode(PinTrig, OUTPUT);
pinMode(PinEcho, INPUT);
// Inicializamos el array
lecturas[i] = 0;
// Configuramos las filas y las columnas del LCD en este caso 16 columnas y 2 filas
lcd.begin(COLS, ROWS);
void loop()
// La función pulseIn obtiene el tiempo que tarda en cambiar entre estados, en este caso a HIGH
// Obtenemos la distancia en cm, hay que convertir el tiempo en segudos ya que está en
microsegundos
lecturas[lecturaActual] = distancia;
lecturaActual = lecturaActual + 1;
primeraMedia = true;
lecturaActual = 0;
}
// Calculamos la media
if (primeraMedia)
lcd.clear();
// Cantidada de líquido
lcd.setCursor(0, 0);
// Porcentaje
lcd.setCursor(0, 1);
Serial.print(media);
Serial.println(" cm");
Serial.print(cantidadLiquido);
Serial.println(" ml");
}
else
lcd.setCursor(0, 0);
delay(500);
void iniciarTrigger()
digitalWrite(PinTrig, LOW);
delayMicroseconds(2);
digitalWrite(PinTrig, HIGH);
delayMicroseconds(10);
digitalWrite(PinTrig, LOW);
digitalWrite(PinTrig,HIGH):
delay(600);
digitalWrite(PinTrig, LOW);
delay(0);