Для электронщиков и радиолюбителей

Подключаем Raspberry Pi Pico к датчику BMP-180

BMP180 является популярным датчиком для измерения температуры и давления (которое можно перевести в высоту). Он дешев, надежен и очень прост в использовании с Arduino, Raspberry Pi и другими микроконтроллерными платами.

Здесь мы будем подключать Raspberry Pi Pico к датчику BMP-180 и напишем довольно простой код для получения с датчика значений температуры, давления и высоты.

Схема подключения Raspberry Pi Pico и датчика BMP180 следующая.

Убедитесь, что на вашем датчике и Raspberry Pi припаяны контакты. Вы также можете использовать макетную плату, но это не обязательно. Просто подключите 4 провода или перемычки, как показано на рисунке выше, и подключение будет готово. Для работы с датчиком вам понадобится библиотека для BMP180 (github.com/robert-hh/BMP085_BMP180/blob/master/bmp085.py). Если у вас есть библиотека, вы можете создать файл в домашнем каталоге вашего устройства и запустить следующий код.

from machine import Pin, I2C
from bmp085 import BMP180
import time

i2c = I2C(0, sda = Pin(0), scl = Pin(1), freq = 40000) 

bmp = BMP180(i2c)
bmp.oversample = 2
bmp.sealevel = 1010.5

while True: 
  tempC = bmp.temperature    #получить температуру в градусах Цельсия
  pres_hPa = bmp.pressure    #получить давление в гПа
  altitude = bmp.altitude    #получить высоту
  temp_f = (tempC * (9/5) + 32)  #перевести значение температуры в градусы Фаренгейта
  print(str(tempC) + "°C " + str(temp_f) + "°F " + str(pres_hPa) + "hPa "+ str(altitude))
  time.sleep_ms(100)  #задержка 100 миллисекунд

Код можно будет запустить сразу же, если вы правильно подключите устройство. Возможно, вам придется изменить частоту на 1000 вместо 40000, в зависимости от вашего устройства. Вам потребуется изменить давление на уровне уплотнения (измеренное в миллибарах) на давление на уровне моря в вашем регионе. Вы можете узнать давление на уровне моря рядом с вами с помощью быстрого поиска в любом поисковике.