cap180
Modules barométriques (BMP180/GY68, BME280 ...)
Capteurs pression, température et parfois humidité utilisé pour des applications météo. Ils fonctionnent avec le protocole I2C.
Caractéristiques
- Protocole I2C
- Vcc de 1.8 à 3.2V (5 V si régulateur intégré)
- Température de -40 à +85 °C
- Pression atmosphérique de 300 à 1100 hPa
- Hygrométrie de 0 à 100 % (Si présente)
Connexion
| Signal | Arduino | ESP8266 |
|---|---|---|
| VCC | VCC | VCC |
| GND | GND | GND |
| SLC | A5 | D1 |
| SDA | A4 | D2 |
BMP180
Capteur barométrique et température
- Vcc de 1.8 à 3.6 V
- I de 3 à 32 µA selon le mode à 1Hz
- Librairie Adafruit BMP085
BMP280
Capteur barométrique et température.
Peut utiliser l'adresse I2C 0x76 (défaut) ou 0x77.
- Librairie Adafruit BMP280
BME280
Capteur barométrique, température et humidité.
Peut utiliser l'adresse I2C 0x76 (défaut) ou 0x77.
- Librairie Adafruit BME280
Programmation (BME280)
- Test_bme280.ino
/*Fichier : programme-test-bme280.ino Description : Programme permettant de tester un BME280 branché sur les pins SDA et SCL d'un Arduino (bus I2C) Auteur : Jérôme TOMSKI (https://passionelectronique.fr/) Créé le : 30.09.2021 Librairie Adafruit BME280 utilisée : https://github.com/adafruit/Adafruit_BME280_Library (importée depuis le Gestionnaire de bibliothèques Arduino) */ #include <Adafruit_BME280.h> // Inclusion de la librairie BME280 d'Adafruit // Constantes du programme #define adresseI2CduBME280 0x76 // Adresse I2C du BME280 (0x76, dans mon cas, ce qui est souvent la valeur par défaut) #define pressionAuNiveauDeLaMerEnHpa 1024.90 // https://fr.wikipedia.org/wiki/Pression_atmospherique (1013.25 hPa en moyenne, valeur "par défaut") #define delaiRafraichissementAffichage 1500 // Délai de rafraîchissement de l'affichage (en millisecondes) // Instanciation de la librairie BME280 Adafruit_BME280 bme; // ======================== // Initialisation programme // ======================== void setup() { // Initialisation du port série (pour l'envoi d'infos via le moniteur série de l'IDE Arduino) Serial.begin(115200); while(!Serial); Serial.println("Programme de test du BME280"); Serial.println("==========================="); Serial.println(); // Initialisation du BME280 Serial.print(F("Initialisation du BME280, à l'adresse [0x")); Serial.print(adresseI2CduBME280, HEX); Serial.println(F("]")); if(!bme.begin(adresseI2CduBME280)) { Serial.println(F("--> ECHEC…")); } else { Serial.println(F("--> REUSSIE !")); } Serial.println(); } // ====================================== // Boucle principale (boucle perpétuelle) // ====================================== void loop() { // Affichage de la TEMPÉRATURE Serial.print(F("Temperature = ")); Serial.print(bme.readTemperature()); Serial.println(F(" C")); // Affichage du TAUX D'HUMIDITÉ Serial.print(F("Humidite = ")); Serial.print(bme.readHumidity()); Serial.println(F(" %")); // Affichage de la PRESSION ATMOSPHÉRIQUE Serial.print(F("Pression atmospherique = ")); Serial.print(bme.readPressure() / 100.0F); Serial.println(F(" hPa")); // Affichage de l'estimation d'ALTITUDE Serial.print(F("Altitude estimee = ")); Serial.print(bme.readAltitude(pressionAuNiveauDeLaMerEnHpa)); Serial.println(F(" m")); // ... et on répète ce cycle à l'infini ! delay(delaiRafraichissementAffichage); // Avec x secondes d'attente, avant chaque rebouclage Serial.println(); // … et un saut de ligne pour faire joli ;) }
cap180.txt · Dernière modification : 2024/02/14 14:25 de 127.0.0.1
