BMP180
概述
在本教程中,我们将深入探讨 GY-87 IMU 模块,重点介绍用于测量温度、气压和海拔的 BMP180 传感器。本课程适用于天气预报和海拔追踪等应用,涵盖将 GY-87 与 Arduino Uno 连接以及使用 Adafruit BMP085 库的内容。您将学习如何初始化 BMP180 传感器并在 Arduino 串口监视器上读取其数据,这是需要环境数据的项目中的关键技能。
所需元件
本项目中,我们需要以下元件。
购买整套套件会更加方便,以下是链接:
名称 |
套件所含项目 |
链接 |
|---|---|---|
Elite Explorer 套件 |
300+ |
您也可以从以下链接单独购买。
元件介绍 |
购买链接 |
|---|---|
- |
|
- |
接线
原理图
代码
备注
您可以直接打开路径
elite-explorer-kit-main\basic_project\09-gy87_bmp180下的09-gy87_bmp180.ino文件。或者将以下代码复制到 Arduino IDE 中。
备注
要安装库,请使用 Arduino 库管理器搜索 “Adafruit BMP085 Library” 并安装。
代码分析
initializeBMP180()初始化 BMP180 传感器。
void initializeBMP180() { // 开始 BMP180 初始化 if (!bmp.begin()) { Serial.println("Could not find a valid BMP180 sensor, check wiring!"); while (1) ; // 如果未找到传感器则暂停 } Serial.println("BMP180 Found!"); }
printBMP180()打印 BMP180 传感器读取的值。
void printBMP180() { Serial.println(); Serial.println("BMP180 ------------"); Serial.print("Temperature = "); Serial.print(bmp.readTemperature()); Serial.println(" *C"); Serial.print("Pressure = "); Serial.print(bmp.readPressure()); Serial.println(" Pa"); // 计算海拔,假设'标准'大气压为 1013.25 毫巴 = 101325 帕斯卡 Serial.print("Altitude = "); Serial.print(bmp.readAltitude()); Serial.println(" meters"); Serial.print("Pressure at sealevel (calculated) = "); Serial.print(bmp.readSealevelPressure()); Serial.println(" Pa"); Serial.println("BMP180 ------------"); Serial.println(); }