Cuprins:

Tecnologia PT: 3 pași
Tecnologia PT: 3 pași

Video: Tecnologia PT: 3 pași

Video: Tecnologia PT: 3 pași
Video: Cei 3 Pasi pentru a Profesa in Securitate IT 2024, Noiembrie
Anonim
Tecnologia PT
Tecnologia PT

În acest tutorial se găsesc cum puteți face informațiile date pentru senzorul BMP180 care se află în LCD, fuzionând montajele și codurile. Espero que les sea útil

Pasul 1: Materiale

Pentru a face un cod și o conexiune în protoboard folosind LCD-ul și senzorul BMP180 se necesită următoarele materiale:

1. Protoboard

2. Arduino Uno

3. LCD

4. Senzor BMP180

5. Cabluri (19)

6. Potențiometru

7. Biblioteci instalate anterior (3 (LiquidCrystal, Wire, SFE_BMP180))

* La libreria de BMP180 poate fi descărcat în sparkfun.com

Pasul 2: Montaj

Montaj
Montaj

Recomendări: Conectează fiecare aparat prin separare în ordine (ej: primul LCD, apoi BMP180 și pentru ultimul Potenciometro)

Pasul 3: Codigo

Se utilizează codul BMP altitudine exemplu furnizat în exemplele bibliotecii instalate (BMP180) în Arduino ca și codul de bază. Acest cod are care să fie fuzionat cu codul LiquidCristal Helloworld, care de asemenea este un exemplu de Arduino, pentru că în afișajul LCD se muestrează datele pe care le comandă senzorul. Codul este următorul:

V10 Mike Grusin, SparkFun Electronics 10/24 / 2013V1.1.2 Actualizări pentru Arduino 1.6.4 *

/ Debes include libreriile BMP180, Wire y LiquidCrystal în acest proiect

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

#include

#include #include

// Inicializa libreria cu pinii de interfață

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

// Necesitara crearea unui obiect SFE_BM0180, aqui llamado "pressure":

SFE_BMP180 presiune;

linia de bază dublă;

configurare nulă ()

{Serial.begin (9600); lcd.println ("REBOOT"); lcd.inceput (16, 2); // Imprimați un mesaj pe ecranul LCD. lcd.print ("");

// Inicializa senzorul (este important să ai valorile calibrate păzite în dispozitiv

if (pressure.begin ())

Serial.println („BMP180 init success”); else {// si tiene problemas o errores en el codigo, consulte la parte de sus a codigo.

lcd.println ("BMP180 init fail (deconectat?) n / n");

în timp ce (1); // Pausa infinita}

// Obțineți presiunea de bază:

linie de bază = getPressure (); lcd.print ("presiunea de bază:"); lcd.print (linia de bază); lcd.println ("mb"); }

bucla nulă ()

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

P = getPressure ();

// Muestra la altitudinea relativă

a = presiune.altitudine (P, linia de bază);

lcd.print ("altitudine relativă:"); if (a> = 0,0) Serial.print (""); // adăugați un spațiu pentru numere pozitive lcd.print (a, 1); lcd.print ("contoare"); if (a> = 0,0) Serial.print (""); // adăugați un spațiu pentru numere pozitive lcd.print (a * 3.28084, 0); lcd.println („picioare”); întârziere (500); }

dublu getPressure ()

{statutul char; dublu T, P, p0, a;

// Mai întâi trebuie să obțineți o măsurare a temperaturii pentru a efectua o citire a presiunii. Debes tener una medida de temperatura antes de tener una lectura de presion

// Start a temperature treatment: Empieza una medicion de temperatura // Si no hay errores, el numero de ms para esperar se afișează. // Si hay errores, se arată un 0

status = pressure.startTemperature ();

if (status! = 0) {// Espere a care se termină medicamentul de la temperatura

întârziere (stare);

// Recupera măsura completă de temperatură

// Esta medida esta guardada en la variable T // Utiliza & T pentru dar direcția de T a funcției. // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0

status = pressure.getTemperature (T);

if (status! = 0) {// Începeți o măsurare a presiunii: Comienza la medication de la presion // Parametrul este setarea de eșantionare, de la 0 la 3 (cea mai mare rezoluție, cea mai lungă așteptare). El parametro sobremuestra la configuracion, de 0 a 3 // Si no hay errores, el numero de ms para esperar se afișează. // Si hay errores, se arată un 0

status = pressure.startPressure (3);

if (status! = 0) {// Espere a care termină medicamentul de la presion delay (status);

// Recupera medicamentul complet de presiune

// Notează că măsura este stocată în variabila P // Folosește '& P' pentru a furniza adresa P. Utilice & P pentru a da direcția de P // Notează tambien că funcția necesită o măsură precedentă de temperatură // (Si la temperatura este stabilă, poți face o medicină de temperatură pentru măsurile de presiune) // Si la ffuncion muestra 1 no hay errores, de lo contrario marcara 0

status = pressure.getPressure (P, T);

if (status! = 0) {return (P); } else Serial.println ("eroare la recuperarea măsurării presiunii / n"); } else Serial.println ("eroare la pornirea măsurării presiunii / n"); } else Serial.println ("eroare la recuperarea măsurării temperaturii / n"); } else Serial.println ("eroare la pornirea măsurării temperaturii / n"); }

Recomandat: