Success!

Dependencies:   mbed

Committer:
Soyoon
Date:
Tue Jul 19 15:47:17 2016 +0000
Revision:
0:9f0027e4c618
Robo Frien

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Soyoon 0:9f0027e4c618 1 #ifndef Barometer_H
Soyoon 0:9f0027e4c618 2 #define Barometer_H
Soyoon 0:9f0027e4c618 3 #include "mbed.h"
Soyoon 0:9f0027e4c618 4
Soyoon 0:9f0027e4c618 5
Soyoon 0:9f0027e4c618 6 enum Barometer_oss {
Soyoon 0:9f0027e4c618 7 Barometer_oss1 = 0, ///< ultra low power (1 time)
Soyoon 0:9f0027e4c618 8 Barometer_oss2 = 1, ///< standard (2 times)
Soyoon 0:9f0027e4c618 9 Barometer_oss4 = 2, ///< high resolution (4 times)
Soyoon 0:9f0027e4c618 10 Barometer_oss8 = 3 ///< ultra high resolution (8 times)
Soyoon 0:9f0027e4c618 11 };
Soyoon 0:9f0027e4c618 12
Soyoon 0:9f0027e4c618 13
Soyoon 0:9f0027e4c618 14 class Barometer {
Soyoon 0:9f0027e4c618 15 public:
Soyoon 0:9f0027e4c618 16 Barometer(PinName p_sda, PinName p_scl, Barometer_oss p_oss = Barometer_oss1);
Soyoon 0:9f0027e4c618 17 Barometer(I2C& p_i2c, Barometer_oss p_oss = Barometer_oss1);
Soyoon 0:9f0027e4c618 18
Soyoon 0:9f0027e4c618 19 float get_temperature();
Soyoon 0:9f0027e4c618 20 float get_pressure();
Soyoon 0:9f0027e4c618 21 void update();
Soyoon 0:9f0027e4c618 22
Soyoon 0:9f0027e4c618 23 protected:
Soyoon 0:9f0027e4c618 24 void init(Barometer_oss);
Soyoon 0:9f0027e4c618 25 unsigned short twi_readshort (int, int);
Soyoon 0:9f0027e4c618 26 unsigned long twi_readlong (int, int);
Soyoon 0:9f0027e4c618 27 void twi_writechar (int, int, int);
Soyoon 0:9f0027e4c618 28
Soyoon 0:9f0027e4c618 29 I2C i2c;
Soyoon 0:9f0027e4c618 30 float temperature;
Soyoon 0:9f0027e4c618 31 float pressure;
Soyoon 0:9f0027e4c618 32
Soyoon 0:9f0027e4c618 33 private:
Soyoon 0:9f0027e4c618 34
Soyoon 0:9f0027e4c618 35 short ac1, ac2, ac3, b1, b2, mb, mc, md, oss;
Soyoon 0:9f0027e4c618 36 unsigned short ac4, ac5, ac6;
Soyoon 0:9f0027e4c618 37 };
Soyoon 0:9f0027e4c618 38
Soyoon 0:9f0027e4c618 39 #endif