Подключение датчика BME280 к плате NodeMCU на базе ESP8266
Цель работы
Научиться использовать датчик BME280 с микроконтроллером NodeMCU на базе ESP8266
Задачи работы
- Собрать схему
- Разработать скетч
Инструменты для выполения работы
- Компьютер с подключением к сети Internet
- Датчик BME280
- NodeMCU
- Провода
Теоретическая часть
BME280 - универсальный датчик для измерения температуры, давления и влажности. Работает по интерфейсам I2C и SPI.
 
Выполнение работы
Сборка схемы
Подключаем датчик к плате по схеме:
 VCC -> 3V
 GND -> G
 SCL -> D1
 SDA -> D2
Разработка скетча
Создаем новый скетч. Через менеджер библиотек загружаем библиотеку BME280 от автора Tyler Glenn. Закрываем менеджер библиотек и подключаем ее к скетчу (Скетч -> Подключить библиотеку -> BME280). Потом подключаем библиотеку Wire.
 Создаем глобальную переменную
BME280I2C bme;
В функции setup() запускем Serial и датчик
Serial.begin(9600);
 Wire.begin();
 while(!bme.begin())
 {
     Serial.println("Could not find BME280 sensor!");
     delay(1000);
 }
В функции loop() считываем значения температуры, влажности и давления с датчика и выводим в Serial
float temp(NAN), hum(NAN), pres(NAN);
 
 BME280::TempUnit tempUnit(BME280::TempUnit_Celsius);
 BME280::PresUnit presUnit(BME280::PresUnit_Pa);
 
 bme.read(pres,temp,hum,tempUnit,presUnit);
 
 Serial.print("Temp: ");
 Serial.print(temp);
 Serial.println("°C");
 Serial.print("Humidity: ");
 Serial.print(hum);
 Serial.println("% RH");
 Serial.print("Pressure: ");
 Serial.print(pres);
 Serial.println(" Pa");
 delay(500);