Oggi vogliamo che tu lo faccia Modulo sensore BMPimmaginare.
Il modulo è dotato di un sensore ambientale Bosch. Questo combina i 2 diversi tipi di sensore: sensore di pressione e sensore di temperatura. Tutto in un piccolo pacchetto a 8 pin.
Si trova su una piccola scheda a 4 pin: VIN, GND, SCL e SDA.
Ciò semplifica il collegamento del sensore a un microcontrollore tramite I²C.
In questo esempio utilizziamo un kit di sviluppo ESP32
Colleghiamo i seguenti pin:
Kit di sviluppo ESP32 |
Modulo BMP280 |
3,3V |
VIN |
GND |
GND |
SCL |
SCL |
SDA |
SDA |
Usiamo 2 librerie di Adafruit per il nostro progetto: "Adafruit Unified Sensors" e "Adafruit BMP280 Library"
Se questi non sono ancora installati, il modo più semplice per integrarli è tramite il gestore librerie dell'IDE di Arduino.
Quindi aprire il ketch di prova tramite "File" → "Esempi" → "Libreria BMP Adafruit" → "bmp280test".
Dopo che lo schizzo è stato compilato e caricato, apriamo il monitor seriale facendo clic sul simbolo in alto a destra (o con la combinazione di tasti Ctrl + Maiusc + M):
codice:
#include <filo.B> #include <Adafruit_Sensor.B> #include <Adafruit_BMP280.B> #define BMP_SDA 21 #define BMP_SCL 22 Adafruit_BMP280 bmp; // I2C vuoto configurazione() { serial.iniziare(9600); serial.println(F("Test BMP280")); se (!bmp.iniziare()) { serial.println("Impossibile trovare un BMP280 valido!"); mentre (1); } } vuoto cappio() { serial.stampare("T ="); serial.stampare(bmp.temperatura letta()); serial.println("° C"); serial.stampare("P ="); serial.stampare(bmp.pressione Leggi()/100); serial.println("HPa"); serial.stampare("H ="); serial.stampare(bmp.readAltitude(1013.25)); serial.println("M"); serial.println(); ritardo(2000); }
fino al prossimo post :)
3 commenti
User
In einem anderen Forum habe ich folgende Aussage dazu gefunden wie Steffen schon bemerkt hat: "Connecting SDO to GND results in slave address 1110110 (0×76), connecting it to VCC results in slave address 1110111 (0×77), which is the same as BMP180’s I²C address. "
Steffen
Das BMP280 Board (blau) hat Konnektoren! Um die Sensoren per Adafruit_BMP280 Bibliothek per I2C ansprechen zu können, muss zusätzlich der SDO Pin auf Vcc gelegt werden. Sonst stimmen die I2C Adressen nicht.
Sebastian
Moin,
Ist es richtig das der BMP auch Luftfeuchtigkeit misst? Ich dachte das macht nur der BME?
Mit freundlichen Grüßen Sebastian