Video: Tecnologia PT: 3 koraki
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
En este vadbe padres encontrar como hacer que la información dada por el sensor BMP180 are müstre en el LCD, fusionando los montajes y los códigos. Espero que les sea útil
1. korak: Materiales
Če želite, da naprava ne združuje in povezuje protokolarno ploščo z uporabo LCD -ja in senzorja BMP180, je potrebno los siguientes materiales:
1. Protoboard
2. Arduino Uno
3. LCD
4. Senzor BMP180
5. Kabli (19)
6. Potenciometro
7. Predhodne knjižnice (3 (LiquidCrystal, Wire, SFE_BMP180))
*La libreria de BMP180 puede ser descargada en sparkfun.com
2. korak: Montaje
Priporočila: Conecte cada aparato por separado en orden (ej: primero LCD, luego BMP180 y ultimo Potenciometro)
3. korak: Codigo
Uporabite el código BMP altitud example example proporcionado en los ejemplos de la librería instalada (BMP180) en Arduino como el código base. Če želite, da je vklopljen servis s tekočino LiquidCristal Helloworld, je ta tablični računalnik nameščen na Arduinu, če želite prikazati zaslon na LCD -prikazovalniku z najnovejšimi datotekami, ki jih je treba prikazati. El código es el siguiente:
V10 Mike Grusin, SparkFun Electronics 24.10.2013 V1.1.2 Posodobitve za Arduino 1.6.4 *
/ Debes incluir las librerias BMP180, Wire y LiquidCrystal en este proyecto
// (Wire y LiquidCrystal son librerias standard de Arduino)
#vključi
#include #include
// Inicializa la libreria con los pines de interface
LCD tekoči kristal (12, 11, 5, 4, 3, 2);
// Necesitara crear un objet SFE_BM0180, aqui llamado "pressure":
Tlak SFE_BMP180;
dvojno izhodišče;
void setup ()
{Serial.begin (9600); lcd.println ("Znova zaženi"); lcd.begin (16, 2); // Natisnite sporočilo na LCD. lcd.print ("");
// Inicializa el sensor (es importante tener los valores calibrados guardados en el dispositivo
če (pressure.begin ())
Serial.println ("BMP180 init uspeh"); else {// si tiene problemas o errores en el codigo, consulte la parte de arriba del codigo.
lcd.println ("BMP180 init fail (odklopljen?) n / n");
medtem ko (1); // Pausa infinita}
// Dobite osnovni tlak:
baseline = getPressure (); lcd.print ("osnovni tlak:"); lcd.print (izhodišče); lcd.println ("mb"); }
void loop ()
{dvojni a, P; // Consigue nuevos valores de presion
P = getPressure ();
// Muestra la altitud relativa
a = višina tlaka (P, izhodišče);
lcd.print ("relativna višina:"); if (a> = 0,0) Serial.print (""); // dodamo presledek za pozitivna števila lcd.print (a, 1); lcd.print ("števci"); if (a> = 0,0) Serial.print (""); // dodamo presledek za pozitivna števila lcd.print (a*3.28084, 0); lcd.println ("stopala"); zamuda (500); }
double getPressure ()
{char status; dvojni T, P, p0, a;
// Za odčitavanje tlaka morate najprej izmeriti temperaturo. Debes tener una medida de temperature antes de tener una lectura de presion
// Začnite merjenje temperature: Empieza una medicion de temperature // Si no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0
status = pressure.startTemperature ();
if (status! = 0) {// Espere a que se termine la medicion de la temperature
zamuda (stanje);
// Recupera la medida de completa de temperature
// Esta medida esta guardada en la variable T // Utiliza & T para dar la direccion de T a la funcion. // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0
status = tlak.getTemperature (T);
if (status! = 0) {// Začnite merjenje tlaka: Comienza la medicion de la presion // Parameter je nastavitev prevelikega vzorčenja, od 0 do 3 (najvišja ločljivost, najdaljše čakanje). El parametro sobremuestra la configuracion, de 0 a 3 // Si no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0
status = tlak.startPressure (3);
if (status! = 0) {// Espere a que termine la medicion de la presion delay (status);
// Recupere la medicion completa de la presion
// Notese que la medida esta almacenada en la variable P // Uporabite '& P' za navedbo naslova P. Utilice & P para dar la direccion de P // Notese tambien que la funcion requiere una medida previa de temperature // (Si la temperatura es estable, puedes hacer una medicion de temperature para las medidas de presion) // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0
status = tlak.getPressure (P, T);
if (status! = 0) {return (P); } else Serial.println ("napaka pri pridobivanju merjenja tlaka / n"); } else Serial.println ("napaka pri zagonu merjenja tlaka / n"); } else Serial.println ("napaka pri pridobivanju merjenja temperature / n"); } else Serial.println ("napaka pri zagonu merjenja temperature / n"); }