Wemos D1 Mini BMP180 I2C Shield er et Temperatur/Barometrisk Tryksensor Shield. Måling af tryk og beregning af højde lokalt. Måler også temperatur.
Tekniske detaljer:
Voltage: 1.8-3.6V
Working Temperature: -30 c ~ 70 c
Interface: I2C/IIC
Driver IC: BMP180
Passer til: Wemos D1 Mini (Køb den HER)
Det er en I2C-sensor, så skjoldet bruger D1 og D2.
Installere Arduino IDE Software
Før du kan starte din programmering skal Arduino’s IDE software hentes. Dette program bruges til at programmere din arduino.
Download fra dette link: Download
Programmering
Inden programmeringen kan udføres skal den rigtige “COM” port findes. Klik “Værktøj/Port” – og vælg COM port.
Installere Adafruit-BMP085-Library-master
- Download library (Download)
- Udpak filer
- Flyt/kopir mappen “Adafruit-BMP085-Library-master” til “libraries” som findes i “Arduino IDE” mappen (C:Program Files (x86)Arduinolibraries)
- Åben Arduino IDE software og klik på “Sketch/Include library”
- Klik nu på “Add Zip. library” og find Zip filen du lige har downloaded.
- Åben “Manage” for at opdatere library.
- Luk, og åben Arduino IDE programmet. (Genstart programmet)
- Nu er Adafruit-BMP085-Library-master Library installeret
Eksempel
Her viser vi et hurtig eksempel på hvordan du kan se data fra modulet.
Find Display adressen
Modulet har en I2C adresse, den skal findes før displayet kan vise noget. Adressen indsættes i koden som vises længere mede.
kode: (I2C Scanner)
#include <Wire.h> void setup() { Wire.begin(); Serial.begin(9600); while (!Serial); // wait for serial monitor Serial.println("nI2C Scanner"); } void loop() { byte error, address; int nDevices; Serial.println("Scanning..."); nDevices = 0; for(address = 1; address < 127; address++ ) { // The i2c_scanner uses the return value of // the Write.endTransmisstion to see if // a device did acknowledge to the address. Wire.beginTransmission(address); error = Wire.endTransmission(); if (error == 0) { Serial.print("I2C device found at address 0x"); if (address<16) Serial.print("0"); Serial.print(address,HEX); Serial.println(" !"); nDevices++; } else if (error==4) { Serial.print("Unknown error at address 0x"); if (address<16) Serial.print("0"); Serial.println(address,HEX); } } if (nDevices == 0) Serial.println("No I2C devices foundn"); else Serial.println("donen"); delay(5000); // wait 5 seconds for next scan }
Kode (Programmering)
Nu har jeg fundet adressen på modulet. Min er “0x77”
#include <Wire.h> #include <Adafruit_BMP085.h> Adafruit_BMP085 bmp; void setup() { Serial.begin(9600); if (!bmp.begin(0x77)) { Serial.println("Could not find BMP180 or BMP085 sensor at 0x77"); while (1) {} } } void loop() { Serial.print("Temperature = "); Serial.print(bmp.readTemperature()); Serial.println(" °C"); Serial.print("Pressure = "); Serial.print(bmp.readPressure()); Serial.println(" Pa"); // Calculate altitude assuming 'standard' barometric // pressure of 1013.25 millibar = 101325 Pascal Serial.print("Altitude = "); Serial.print(bmp.readAltitude()); Serial.println(" meters"); Serial.print("Pressure at sea level (calculated) = "); Serial.print(bmp.readSealevelPressure()); Serial.println(" Pa"); // you can get a more precise measurement of altitude // if you know the current sea level pressure which will // vary with weather and such. If it is 1015 millibars // that is equal to 101500 Pascals. Serial.print("Real altitude = "); Serial.print(bmp.readAltitude(101500)); Serial.println(" meters"); Serial.println(); delay(2000); }
Download
Kontakt os
Du er altid velkommen til at kontakte os på info@ardustore.dk, eller sende os en besked via messenger (Klik her) og vi vil hjælpe dig.
Anmeldelser
Der er endnu ikke nogle anmeldelser.