Pressure Sensor

Dependencies:   mbed-src

Fork of bmp085_lib by Suga koubou

Committer:
Hagrass
Date:
Tue Aug 11 14:01:49 2015 +0000
Revision:
2:4fe211aae36e
Parent:
1:1d88eb9f5bbd
PressureSensor

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 0:dbba605ca87c 1 /*
okini3939 0:dbba605ca87c 2 * mbed library to use a Bosch Sensortec BMP085 sensor
okini3939 0:dbba605ca87c 3 * Copyright (c) 2010 Hiroshi Suga
okini3939 0:dbba605ca87c 4 * Released under the MIT License: http://mbed.org/license/mit
okini3939 0:dbba605ca87c 5 */
okini3939 0:dbba605ca87c 6
okini3939 0:dbba605ca87c 7 #ifndef BMP085_H
okini3939 0:dbba605ca87c 8 #define BMP085_H
okini3939 0:dbba605ca87c 9
okini3939 0:dbba605ca87c 10 #include "mbed.h"
okini3939 0:dbba605ca87c 11
okini3939 0:dbba605ca87c 12 enum BMP085_oss {
okini3939 0:dbba605ca87c 13 BMP085_oss1 = 0,
okini3939 0:dbba605ca87c 14 BMP085_oss2 = 1,
okini3939 0:dbba605ca87c 15 BMP085_oss4 = 2,
okini3939 0:dbba605ca87c 16 BMP085_oss8 = 3
okini3939 0:dbba605ca87c 17 };
okini3939 0:dbba605ca87c 18
Hagrass 2:4fe211aae36e 19 class BMP085
Hagrass 2:4fe211aae36e 20 {
okini3939 0:dbba605ca87c 21 public:
okini3939 0:dbba605ca87c 22 BMP085(PinName p_sda, PinName p_scl, BMP085_oss p_oss = BMP085_oss1);
okini3939 0:dbba605ca87c 23 BMP085(I2C& p_i2c, BMP085_oss p_oss = BMP085_oss1);
okini3939 0:dbba605ca87c 24
okini3939 0:dbba605ca87c 25 float get_temperature();
okini3939 0:dbba605ca87c 26 float get_pressure();
okini3939 0:dbba605ca87c 27 void update();
Hagrass 2:4fe211aae36e 28 float calcAltitude(int pressure);
okini3939 0:dbba605ca87c 29 protected:
okini3939 0:dbba605ca87c 30 void init(BMP085_oss);
okini3939 0:dbba605ca87c 31 unsigned short twi_readshort (int, int);
okini3939 0:dbba605ca87c 32 unsigned long twi_readlong (int, int);
okini3939 1:1d88eb9f5bbd 33 void twi_writechar (int, int, int);
okini3939 0:dbba605ca87c 34
okini3939 0:dbba605ca87c 35 I2C i2c;
okini3939 0:dbba605ca87c 36 float temperature;
okini3939 0:dbba605ca87c 37 float pressure;
okini3939 0:dbba605ca87c 38
okini3939 0:dbba605ca87c 39 private:
okini3939 0:dbba605ca87c 40
okini3939 0:dbba605ca87c 41 short ac1, ac2, ac3, b1, b2, mb, mc, md, oss;
okini3939 0:dbba605ca87c 42 unsigned short ac4, ac5, ac6;
okini3939 0:dbba605ca87c 43 };
okini3939 0:dbba605ca87c 44
okini3939 0:dbba605ca87c 45 #endif