TSL2568, TSL2569
LIGHT-TO-DIGITAL CONVERTER
TAOS091D DECEMBER 2008
21
The LUMENOLOGY r Company
r
r
Copyright E 2008, TAOS Inc.
www.taosinc.com
APPLICATION INFORMATION: SOFTWARE
Calculating Lux
The TSL256x is intended for use in ambient light detection applications such as display backlight control, where
adjustments are made to display brightness or contrast based on the brightness of the ambient light, as
perceived by the human eye. Conventional silicon detectors respond strongly to infrared light, which the human
eye does not see. This can lead to significant error when the infrared content of the ambient light is high, such
as with incandescent lighting, due to the difference between the silicon detector response and the brightness
perceived by the human eye.
This problem is overcome in the TSL256x through the use of two photodiodes. One of the photodiodes
(channel 0) is sensitive to both visible and infrared light, while the second photodiode (channel 1) is sensitive
primarily to infrared light. An integrating ADC converts the photodiode currents to digital outputs. Channel 1
digital output is used to compensate for the effect of the infrared component of light on the channel 0 digital
output. The ADC digital outputs from the two channels are used in a formula to obtain a value that approximates
the human eye response in the commonly used Illuminance unit of Lux:
Chipscale Package
For 0 < CH1/CH0 0.35
Lux = 0.00713 CH0 0.00975 CH1
For 0.35 < CH1/CH0 0.45
Lux = 0.00813 CH0 0.01250 CH1
For 0.45 < CH1/CH0 0.52
Lux = 0.00935 CH0 0.01521 CH1
For 0.52 < CH1/CH0 0.67
Lux = 0.00394 CH0 0.00482 CH1
For 0.67 < CH1/CH0 0.85
Lux = 0.00337 CH0 0.00396 CH1
For CH1/CH0 > 0.85
Lux = 0
TMB Package
For 0 < CH1/CH0 0.35
Lux = 0.00763 CH0 0.01031 CH1
For 0.35 < CH1/CH0 0.50
Lux = 0.00817 CH0 0.01188 CH1
For 0.50 < CH1/CH0 0.60
Lux = 0.00723 CH0 0.01000 CH1
For 0.60 < CH1/CH0 0.72
Lux = 0.00573 CH0 0.00750 CH1
For 0.72 < CH1/CH0 0.85
Lux = 0.00216 CH0 0.00254 CH1
For CH1/CH0 > 0.85
Lux = 0
The formulas shown above were obtained by optical testing with fluorescent and incandescent light sources,
and apply only to open-air applications. Optical apertures (e.g. light pipes) will affect the incident light on the
device.
Simplified Lux Calculation
Below is the argument and return value including source code (shown on following page) for calculating lux.
The source code is intended for embedded and/or microcontroller applications. Two individual code sets are
provided, one for the chipscale package and one for the TMB package. All floating point arithmetic operations
have been eliminated since embedded controllers and microcontrollers generally do not support these types
of operations. Since floating point has been removed, scaling must be performed prior to calculating illuminance
if the integration time is not 402 ms and/or if the gain is not 16 as denoted in the source code on the following
pages. This sequence scales first to mitigate rounding errors induced by decimal math.
extern unsigned int CalculateLux(unsigned int iGain, unsigned int tInt, unsigned int
ch0, unsigned int ch1, int iType)