如何使用BME280-I2C温度和压力传感器模块

  • 内容
  • 评论
  • 相关

BME280是一种数字气压传感器模块,是BMP180的升级版,该模块通过I2C接口实现对传感器的访问。这使得我们能够轻松地将其连接到树莓派,然后使用Python语言读取其数据。BME280模块提供了温度、压力和湿度传感器。有兴趣的可以将它与BMP085进行比较。

BME280
BME280

BME280 模块

BME280是由博世制造的,官方BME280的datasheet包含了它所有的技术细节。该模块可以提供SPI和I2C接口,所以在选购时需要根据你使用的接口进行选择。如上图所示BME280模块(I2C)提供了四个针脚,从上至下分别是:VIN、GND、SCL、SDA,因此我们可以很容易的将它与树莓派连接起来。

关于树莓派的I2C接口使用,可查阅:树莓派外围I/O接口

BME280与树莓派的连接

下表是BME280模块连接到Raspberyr Pi的GPIO释义(P1版)。P1的有关针脚定义,请参阅下图。

Raspberyr Pi的GPIO释义(P1版)
Raspberyr Pi的GPIO释义(P1版)
BME280引脚含义树莓派1的GPIO
VCC3.3VP1-01
GNDGroundP1-06
SCLI2C SCLP1-05
SDAI2C SDAP1-03

实物连接图

BME280与树莓派的连接
BME280与树莓派的连接

当设备连接完成后打开树莓派电源,使用“i2cdetect”命令应该可以看到地址为0x76或0x77的设备显示出来。如果采用的是其它树莓派版本,则需要留意GPIO接口的顺序,可在本站搜索一下。

软件准备

1、从Bitbucket存储库下载BME280 Python脚本 :

wget -O bme280.py http://bit.ly/bme280py
或
wget https://bitbucket.org/MattHawkinsUK/rpispy-misc/raw/master/python/bme280.py

运行脚本

在运行脚本之前,应该检查设备是否已连接成功。如果在i2c设置中安装了i2c-tools包,那么应该可以使用i2cdetect命令检查它是否返回设备的地址。脚本假设地址是0x76。可以通过使用文本编辑器在bme280.py中编辑设备的地址变量。然后运行以下命令:

 python bme280.py

得到的输出结果如下:

python bme280.py输出结果
python bme280.py输出结果