Inhaltsverzeichnis:

Tecnologia PT - Gunook
Tecnologia PT - Gunook

Video: Tecnologia PT - Gunook

Video: Tecnologia PT - Gunook
Video: Tecnologias que fazem 10 anos em 2023 (Pt. 1) #googleglass #nostalgia #tecnologia 2024, Juli
Anonim
Tecnologia PT
Tecnologia PT

En este tutorial padres como hacer que la información dada por el sensor BMP180 se muestre en el LCD, fusionando los montajes y los códigos. Espero que les sea útil

Schritt 1: Materialien

Para hacer un código y una conexión en el protoboard utilizando el LCD y el Sensor BMP180 sene notwendige Materialien:

1. Protoboard

2. Arduino Uno

3. LCD

4. Sensor BMP180

5. Kabel (19)

6. Potenziometer

7. Bibliotheken previamente instaladas(3(LiquidCrystal, Wire, SFE_BMP180))

*La libreria de BMP180 puede ser descargada en sparkfun.com

Schritt 2: Montaje

Montaje
Montaje

Empfehlenswert: Conecte cada aparato por separado en orden (zB: primeo LCD, luego BMP180 y por ultimo Potenciometro)

Schritt 3: Codigo

Verwenden Sie das Código-BMP-Höhenbeispiel-Proporcionado und die freie Installation (BMP180) und die Arduino-Como-Código-Basis. Dies ist eine Kombination aus einer Fusion mit LiquidCristal Helloworld, einer Kombination aus Arduino und einem LCD-Display, das für den Sensor verwendet wird. El código es el siguiente:

V10 Mike Grusin, SparkFun Electronics 24.10.2013V1.1.2 Updates für Arduino 1.6.4 *

/ Debes incluir las librerias BMP180, Wire y LiquidCrystal und este proyecto

// (Wire y LiquidCrystal Son Librerias Standard de Arduino)

#enthalten

#einschließen #einschließen

// Inicializa la libreria con los pines de interface

Flüssigkristall-LCD (12, 11, 5, 4, 3, 2);

// Necesitara crear un objet SFE_BM0180, aqui lamado "Druck":

SFE_BMP180-Druck;

doppelte Grundlinie;

Void-Setup ()

{ Serial.begin (9600); lcd.println("REBOOT"); lcd.begin(16, 2); // Eine Nachricht auf dem LCD ausgeben. lcd.print("");

// Inicializa el sensor (es wichtig tener los valores calibrados guardados en el dispositivo

if (Druck. Begin())

Serial.println ("BMP180-Initialisierung erfolgreich"); else { // si tiene problemas o errores en el codigo, consulte la parte de arriba del codigo.

lcd.println("BMP180-Init fehlgeschlagen (getrennt?)\n\n");

während(1); // Pause infinita }

// Holen Sie sich den Grundliniendruck:

Grundlinie = getPressure(); lcd.print("Basisliniendruck: "); lcd.print (Grundlinie); lcd.println("mb"); }

Leere Schleife ()

{Doppela, P; // Consigue nuevos valores de presion

P = getPressure();

// Muestra la altitud relativa

a = Druck. Höhe (P, Grundlinie);

lcd.print("relative Höhe: "); if (a >= 0.0) Serial.print (" "); // Leerzeichen für positive Zahlen hinzufügen lcd.print(a, 1); lcd.print(" Meter, "); if (a >= 0.0) Serial.print (" "); // füge ein Leerzeichen für positive Zahlen hinzu lcd.print(a*3.28084, 0); lcd.println("Füße"); Verzögerung (500); }

doppelter getPressure()

{ Zeichenstatus; doppeltes T, P, p0, a;

// Sie müssen zuerst eine Temperaturmessung durchführen, um eine Druckmessung durchzuführen. Debes tener una medida de temperatura antes de tener una lectura de presion

// Starten Sie eine Temperaturmessung: Empieza una medicion de temperatura // Si no hay errores, el numero de ms para esperar se mostrara. // Si Heufehler, se mostrara un 0

status = pressure.startTemperature();

if (status != 0) {// Espere a que se termine la medicion de la temperatura

Verzögerung (Status);

// Recupera la medida de completa de temperatura

// Esta medida esta guardada en la variable T // Utiliza &T para dar la direccion de T a la funcion. // Si la ffuncion muestra 1 keine Heufehler, de lo contrario marcara 0

Status = Druck.getTemperature(T);

if (status != 0) { // Druckmessung starten: Comienza la medicion de la presion // Der Parameter ist die Oversampling-Einstellung von 0 bis 3 (höchste Auflösung, längste Wartezeit). El parametro sobremuestra la configuracion, de 0 a 3 // Si no hay errores, el numero de ms para esperar se mostrara. // Si Heufehler, se mostrara un 0

Status = Druck.startDruck(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 // Verwenden Sie '&P', um die Adresse von P anzugeben. Utilice &P para dar la direccion de P // Notese tambien que la funcion requiere una medida previa de temperature la temperatura estable, puedes hacer una medicion de temperatura para las medidas de presion) // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0

Status = Druck.getPressure(P, T);

if (status != 0) { return(P); } else Serial.println ("Fehler beim Abrufen der Druckmessung / n"); } else Serial.println ("Fehler beim Starten der Druckmessung / n"); } else Serial.println ("Fehler beim Abrufen der Temperaturmessung / n"); } else Serial.println ("Fehler beim Starten der Temperaturmessung\n"); }