Capteur BME280 : Différence entre versions
 (→Attention ! ne pas confondre)  | 
				|||
| Ligne 6 : | Ligne 6 : | ||
celui-ci fait pression, température et humidité.  | celui-ci fait pression, température et humidité.  | ||
| − | [[Fichier:DatasheetBME280.png|  | + | [[Fichier:DatasheetBME280.png|600px]]  | 
| − | [[Fichier:  | + | [[Fichier:BME280.png|200px]]  | 
le capteur est carré !  | le capteur est carré !  | ||
| Ligne 14 : | Ligne 14 : | ||
celui-la ne fait que pression et température.  | celui-la ne fait que pression et température.  | ||
| − | [[Fichier:DatasheetBMP280.png|  | + | [[Fichier:DatasheetBMP280.png|600px]]  | 
| − | [[Fichier:  | + | [[Fichier:BMP280.png|200px]]  | 
le capteur est rectangle !  | le capteur est rectangle !  | ||
Version du 14 février 2021 à 10:52
Tuto inspiré de : https://randomnerdtutorials.com/bme280-sensor-arduino-pressure-temperature-humidity/
ne pas hésiter à aller voir ici également.
Sommaire
Attention ! ne pas confondre
BME280
celui-ci fait pression, température et humidité.
le capteur est carré !
BMP280
celui-la ne fait que pression et température.
le capteur est rectangle !
les bibliothèques
Installer les bibliothèques suivantes :
- Adafruit_BME280 library
 - Adafruit_Sensor library
 
Connecter BME 280 à l'arduino
Attention vérifiez bien le voltage de fonctionnement de votre capteur, il en existe 2 versions. le capteur 3,3V comporte 6 broches, celui à 5V n'en possède que 4.
le programme
Charger le programme puis ouvrir le moniteur série.
/*
 * Complete Project Details https://randomnerdtutorials.com
*/
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
#define BME_SCK 13
#define BME_MISO 12
#define BME_MOSI 11
#define BME_CS 10
#define SEALEVELPRESSURE_HPA (1013.25)
Adafruit_BME280 bme; // I2C
//Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI
unsigned long delayTime;
void setup() {
  Serial.begin(9600);
  Serial.println(F("BME280 test"));
  bool status;
  
  // default settings
  // (you can also pass in a Wire library object like &Wire2)
  status = bme.begin();  
  if (!status) {
    Serial.println("Could not find a valid BME280 sensor, check wiring!");
    while (1);
  }
  
  Serial.println("-- Default Test --");
  delayTime = 1000;
  Serial.println();
}
void loop() { 
  printValues();
  delay(delayTime);
}
void printValues() {
  Serial.print("Temperature = ");
  Serial.print(bme.readTemperature());
  Serial.println(" *C");
  
  // Convert temperature to Fahrenheit
  /*Serial.print("Temperature = ");
  Serial.print(1.8 * bme.readTemperature() + 32);
  Serial.println(" *F");*/
  
  Serial.print("Pressure = ");
  Serial.print(bme.readPressure() / 100.0F);
  Serial.println(" hPa");
  
  Serial.print("Approx. Altitude = ");
  Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
  Serial.println(" m");
  
  Serial.print("Humidity = ");
  Serial.print(bme.readHumidity());
  Serial.println(" %");
  
  Serial.println();
}
