BMP180 это датчик атмосферного давления с цифровым i2c интерфейсом

То есть этот датчик конвертирует в чиселки давление воздуха на него. И кстати это не обязательно может быть атмосферное давление. Можно померить например давление в закрытой бутылке, накачанной воздухом. Еще им можно мерить высоту — чем выше над землей тем меньше давление.

Распиновка синего BMP180

  1. VIN (не путать с IO на других версиях платы) — сюда можно подать питание 5 вольт — она идет на понижайку напряжения до 3.3 в.
  2. Сюда подается 3.3 вольта. , если есть. Причем подключать надо либо первый, либо этот. Китайцы молодцы.
  3. IO — на рисунке его нет, но на некоторых платах он присутствует. Он нужен для питания, если у нас в схеме сильно меньше 3.3 вольт — например 1.8 вольт. Если его подключаете, то не нужны VIN и 3.3 🙂
  4. Общий типа минус
  5. i2c clock подключается так:
    1. Uno, Pro / Pro Mini к А5
    2. Mega, Due к 21
    3. Leonardo, Pro Micro к 3
  6. i2c data так:
    1. Uno, Redboard, Pro / Pro Mini к А4
    2. Mega, Due к 20
    3. Leonardo, Pro Micro к 2

Библиотека Arduino для BMP180

Скачать тут https://github.com/sparkfun/BMP180_Breakout/archive/master.zip (или с нашего сайта тут BMP180_Breakout-master).  Там  много файлов, но нам нужна папка src. Ее переименовываем в SFE_BMP180 и закидываем в Libraries у Arduino.

BMP180_lib

В эту же папку SFE_BMP180 закидываем файл keywords.txt и каталог examples.

После этого идем Файл > Примеры > SFE_BMP180 > SFE_BMP180_example

Прошиваем, видим такое:

52bcc96ace395f58558b4567[1]

Разберемся  с кодом: