Tecnologia PT: 3 koraki
Tecnologia PT: 3 koraki
Anonim
Tecnologia PT
Tecnologia PT

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

Montaje
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"); }

Priporočena: