Library for using the AMS TSL45315 Ambient Light Sensor

Revision:
1:303c95402cdc
Parent:
0:cafc6c4ed875
Child:
3:f350cffa13b3
--- a/tsl45315.cpp	Mon Mar 24 17:00:33 2014 +0000
+++ b/tsl45315.cpp	Tue Mar 25 10:54:56 2014 +0000
@@ -4,14 +4,24 @@
 namespace TSL45x
 {
 
-TSL45315::TSL45315( PinName p_sda, PinName p_scl ): _i2c( p_sda, p_scl )
+TSL45315::TSL45315( PinName p_sda, PinName p_scl, int i2c_freq, float t ): _i2c( p_sda, p_scl )
 {
-    _i2c.frequency( I2C_FREQ );
+    _i2c.frequency( i2c_freq );
     getIDdata();
     setReg( CONTROL_REG, NORMAL_OP);
     setReg( CONFIG_REG, M1);
     setMultiplier( M1 );
-    _luxTicker.attach( this, &TSL45315::getLuxData, 1 );
+    _luxTicker.attach( this, &TSL45315::getLuxData, t );
+}
+
+TSL45315::TSL45315( PinName p_sda, PinName p_scl, int i2c_freq, float t, uint8_t mult ): _i2c( p_sda, p_scl )
+{
+    _i2c.frequency( i2c_freq );
+    getIDdata( );
+    setReg( CONTROL_REG, NORMAL_OP );
+    setReg( CONFIG_REG, mult );
+    setMultiplier( mult );
+    _luxTicker.attach( this, &TSL45315::getLuxData, t );
 }
 
 TSL45315::TSL45315( PinName p_sda, PinName p_scl, uint8_t mult ): _i2c( p_sda, p_scl )
@@ -21,7 +31,15 @@
     setReg( CONTROL_REG, NORMAL_OP );
     setReg( CONFIG_REG, mult );
     setMultiplier( mult );
-    _luxTicker.attach( this, &TSL45315::getLuxData, 1 );
+}
+
+TSL45315::TSL45315( PinName p_sda, PinName p_scl): _i2c( p_sda, p_scl )
+{
+    _i2c.frequency( I2C_FREQ );
+    getIDdata( );
+    setReg( CONTROL_REG, NORMAL_OP );
+    setReg( CONFIG_REG, M1 );
+    setMultiplier( M1 );
 }
 
 void TSL45315::setMultiplier( uint8_t mult )
@@ -64,7 +82,7 @@
     devID = ( id[0]&0xF0 );
 }
 
-void TSL45315::getLuxData()
+void TSL45315::getLuxData( )
 {
     char data[2];
     char cmd[1];