17 #ifndef _ADAFRUIT_LTR390_H 18 #define _ADAFRUIT_LTR390_H 21 #include <Adafruit_I2CDevice.h> 22 #include <Adafruit_I2CRegister.h> 25 #define LTR390_I2CADDR_DEFAULT 0x53 26 #define LTR390_MAIN_CTRL 0x00 27 #define LTR390_MEAS_RATE 0x04 28 #define LTR390_GAIN 0x05 29 #define LTR390_PART_ID 0x06 30 #define LTR390_MAIN_STATUS 0x07 31 #define LTR390_ALSDATA 0x0D 32 #define LTR390_UVSDATA 0x10 33 #define LTR390_INT_CFG 0x19 34 #define LTR390_INT_PST 0x1A 35 #define LTR390_THRESH_UP 0x21 36 #define LTR390_THRESH_LOW 0x24 55 LTR390_RESOLUTION_20BIT,
56 LTR390_RESOLUTION_19BIT,
57 LTR390_RESOLUTION_18BIT,
58 LTR390_RESOLUTION_17BIT,
59 LTR390_RESOLUTION_16BIT,
60 LTR390_RESOLUTION_13BIT,
70 bool begin(TwoWire *theWire = &Wire);
88 uint8_t persistance = 0);
95 Adafruit_I2CRegister *StatusReg;
96 Adafruit_I2CRegisterBits *DataReadyBit;
98 Adafruit_I2CDevice *i2c_dev;
void configInterrupt(bool enable, ltr390_mode_t source, uint8_t persistance=0)
Configure the interrupt based on the thresholds in setThresholds() When the sensor is below the lower...
Definition: Adafruit_LTR390.cpp:264
bool newDataAvailable(void)
Checks if new data is available in data register.
Definition: Adafruit_LTR390.cpp:107
ltr390_mode_t
Whether we are measuring ambient or UV light.
Definition: Adafruit_LTR390.h:39
ltr390_gain_t getGain(void)
Get the sensor's gain.
Definition: Adafruit_LTR390.cpp:201
void setGain(ltr390_gain_t gain)
Set the sensor gain.
Definition: Adafruit_LTR390.cpp:188
void setMode(ltr390_mode_t mode)
Set the sensor mode to EITHER ambient (LTR390_MODE_ALS) or UV (LTR390_MODE_UVS)
Definition: Adafruit_LTR390.cpp:161
ltr390_resolution_t
Measurement resolution (higher res means slower reads!)
Definition: Adafruit_LTR390.h:54
bool enabled(void)
Read the enabled-bit from the sensor.
Definition: Adafruit_LTR390.cpp:147
void setThresholds(uint32_t lower, uint32_t higher)
Set the interrupt output threshold range for lower and upper. When the sensor is below the lower...
Definition: Adafruit_LTR390.cpp:245
ltr390_gain_t
Sensor gain for UV or ALS.
Definition: Adafruit_LTR390.h:45
uint32_t readALS(void)
Read 3-bytes out of ambient data register, does not check if data is new!
Definition: Adafruit_LTR390.cpp:114
uint32_t readUVS(void)
Read 3-bytes out of UV data register, does not check if data is new!
Definition: Adafruit_LTR390.cpp:124
void enable(bool en)
Enable or disable the light sensor.
Definition: Adafruit_LTR390.cpp:134
bool begin(TwoWire *theWire=&Wire)
Setups the hardware for talking to the LTR390.
Definition: Adafruit_LTR390.cpp:45
bool reset(void)
Perform a soft reset with 10ms delay.
Definition: Adafruit_LTR390.cpp:79
Class that stores state and functions for interacting with LTR390 UV Sensor.
Definition: Adafruit_LTR390.h:67
ltr390_mode_t getMode(void)
get the sensor's mode
Definition: Adafruit_LTR390.cpp:174
ltr390_resolution_t getResolution(void)
Get the sensor's resolution.
Definition: Adafruit_LTR390.cpp:230
void setResolution(ltr390_resolution_t res)
Set the sensor resolution. Higher resolutions take longer to read!
Definition: Adafruit_LTR390.cpp:215
Adafruit_LTR390()
Instantiates a new LTR390 class.
Definition: Adafruit_LTR390.cpp:38