Inhoudsopgave:

Tecnologia PT: 3 stappen
Tecnologia PT: 3 stappen

Video: Tecnologia PT: 3 stappen

Video: Tecnologia PT: 3 stappen
Video: Лекция JADAM Часть 3. ДВА секретных ключевых слова сельскохозяйственных технологий. 2024, November
Anonim
Tecnologia PT
Tecnologia PT

En este tutorial tips encontrar 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

Stap 1: Materialen

Voor het gebruik van de code en het gebruik van het protoboard van de LCD en de sensor BMP180 moeten de volgende materialen worden gebruikt:

1. Protoboard

2. Arduino Uno

3. LCD

4. Sensor BMP180

5. Kabels (19)

6. Potentiële metro

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

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

Stap 2: Montaje

Montaje
Montaje

Recomendaciones: Conecte cada aparato por separado en orden (ej: primero LCD, luego BMP180 en ultimo Potenciometro)

Stap 3: Codigo

Gebruik een voorbeeld van een BMP altitud-voorbeeld en een los ejemplos de la librería instalada (BMP180) en Arduino como el código base. Het is mogelijk om een fusie aan te gaan met LiquidCristal Helloworld, die wordt gebruikt voor Arduino, voor een LCD-scherm en om de gegevens van de sensor te wijzigen. El codigo es el siguiente:

V10 Mike Grusin, SparkFun Electronics 24-10-2013V1.1.2 Updates voor Arduino 1.6.4 *

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

// (Wire en LiquidCrystal son librerias standard de Arduino)

#erbij betrekken

#include #include

// Inicializa la libreria con los pines de interface

LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

// Maak een object SFE_BM0180, aqui llamado "druk":

SFE_BMP180 druk;

dubbele basislijn;

ongeldige setup()

{ Serieel.begin (9600); lcd.println ("REBOOT"); lcd.begin (16, 2); // Druk een bericht af op het LCD-scherm. lcd.print("");

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

if (druk.begin())

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

lcd.println("BMP180 init mislukt (losgekoppeld?)\n\n");

terwijl(1); // Pauze oneindig }

// Verkrijg de basislijndruk:

basislijn = getPressure(); lcd.print("basisdruk: "); lcd.print(basislijn); lcd.println("mb"); }

lege lus()

{ dubbele a, P; // Consigue nuevos valores de presion

P = getPressure();

// Muestra la altitud relativa

a = druk.hoogte(P, basislijn);

lcd.print("relatieve hoogte: "); if (a >= 0.0) Serial.print(" "); // voeg een spatie toe voor positieve getallen lcd.print(a, 1); lcd.print(" meter, "); if (a >= 0.0) Serial.print(" "); // voeg een spatie toe voor positieve getallen lcd.print(a*3.28084, 0); lcd.println("voeten"); vertraging (500); }

dubbele getPressure()

{ tekenstatus; dubbele T, P, p0, a;

// U moet eerst een temperatuurmeting krijgen om een drukmeting uit te voeren. Debes tener una medida de temperatura antes de tener una lectura de presion

// Start een temperatuurmeting:Empieza una medicion de temperatura // Si geen hooi fouten, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0

status = druk.startTemperatuur();

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

vertraging (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 no hay errores, de lo contrario marcara 0

status = druk.getTemperature(T);

if (status != 0) { // Start een drukmeting: Comienza la medicion de la presion // De parameter is de oversampling-instelling, van 0 tot 3 (hoogste res, langste wachttijd). 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 = druk.startDruk (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 // Gebruik '&P' om het adres van P. Utilice &P para dar la direccion de P // Notese tambien que la funcion requiere una medida previa de temperatura // (Si de temperatuur is stabiel, er is een medicijn van de temperatuur voor de medidas de presion) // Sila ffuncion muestra 1 geen hooi fouten, de lo contrario marcara 0

status = druk.getPressure(P, T);

if (status != 0) { return(P); } else Serial.println("fout bij ophalen van drukmeting\n"); } else Serial.println("fout bij starten van drukmeting\n"); } else Serial.println("fout bij ophalen van temperatuurmeting\n"); } else Serial.println("fout bij starten temperatuurmeting\n"); }

Aanbevolen: