barometric pressure sensor BMP085 http://mbed.org/users/okini3939/notebook/barometric-pressure-sensor-bmp085/ http://mbed.org/users/okini3939/notebook/weatherduino-on-mbed/

Dependents:   Xadow_MPU9150AHRS

Fork of BMP085 by Suga koubou

Revision:
0:6245372b9179
Child:
1:80e4c62baf09
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/BMP085.h	Thu Oct 14 11:28:45 2010 +0000
@@ -0,0 +1,44 @@
+/*
+ * mbed library to use a Bosch Sensortec BMP085 sensor
+ * Copyright (c) 2010 Hiroshi Suga
+ * Released under the MIT License: http://mbed.org/license/mit
+ */
+ 
+#ifndef BMP085_H
+#define BMP085_H
+
+#include "mbed.h"
+
+enum BMP085_oss {
+    BMP085_oss1 = 0,
+    BMP085_oss2 = 1,
+    BMP085_oss4 = 2,
+    BMP085_oss8 = 3
+};
+
+class BMP085 : public Base {
+public:
+    BMP085(PinName p_sda, PinName p_scl, BMP085_oss p_oss = BMP085_oss1);
+    BMP085(I2C& p_i2c, BMP085_oss p_oss = BMP085_oss1);
+
+    float get_temperature();
+    float get_pressure();
+    void update();
+
+protected:
+    void init(BMP085_oss);
+    unsigned short twi_readshort (int, int);
+    unsigned long twi_readlong (int, int);
+    void twi_writechar (int, int, int);
+
+    I2C i2c;
+    float temperature;
+    float pressure;
+
+private:
+
+    short ac1, ac2, ac3, b1, b2, mb, mc, md, oss;
+    unsigned short ac4, ac5, ac6;
+};
+
+#endif
\ No newline at end of file