תוכן עניינים:

Tecnologia PT: 3 שלבים
Tecnologia PT: 3 שלבים

וִידֵאוֹ: Tecnologia PT: 3 שלבים

וִידֵאוֹ: Tecnologia PT: 3 שלבים
וִידֵאוֹ: ⚡️ Я НЕ СДАМСЯ! AMAZON 2.0 | Интернет магазин с нуля - Часть 3 2024, יולי
Anonim
Tecnologia PT
Tecnologia PT

מדריך הדרכה הכולל מידע על חיישן BMP180 יכול לכלול LCD, פיוז'נדו והרפתקאות. Espero que les sea útil

שלב 1: חומרים

לקבלת מידע וחיבור אחד ללוח הבקרה לשימוש בחיישן LCD ובחיישן BMP180 יש צורך בחומרים:

1. פרוטובורד

2. ארדואינו אונו

3. LCD

4. חיישן BMP180

5. כבלים (19)

6. פוטנציומטרו

7. ספריות קיימות התקנות (3 (LiquidCrystal, Wire, SFE_BMP180))

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

שלב 2: מונטג '

מונטג '
מונטג '

המלצות: Conecte cada aparato por separado en orden (ej: primero LCD, luego BMP180 y por ultimo Potenciometro)

שלב 3: קודיגו

ניתן להשתמש בדוגמת גובה BMP בגובה ה- proporcionado en los ejemplos de la librería instalada (BMP180) ב- Arduino como el código base. Este código tiene que ser fusionado con el código LiquidCristal Helloworld, que también es un ememplo de Arduino, para que en el display del LCD are muostren los datos que manda el sensor. El código es el siguiente:

V10 מייק גרוסין, SparkFun אלקטרוניקה 2013-24-10 עדכוני V1.1.2 עבור Arduino 1.6.4 *

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

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

#לִכלוֹל

#כלול #כלול

// Inicializa la libreria con los pines de interface

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

// Necesitara crear un objet SFE_BM0180, aqui llamado "לחץ":

לחץ SFE_BMP180;

קו בסיס כפול;

הגדרת חלל ()

{Serial.begin (9600); lcd.println ("הפעלה מחדש"); lcd.begin (16, 2); // הדפס הודעה ל- LCD. lcd.print ("");

// חיישן רשמי (es importante tener los valores calibrados guardados en el dispositivo

אם (pressure.begin ())

Serial.println ("הצלחה BMP180 init"); אחר {// si tiene problemsas o errores en el codigo, consulte la parte de arriba del codigo.

lcd.println ("BMP180 init fail (נותק?) n / n");

בעוד (1); // Pausa infinita}

// קבל את הלחץ הבסיסי:

בסיס = getPressure (); lcd.print ("לחץ בסיסי:"); lcd.print (בסיס); lcd.println ("mb"); }

לולאת חלל ()

{כפול א, פ; // Consigue nuevos valores de presion

P = getPressure ();

// Muestra la altitud relativa

a = לחץ גובה (P, בסיס);

lcd.print ("גובה יחסית:"); אם (a> = 0.0) Serial.print (""); // הוסף רווח למספרים חיוביים lcd.print (a, 1); lcd.print ("מטרים"); אם (a> = 0.0) Serial.print (""); // הוסף רווח למספרים חיוביים lcd.print (a*3.28084, 0); lcd.println ("רגליים"); עיכוב (500); }

כפול getPressure ()

{מעמד char; כפול T, P, p0, a;

// תחילה עליך לבצע מדידת טמפרטורה כדי לבצע קריאת לחץ. Debes tener una medida de temperatura antes de tener una lectura de presion

// התחל מדידת טמפרטורה: Empieza una medicion de temperatura // אין שום שגיאות חציר, מספרם של מספר הטעויות. // Si hay errores, se mostrara un 0

status = pressure.startTemperature ();

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

עיכוב (סטטוס);

// Recupera la medida de completa de temperatura

// Esta medida esta guardada en la משתנה 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 = pressure.getTemperature (T);

אם (סטטוס! = 0) {// התחל מדידת לחץ: Comienza la medicion de la presion // הפרמטר הוא הגדרת דגימות יתר, מ 0 עד 3 (הרזולוציה הגבוהה ביותר, ההמתנה הארוכה ביותר). 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 = pressure.startPressure (3);

if (status! = 0) {// Espere a que termine la medicion de la presion עיכוב (סטטוס);

// Recupere la medicion completa de la presion

// Notese que la medida esta almacenada en la משתנה P // השתמש ב- & P כדי לספק את כתובת P. Utilice & P para dar la direccion de P // Notese tambien que la funcion requiere una medida previa de temperatura // (Si la temperatura es 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 = pressure.getPressure (P, T);

if (status! = 0) {return (P); } else Serial.println ("שגיאה באחזור מדידת לחץ / n"); } else Serial.println ("שגיאה בהתחלת מדידת לחץ / n"); } else Serial.println ("שגיאה באחזור מדידת טמפרטורה / n"); } else Serial.println ("שגיאה בהתחלת מדידת טמפרטורה / n"); }

מוּמלָץ: