ELECTRONICS

Библиотека Adafruit BMP280

В менеджере библиотек
Adafruit BMP280 Library by Adafruit
Версия
3.0.0 · всего 29 версий, первая — 1.0.0
Платы
любые — автор не ограничивал
Зависимости
Adafruit Unified Sensor, Adafruit BusIO — менеджер предложит поставить вместе
СкачатьAdafruit_BMP280_Library-3.0.0.zip · 464 КБ

Архивы — копии из официального индекса Arduino, контрольная сумма совпадает. Сверено 19.10.2026.

Датчик давления и температуры BMP280 по I2C или SPI: давление в паскалях, высота над уровнем моря.

BMP280 меряет атмосферное давление с точностью, достаточной, чтобы заметить подъём на один этаж, и заодно температуру. Библиотека отдаёт давление в паскалях и считает высоту, если сказать ей давление на уровне моря. Вместе с ней ставится Adafruit Unified Sensor и BusIO.

На модулях GY-BMP280 адрес обычно 0x76, а не 0x77 из примеров Adafruit — это первая причина «датчик не найден». Вторая — вместо BMP280 в модуле стоит BME280 с влажностью, у него своя библиотека.

Как скачать и установить

  1. Через менеджер — самый простой путь. В Arduino IDE: Инструменты → Управлять библиотеками (Ctrl+Shift+I). Введите Adafruit BMP280 Library и найдите в списке строку «Adafruit BMP280 Library by Adafruit» — одноимённых библиотек бывает несколько, отличаются они автором. Нажмите «Установить», и на вопрос про зависимости — «Установить всё».
  2. Конкретная версия — если в чужом проекте указана не последняя. В той же карточке менеджера рядом с кнопкой есть выпадающий список версий: выберите нужную и нажмите «Установить».
  3. Из архива — если нет интернета на рабочем компьютере или менеджер не открывается. Скачайте ZIP выше, затем Скетч → Подключить библиотеку → Добавить .ZIP библиотеку и укажите файл. Распаковывать не нужно.

Файл Adafruit_BMP280.h отдельно не скачивают: он внутри библиотеки и появляется после установки. Если среда пишет Adafruit_BMP280.h: No such file or directory — библиотека не установлена или установлена не та. Как устроен менеджер и куда складываются файлы — в общей статье про библиотеки.

Строка подключения:

#include <Wire.h>
#include <Adafruit_BMP280.h>

Создание объекта — обычно до setup():

Adafruit_BMP280 bmp;              // I2C
bmp.begin(0x76);                   // в setup(); 0x76 у GY-BMP280, 0x77 у плат Adafruit

Методы

Только то, что нужно в обычном скетче. Сигнатуры сверены с версией 3.0.0.

begin(uint8_t address)
Найти датчик по адресу. false — не найден или это не BMP280.
readTemperature()
Температура, °C.
readPressure()
Давление в паскалях; делите на 100 для гектопаскалей и на 133,3 для мм рт. ст.
readAltitude(float seaLevelhPa)
Высота в метрах относительно давления на уровне моря — берут с ближайшей метеостанции, по умолчанию 1013,25.
setSampling(mode, tempOS, pressOS, filter, standby)
Режим и усреднение: для точных измерений ставят передискретизацию ×16 и фильтр.
takeForcedMeasurement()
Одно измерение в режиме FORCED — для экономии батареи.
sensorID()
Код чипа: 0x58 — BMP280, 0x60 — это BME280, нужна другая библиотека.

Пример

#include <Wire.h>
#include <Adafruit_BMP280.h>

Adafruit_BMP280 bmp;

void setup() {
  Serial.begin(9600);
  if (!bmp.begin(0x76)) {
    Serial.print("Датчик не найден, id = 0x");
    Serial.println(bmp.sensorID(), HEX);
    while (1);
  }
}

void loop() {
  Serial.print(bmp.readTemperature(), 1);
  Serial.print(" C  ");
  Serial.print(bmp.readPressure() / 133.322, 1);
  Serial.print(" мм рт. ст.  ");
  Serial.print(bmp.readAltitude(1013.25), 0);
  Serial.println(" м");
  delay(2000);
}
Запустить в симулятореСхема с этим скетчем — запустить в браузере

Высота «плавает» на метр-два — это норма для давления. Для этажности хватает, для дрона нужны фильтры.

На чём попадаются

begin() возвращает false

Адрес 0x76 вместо 0x77, либо чип BME280 (sensorID 0x60): для него библиотека Adafruit BME280.

Температура завышена на пару градусов

Датчик греется от платы и собственного питания. Отодвиньте от стабилизатора или переведите в FORCED-режим с редкими измерениями.

Давление 300 или 1100 гПа

Крайние значения диапазона — датчик не откалиброван или неверно прочитаны коэффициенты. Проверьте питание 3,3 В и провода.

Где используется на сайте

Что дальше