Talaan ng mga Nilalaman:

BMP180 Y LCD Con Arduino: 4 na Hakbang
BMP180 Y LCD Con Arduino: 4 na Hakbang

Video: BMP180 Y LCD Con Arduino: 4 na Hakbang

Video: BMP180 Y LCD Con Arduino: 4 na Hakbang
Video: BMP180 Barometric Pressure/Temperature/Altitude Sensor Module – Arduino + LCD 2024, Hulyo
Anonim
BMP180 Y LCD Con Arduino
BMP180 Y LCD Con Arduino

Ang tutorial na ito ay nasa paligid ng isang todos aquellos que quieran hacer funcionar el sensor de temperatura y presión BMP180 y el LCD a través de arduino.

Hakbang 1: Mga Materyales

para que este programa nos salga bien debemos tener los siguientes materiales:

mga kable

Arduino

cable usb

potenciómetro

LCD

BMP180

computador

Hakbang 2: Montaje

Montaje
Montaje
Montaje
Montaje

Hakbang 3: Codigo

para hacer funcionar el bmp180 y el LCD se tienen que fusionar dos códigos que son el de hello world y el original del sensor de temperatura bmp180. El código seria ell siguiente:

/ * LiquidCrystal Library - Kamusta Mundo

Ipinapakita ang paggamit ng isang 16x2 LCD display. Gumagana ang library ng LiquidCrystal sa lahat ng mga display sa LCD na katugma sa driver ng Hitachi HD44780. Maraming mga ito doon, at maaari mong sabihin sa kanila ng 16-pin interface.

Ang sketch na ito ay naglilimbag ng "Hello World!" sa LCD at ipinapakita ang oras.

Ang circuit: * LCD RS pin sa digital pin 12 * LCD Paganahin ang pin sa digital pin 11 * LCD D4 pin sa digital pin 5 * LCD D5 pin sa digital pin 4 * LCD D6 pin sa digital pin 3 * LCD D7 pin sa digital pin 2 * LCD R / W pin sa lupa * LCD VSS pin sa lupa * LCD VCC pin sa 5V * 10K risistor: * nagtatapos sa + 5V at ground * wiper sa LCD VO pin (pin 3)

Orihinal na idinagdag ang silid-aklatan noong 18 Abril 2008 ni David A. Mellis na binago ang aklatan noong 5 Hul 2009 ni Limor Fried (https://www.ladyada.net) halimbawang idinagdag noong 9 Jul 2009 ni Tom Igoe na binago noong 22 Nob 2010 ni Tom Igoe

Ang halimbawang code na ito ay nasa pampublikong domain.

www.arduino.cc/en/Tutorial/LiquidCrystal *

/ isama ang code ng library: # isama ang # isama ang # isama

// ipasimula ang silid-aklatan gamit ang mga numero ng mga interface ng interface LiquidCrystal lcd (12, 11, 5, 4, 3, 2); Presyon ng SFE_BMP180;

dobleng PresionBase;

doble na Presyon = 0; doble ang Altura = 0; dobleng Temperatura = 0; katayuan ng char;

void setup () {// i-set up ang bilang ng mga haligi at hilera ng LCD: lcd.begin (16, 2); Serial.begin (9600); SensorStart (); }

void loop () {// itakda ang cursor sa haligi 0, linya 1 // (tala: linya 1 ang pangalawang hilera, dahil ang pagbibilang ay nagsisimula sa 0): lcd.setCursor (0, 1); // i-print ang bilang ng mga segundo mula nang i-reset: ReadSensor (); // Se imprimen las variable

lcd.print ("Temperatura:"); lcd.print (Temperatura); lcd.println ("grados C"); lcd.print ("Presion:"); lcd.print (Presion); lcd.println ("milibares"); pagkaantala (1000); } void SensorStart () {// Secuencia de inicio del sensor if (pressure.begin ()) Serial.println ("BMP180 init tagumpay"); iba pa {Serial.println ("BMP180 init fail (disconnect?) n / n"); habang (1); } // Se inicia la lectura de temperatura status = pressure.startTemperature (); kung (status! = 0) {pagkaantala (status); // Se lee una temperatura inicial status = pressure.getTemperature (Temperatura); kung (status! = 0) {// Se inicia la lekura de presiones status = pressure.startPressure (3); kung (status! = 0) {pagkaantala (status); // Se lee la presión inicial incidente sobre el sensor en la primera ejecución status = pressure.getPressure (PresionBase, Temperatura); }}}} walang bisa ReadSensor () {// En este método se hacen las lecturas de presión y temperatura y se calculula la altura // Se inicia la lectura de temperatura status = pressure.startTemperature (); kung (status! = 0) {pagkaantala (status); // Se realiza la lectura de temperatura status = pressure.getTemperature (Temperatura); kung (status! = 0) {// Se inicia la lekura de presión status = pressure.startPressure (3); kung (status! = 0) {pagkaantala (status); // Se lleva a cabo la lectura de presión, // considerando la temperatura que afecta el desempeño del sensor status = pressure.getPressure (Presion, Temperatura); kung (status! = 0) {// Se hace el cálculo de la altura en base a la presión leída en el Setup} else Serial.println ("error en la lectura de presion / n"); } iba pa Serial.println ("error iniciando la lectura de presion / n"); } iba pa Serial.println ("error en la lectura de temperatura / n"); } iba pa Serial.println ("error iniciando la lectura de temperatura / n"); }

Magagawa mo itong mag-ulat tungkol sa programa, ngunit ang mga instruksyon na hindi dapat gawin para sa realidad na ito ay dapat na mag-iwan ng mga espasyo para sa mga ito sa lahat ng lugar

Hakbang 4: Resulta

Resultado
Resultado

finalmente, después de correr el programa y subirlo a Arduino le deberá aparecer lo siguiente en el LCD.

Inirerekumendang: