VEML7700 High Accuracy Ambient Light Sensor with I2C Interface

Dependents:   testVEML7700 ROS_VEML7700_test ROSSerial_MultipleSensors

Committer:
Rhyme
Date:
Thu Mar 30 04:21:08 2017 +0000
Revision:
0:6dabb0ddf3d9
Child:
2:63196ef2a2ed
First commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rhyme 0:6dabb0ddf3d9 1 #ifndef _VEML7700_H_
Rhyme 0:6dabb0ddf3d9 2 #define _VEML7700_H_
Rhyme 0:6dabb0ddf3d9 3 /**
Rhyme 0:6dabb0ddf3d9 4 * Vishay VEML7700
Rhyme 0:6dabb0ddf3d9 5 * High Accuracy Ambient Light Sensor with I2C Interface
Rhyme 0:6dabb0ddf3d9 6 */
Rhyme 0:6dabb0ddf3d9 7 /*
Rhyme 0:6dabb0ddf3d9 8 * @code
Rhyme 0:6dabb0ddf3d9 9 * @endcode
Rhyme 0:6dabb0ddf3d9 10 */
Rhyme 0:6dabb0ddf3d9 11 class VEML7700
Rhyme 0:6dabb0ddf3d9 12 {
Rhyme 0:6dabb0ddf3d9 13 public:
Rhyme 0:6dabb0ddf3d9 14 /**
Rhyme 0:6dabb0ddf3d9 15 * VEML7700 constructor
Rhyme 0:6dabb0ddf3d9 16 *
Rhyme 0:6dabb0ddf3d9 17 * @param sda SDA pin
Rhyme 0:6dabb0ddf3d9 18 * @param sdl SCL pin
Rhyme 0:6dabb0ddf3d9 19 * @param addr addr of the I2C peripheral
Rhyme 0:6dabb0ddf3d9 20 */
Rhyme 0:6dabb0ddf3d9 21 VEML7700(PinName sda, PinName scl, int addr);
Rhyme 0:6dabb0ddf3d9 22
Rhyme 0:6dabb0ddf3d9 23 /**
Rhyme 0:6dabb0ddf3d9 24 * VEML7700 destructor
Rhyme 0:6dabb0ddf3d9 25 */
Rhyme 0:6dabb0ddf3d9 26 ~VEML7700();
Rhyme 0:6dabb0ddf3d9 27
Rhyme 0:6dabb0ddf3d9 28 void setALSConf(uint16_t conf) ;
Rhyme 0:6dabb0ddf3d9 29 void setALS_WH(uint16_t wh) ;
Rhyme 0:6dabb0ddf3d9 30 void setALS_WL(uint16_t wl) ;
Rhyme 0:6dabb0ddf3d9 31 void setPowerSaving(uint16_t ps) ;
Rhyme 0:6dabb0ddf3d9 32 uint16_t getALS(void) ;
Rhyme 0:6dabb0ddf3d9 33 uint16_t getWHITE(void) ;
Rhyme 0:6dabb0ddf3d9 34 uint16_t getALS_INT(void) ;
Rhyme 0:6dabb0ddf3d9 35
Rhyme 0:6dabb0ddf3d9 36 private:
Rhyme 0:6dabb0ddf3d9 37 I2C m_i2c;
Rhyme 0:6dabb0ddf3d9 38 int m_addr;
Rhyme 0:6dabb0ddf3d9 39 void readRegs(int addr, uint8_t * data, int len);
Rhyme 0:6dabb0ddf3d9 40 void writeRegs(uint8_t * data, int len);
Rhyme 0:6dabb0ddf3d9 41
Rhyme 0:6dabb0ddf3d9 42 };
Rhyme 0:6dabb0ddf3d9 43 #endif /* _VEML6030_H_ */