Paso 3: El código
/*
El circuito:
* LCD RS a pin digital pin 12
* LCD Enable pin a pin digital 11
* D4 LCD pin a pin digital 5
* D5 LCD pin a pin digital 4
* LCD D6 pin al pin digital 3
* LCD D7 pin al pin digital 2
* LCD R/W pin a tierra
* 10K resistencia:
* termina a + 5V y tierra
* limpiaparabrisas a pin (pin 3) del LCD VO
* Ultrasonido GND a A0
* Echo Ultransonic a1
* Disparador ultrasonido a3
* Ultrasonido VCC a A4
#include < LiquidCrystal.h >
*/
void setup() {}
fijar número la pantalla del LCD de filas y columnas:
LCD.Begin (16, 4);
pinMode (A4, salida); //attach pin 2 a vcc
pinMode (A0, salida); //attach pin 5 a GND
inicializar la comunicación serial:
Serial.Begin(9600);
lcd.setCursor (0, 0);
LCD.Print "(regla del ultrasónico con pantalla LCD");
lcd.setCursor (0, 1);
LCD.Print ("por Alex Willis");
}
void loop() {}
digitalWrite (A4, alto);
establecer las variables durante el ping,
y el resultado de la distancia en pulgadas y centímetros:
larga duración, pulgadas, cm;
El PING))) es accionado por un pulso alto de 2 o más microsegundos.
Dar un breve impulso de baja previamente para asegurar un pulso limpio alto:
pinMode (A3, salida); / / Coloque el pin 3 a Trig
digitalWrite (A3, LOW);
delayMicroseconds(2);
digitalWrite (A3, alta);
delayMicroseconds(5);
digitalWrite (A3, LOW);
El mismo pin se utiliza para leer la señal del PING))): un alto
pulso cuya duración es el tiempo (en microsegundos) de envío
del ping a la recepción de su eco de un objeto.
pinMode (A1, entrada); //attach pin 4 eco
duración = pulseIn (A1, alto);
convertir el tiempo en una distancia
pulgadas = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
lcd.setCursor (0, 2);
LCD.Print(inches);
LCD.Print ("in");
LCD.Print(cm);
LCD.Print("cm");
Delay(1000);
LCD.Clear();
}
microsecondsToInches(long microseconds) largo
{
Según ficha técnica de paralaje para el PING))), hay
73,746 microsegundos por pulgada (es decir, el sonido viaja a 1130 pies por
en segundo lugar). Esto da la distancia recorrida por el ping, saliente
y, por lo que dividimos por 2 para obtener la distancia del obstáculo.
Ver: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
volver microsegundos / 74 / 2;
}
microsecondsToCentimeters(long microseconds) largo
{
La velocidad del sonido es 340 m/s o 29 microsegundos por centímetro.
El ping viaja hacia fuera y hacia atrás, para encontrar la distancia de la
objeto que tomamos la mitad de la distancia recorrida.
volver microsegundos / 29 / 2;
}
Añadir este código y debería funcionar, aunque no es muy exacto, pero bueno! ¡ Funciona!