本文主要是介绍Arduino笔记三气压模块BMP85,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
气压模块BMP85既可以用来测量压强也可以用来测温度,压强还可以转化为纬度,我是打算用来结合GPS辅助定位,测量高度。有用过的人给点建议哈。今天看了下BMP85的手册,也在网上找了些Arduino例程,这次结合手册实现最基本的温度测量和压强测量。
开发环境:
系统:XP
单板:Arduino Leonardo
平台:Arduino
目标:测量当前位置的压强和温度,并通过串口显示
一、硬件介绍
气压模块BMP85内部有176 bit E2PROM,由11组校验系数组成,用于计算温度、压强。模块原理图如下:
这里只用到SCL、SDA、VCC_3.3V、GND分别连接到Arduino的对应接口上。Arduino Leonardo上直接标有SDA、SCL连上即可,其它Arduino根据自己的板子连接。
二、编写测试程序
其实在Arduino上写代码非常简单,很多库都帮你做好了,直接调用即可,十分方便。但Arduino的版本很多,特别是Arduino-1.0以后,有些库有所改变,需要看对应版本的参考手册arduino-1.5.2-windows\arduino-1.5.2\reference下面有详细说明,我也是结合网上找的程序参考这些修改。代码如下:
文件BMP085_TEST.ino
#include <Wire.h>#define BMP085_ADDRESS 0x77 // I2C address of BMP085const unsigned char OSS = 0; // Oversampling Setting// Calibration values
int ac1;
int ac2;
int ac3;
unsigned int ac4;
unsigned int ac5;
unsigned int ac6;
int b1;
int b2;
int mb;
int mc;
int md;// b5 is calculated in bmp085GetTemperature(...), this variable is also used in bmp085GetP
这篇关于Arduino笔记三气压模块BMP85的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!