Tecnologia PT: 3 ნაბიჯი
Tecnologia PT: 3 ნაბიჯი
Anonim
Tecnologia PT
Tecnologia PT

ეს არის სამეურვეო პროგრამა, რომელიც შეიცავს ინფორმაციას BMP180 სენსორის შესახებ, რომელიც გამოჩნდება LCD- ში, რომელიც დაკავშირებულია ლონდონთან და კოდიგოსთან. Espero que les sea útil

ნაბიჯი 1: მასალები

ეკრანის გამოყენებით და პროექციის დაფის გამოყენებით LCD და LCD სენსორი BMP180 აუცილებელია მასალების სიმძიმის მიხედვით:

1. პროტობორდი

2. არდუინო უნო

3. LCD

4. სენსორი BMP180

5. კაბელები (19)

6. პოტენციომეტრი

7. ბიბლიოთეკები previamente instaladas (3 (LiquidCrystal, Wire, SFE_BMP180))

*უფასო BMP180 puede ser descargada en sparkfun.com

ნაბიჯი 2: მონტაჟი

მონტაჟი
მონტაჟი

რეკომენდაციები: Conecte cada aparato por separado en orden (ej: primero LCD, luego BMP180 y ultima potenciometro)

ნაბიჯი 3: კოდიგო

გამოიყენეთ BMP სიმაღლის მაგალითი proporcionado en los ejemplos de la librería instalada (BMP180) და Arduino como el código ბაზაზე. ეს არის LiquidCristal Helloworld, რომელიც არეგულირებს Arduino- ს, რაც საშუალებას მოგცემთ გამოიყენოთ LCD სენსორი, რათა გამოიყენოთ ეს სენსორი. El código es el siguiente:

V10 მაიკ გრუსინი, SparkFun Electronics 2013-24-10 V1.1.2 განახლებები Arduino- სთვის 1.6.4 *

/ Debes inclusive 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. დასაწყისი (16, 2); // დაბეჭდეთ შეტყობინება LCD- ზე. lcd.print ("");

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

თუ (წნევა იწყება ())

Serial.println ("BMP180 init წარმატება"); else {// si tiene problemas o errores en el codigo, consulte la parte de arriba del codigo.

lcd.println ("BMP180 init fail (გათიშულია?) n / n");

ხოლო (1); // პაუზა უსასრულო}

// მიიღეთ საწყისი წნევა:

საწყისი = getPressure (); lcd.print ("საწყისი წნევა:"); lcd.print (საბაზისო); lcd.println ("mb"); }

ბათილი მარყუჟი ()

{ორმაგი a, P; // Consigue nuevos valores de presion

P = getPressure ();

// Muestra la altitude relativa

a = წნევა. სიმაღლე (P, საწყისი);

lcd.print ("ფარდობითი სიმაღლე:"); if (a> = 0.0) Serial.print (""); // დაამატეთ სივრცე დადებითი რიცხვებისთვის lcd.print (a, 1); lcd.print ("მეტრი"); if (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 no hay errores, el numero de ms para esperar se mostrara. // Si hay errores, se mostrara un 0

სტატუსი = წნევა. დაწყება ტემპერატურა ();

if (სტატუსი! = 0) {// Espere a que se termine la medicion de la temperatura

დაგვიანება (სტატუსი);

// Recupera la medida de completea 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

სტატუსი = press.getTemperature (T);

თუ (სტატუსი! = 0) {// დაიწყეთ წნევის გაზომვა: Comienza la medicion de la presion // პარამეტრი არის oversampling პარამეტრი, 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

სტატუსი = წნევა. დაწყება წნევა (3);

if (სტატუსი! = 0) {// Espere a que termine la medicion de la presion დაგვიანებით (სტატუსი);

// Recupere la medicion completea de la presion

// Notese que la medida esta almacenada en la variable P // გამოიყენეთ '& P', რათა მიუთითოთ P. Utilice & P para dar la direccion de P // Notese tambien que la funcion Requirere 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

სტატუსი = წნევა. მიიღეთ წნევა (P, T);

if (სტატუსი! = 0) {დაბრუნება (P); } else Serial.println ("წნევის გაზომვის შეცდომა / n"); } else Serial.println ("შეცდომა წნევის გაზომვის დაწყებისას / n"); } else Serial.println ("ტემპერატურის გაზომვის შეცდომა / n"); } else Serial.println ("შეცდომა ტემპერატურის გაზომვის დაწყებისას / n"); }

გირჩევთ: