TI HDC1000 Temperature and Humidity Sensor

Dependents:   test_HDC1000

Revision:
2:f574cd898cba
Parent:
1:f2c04c5b28ab
--- a/HDC1000.h	Mon Apr 17 07:37:19 2017 +0000
+++ b/HDC1000.h	Tue Apr 18 02:44:57 2017 +0000
@@ -5,6 +5,8 @@
  * HDC1000 Integrated Low Power Humidity and Temperature Digital Sensor 
  * I2C address: 0x40 
  */
+ 
+#define USE_READY_PIN 1
 
 class HDC1000 {
 public:
@@ -13,23 +15,59 @@
  *
  * @param sda SDA pin
  * @param scl SCL pin
+ * @param rdy Ready pin
  * @param addr address of the I2C peripheral
  */
-// HDC1000(PinName sda, PinName scl, int addr=0x40) ;
+#if USE_READY_PIN
 HDC1000(PinName sda, PinName scl, PinName rdy, int addr=0x40) ;
+#else
+HDC1000(PinName sda, PinName scl, int addr=0x40) ;
+#endif
  
 ~HDC1000() ;
 
+/**
+ * read Temperature 
+ * @param NONE
+ * @returns float Temperature in Celsius degree
+ */
 float    readTemperature(void) ;
+
+/**
+ * read Humidity
+ * @param NONE
+ * @returns float Humidity in percentage
+ */
 float    readHumidity(void) ;
 
+/** 
+ * reset the module
+ */
 void     reset(void) ;
 
 float    u2f_temp(uint16_t utemp) ;
 float    u2f_hume(uint16_t uhume) ;
+
 /* for mode 0 */
+/**
+ * get Raw Temperature value
+ * @param NONE
+ * @reurns Raw Temperature value
+ */
 uint16_t getTemperature(void) ;
+
+/**
+ * get Raw Humidity value
+ * @param NONE
+ * @returns Raw Humidity value
+ */
 uint16_t getHumidity(void) ;
+
+/**
+ * read Temperature and Humidity together (mode==0)
+ * @param float *temp returns temperature
+ * @param float *hume returns humidity
+ */
 void     readData(float *temp, float *hume) ;
 
 /* for mode 1 */
@@ -53,7 +91,9 @@
 
 private:
   I2C m_i2c;
+#if USE_READY_PIN
   DigitalIn m_rdy ;
+#endif
   int m_addr;
   void readRegs(int addr, uint8_t * data, int len);
   void writeRegs(uint8_t * data, int len);