Files
GyverBME280/examples/modes/modes.ino
2021-05-25 00:15:25 +03:00

58 lines
3.7 KiB
C++
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
Пример работы датчика в двух режимах - обычном и принудительном , а так же перезапись настроек во время работы
О режимах:
NORMAL_MODE - Обычный - датчик делает измерения циклически , между измерениями спит , время сна настраивается с помощью .setStandbyTime(); , см пример low_power
FORCED_MODE - Принудительный - датчик спит , после вызова .oneMeasurement(); просыпается и делает ОДНО преобразование , после чего уходит в сон
По умолчанию - NORMAL_MODE - Время сна между преобразованиями - 250мс
См. константы в GyverBME280.h , стандартные настройки можно изменить там же в классе GyverMBE280
*/
#include <GyverBME280.h> // Подключение библиотеки
GyverBME280 bme; // Создание обьекта bme
void setup() {
Serial.begin(9600); // Запуск последовательного порта
bme.setMode(FORCED_MODE); // Перед инициализацией говорим датчику работать в принудительном режиме
bme.begin(); // Больше настройки не нужны - инициализируем датчик
while (millis() < 10000) { // Работа с датчиком в принудительном режиме в течении первых 10 секунд
bme.oneMeasurement(); // Просим датчик проснуться и сделать одно преобразование
while (bme.isMeasuring()); // Ждем окончания преобразования
Serial.print("Temperature: ");
Serial.print(bme.readTemperature()); // Читаем и выводим температуру
Serial.println(" *C");
Serial.print("Humidity: ");
Serial.print(bme.readHumidity()); // Читаем и выводим влажность
Serial.println(" %");
Serial.print("Pressure: ");
Serial.print(pressureToMmHg(bme.readPressure())); // Читаем и выводим давление
Serial.println(" mm Hg");
Serial.println("");
delay(1000);
}
bme.setMode(NORMAL_MODE); // Спустя 10 секунд переключаем датчик в обычный режим
bme.begin(); // Переинициализируем датчик после изменения настроек - обязательная процедура
}
void loop() { // Работа с датчиком в обычном режиме , преобразования идут в цикличном режиме
Serial.print("Temperature: ");
Serial.print(bme.readTemperature()); // Читаем и выводим температуру
Serial.println(" *C");
Serial.print("Humidity: ");
Serial.print(bme.readHumidity()); // Читаем и выводим влажность
Serial.println(" %");
Serial.print("Pressure: ");
Serial.print(pressureToMmHg(bme.readPressure())); // Читаем и выводим давление
Serial.println(" mm Hg");
Serial.println("");
delay(1000);
}