VTT TinyNode, slightly modified code from example (https://developer.mbed.org/users/jejuho/code/VTT_NODEV3_BMP180_Si7021)

Dependencies:   BLE_API TMP_nrf51 mbed nRF51822

Fork of VTT_NODEV3_BMP180_Si7021 by Juho Eskeli

Revision:
2:b221ba23b37f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Si7021.h	Mon Jan 25 14:36:57 2016 +0000
@@ -0,0 +1,37 @@
+#ifndef SI7021_H
+#define SI7021_H
+
+#include "mbed.h"
+
+#define SI7021_ADDR 0x80
+#define SI7021_CONTROL_BYTE 0x3A    //Reset settings (default values ok, no need to write)
+#define SI7021_MEASURE_RH_HOLD_MASTER 0xE5
+#define SI7021_MEASURE_RH_NO_HOLD_MASSTER 0xF5
+#define SI7021_MEASURE_TEMPERATURE_HOLD_MASTER 0xE3
+#define SI7021_MEASURE_TEMPERATURE_NO_HOLD_MASTER 0xF3
+#define SI7021_READ_TEMPERATURE 0xE0
+#define SI7021_RESET 0xFE
+#define SI7021_WRITE_USER_REG1 0xE6
+#define SI7021_READ_USER_REG1 0xE7
+#define SI7021_READ_EID1_1 0xFA
+#define SI7021_READ_EID1_2 0x0F
+#define SI7021_READ_EID2_1 0xFC
+#define SI7021_READ_EID2_2 0xC9
+#define SI7021_READ_FW_REVISION_1 0x84
+#define SI7021_READ_FW_REVISION_2 0xB8
+
+class SI7021_I2C {
+
+public:
+    SI7021_I2C(PinName sda, PinName scl);
+
+    float Measure_Temp(void);
+    void Measure_Humidity_Temp(float *humidity, float *temperature);
+
+private:
+    float get_HumidityTemp(void);
+    uint8_t readBytes(uint8_t *values, int8_t length, bool waitConversion); 
+    I2C i2c_;
+};
+
+#endif