ADPD1080BCBZR7 [ADI]

Photometric Front Ends;
ADPD1080BCBZR7
型号: ADPD1080BCBZR7
厂家: ADI    ADI
描述:

Photometric Front Ends

文件: 总74页 (文件大小:1374K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
Photometric Front Ends  
ADPD1080/ADPD1081  
Data Sheet  
FEATURES  
GENERAL DESCRIPTION  
Multifunction photometric front end  
The ADPD1080/ADPD1081 are highly efficient, photometric  
front ends, each with an integrated 14-bit analog-to-digital  
converter (ADC) and a 20-bit burst accumulator that works  
with flexible light emitting diode (LED) drivers. The ADPD1080/  
ADPD1081 stimulate an LED and measures the corresponding  
optical return signal. The data output and functional configuration  
occur over a 1.8 V I2C interface on the ADPD1080 or a serial  
port interface (SPI) on the ADPD1081. The control circuitry  
includes flexible LED signaling and synchronous detection.  
Fully integrated AFE, ADC, LED drivers, and timing core  
Enables ambient light rejection capability without the need  
for photodiode optical filters  
Three 370 mA LED peak current drivers  
Flexible, multiple, short LED pulses per optical sample  
20-bit burst accumulator enabling 20 bits per sample period  
On-board sample to sample accumulator, enabling up to  
27 bits per data read  
Low power operation  
The analog front end (AFE) features rejection of signal offset and  
corruption due to modulated interference commonly caused by  
ambient light without the need for optical filters or dc cancellation  
circuitry that requires external control.  
SPI, I2C interface, and 1.8 V analog/digital core  
Flexible sampling frequency ranging from 0.122 Hz to 2700 Hz  
FIFO data operation  
Qualified for automotive applications  
Couple the ADPD1080/ADPD1081 with a low capacitance  
photodiode of <100 pF for optimal performance. The ADPD1080/  
ADPD1081 can be used with any LED. The ADPD1080 is available  
in a 16-ball, 2.46 mm × 1.4 mm WLCSP and a 28-lead, 4 mm ×  
4 mm LFCSP. The SPI only version, ADPD1081, is available in  
a 17-ball, 2.46 mm × 1.4 mm WLCSP.  
APPLICATIONS  
Wearable health and fitness monitors  
Clinical measurements, for example, SpO2  
Industrial monitoring  
Background light measurements  
Rev. C  
Document Feedback  
Information furnished by Analog Devices is believed to be accurate and reliable. However, no  
responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other  
rights of third parties that may result from its use. Specifications subject to change without notice.  
No license is granted by implication or otherwise under any patent or patent rights of Analog  
Devices. Trademarks and registeredtrademarks are the property of their respective owners.  
One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A.  
Tel: 781.329.4700 ©2018–2020 Analog Devices, Inc. All rights reserved.  
Technical Support  
www.analog.com  
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
TABLE OF CONTENTS  
Features.............................................................................................. 1  
LED Driver Pins and LED Supply Voltage............................. 32  
LED Driver Operation............................................................... 32  
Determining the Average Current........................................... 33  
Determining CVLED ..................................................................... 33  
LED Inductance Considerations.............................................. 34  
Recommended Start-Up Sequence.......................................... 34  
Reading Data............................................................................... 34  
Clocks and Timing Calibration................................................ 36  
Optional Timing Signals Available on GPIO0 and GPIO1 . 36  
Calculating Current Consumption.......................................... 38  
Optimizing SNR per Watt ........................................................ 39  
Applications ...................................................................................... 1  
General Description......................................................................... 1  
Table of Contents ............................................................................. 2  
Revision History ............................................................................... 3  
Functional Block Diagrams............................................................. 4  
Specifications .................................................................................... 6  
Temperature and Power Specifications .................................... 6  
Performance Specifications......................................................... 7  
Analog Specifications................................................................... 8  
Digital Specifications ................................................................. 10  
Timing Specifications ................................................................ 11  
Absolute Maximum Ratings ......................................................... 13  
Thermal Resistance.................................................................... 13  
Recommended Soldering Profile ............................................. 13  
ESD Caution................................................................................ 13  
Pin Configurations and Function Descriptions......................... 14  
Typical Performance Characteristics........................................... 17  
Theory of Operation ...................................................................... 19  
Introduction................................................................................ 19  
Dual Time Slot Operation......................................................... 19  
Time Slot Switch......................................................................... 20  
Adjustable Sampling Frequency............................................... 23  
State Machine Operation .......................................................... 24  
Normal Mode Operation and Data Flow................................ 24  
AFE Operation............................................................................ 26  
AFE Integration Offset Adjustment ........................................ 26  
I2C Serial Interface...................................................................... 28  
SPI Port........................................................................................ 29  
Applications Information.............................................................. 31  
Typical Connection Diagram ................................................... 31  
Optimizing Power by Disabling Unused Channels and  
Amplifiers.................................................................................... 41  
Optimizing Dynamic Range for High Ambient Light  
Conditions................................................................................... 42  
TIA ADC Mode.......................................................................... 43  
Pulse Connect Mode.................................................................. 46  
Synchronous ECG and PPG Measurement Using TIA ADC  
Mode ............................................................................................ 46  
Float Mode .................................................................................. 47  
Register Listing ............................................................................... 54  
LED Control Registers............................................................... 58  
AFE Configuration Registers.................................................... 60  
Float Mode Registers ................................................................. 64  
System Registers......................................................................... 66  
ADC Registers ............................................................................ 71  
Data Registers ............................................................................. 72  
Required Start-Up Load Procedure......................................... 72  
Outline Dimensions....................................................................... 73  
Ordering Guide .......................................................................... 74  
Automotive Products ................................................................ 74  
Rev. C | Page 2 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
REVISION HISTORY  
5/2020—Rev. B to Rev. C  
Changes to Table 6 and Figure 3...................................................11  
Change to Table 42 .........................................................................69  
Added Figure 2; Renumbered Sequentially..........................................5  
Changes to Table 2............................................................................6  
Changes to Table 5..........................................................................10  
Added SPI Timing Specifications Section, Table 7; Renumbered  
Sequentially, SPI Timing Diagram Section, and Figure 4.........12  
Added Table 9..................................................................................13  
Added Figure 6 and Table 12 ........................................................14  
Added Figure 8 and Table 14 ........................................................16  
Added Figure 16..............................................................................17  
Changes to Introduction Section..................................................19  
Added ADPD1080 LFCSP Input Configurations Section and  
Figure 18 to Figure 21.....................................................................20  
Added Figure 22 to Figure 24 and Table 16................................21  
Changes to Data Read Section ......................................................25  
Added SPI Port Section, Table 20, and Table 21........................29  
Added Figure 33 to Figure 35........................................................30  
Changes to Typical Connection Diagram Section.....................31  
Added Figure 38..............................................................................31  
Added Figure 39 and Table 22 ......................................................32  
Changes to Protecting Against TIA Saturation in Normal  
10/2018—Rev. A to Rev. B  
Changed TA = Full Operating Temperature Range to  
TA = 25°C........................................................................ Throughout  
Changes to Features Section............................................................1  
Changes to ADPD1080WBCPZR7 Parameter, Table 1 ..............6  
Deleted Input Capacitance Parameter, Table 4 ............................8  
Changes to Digital Specifications Section ...................................10  
Changes to Timing Specifications Section ..................................11  
Changes to SPI Timing Specifications Section ...........................12  
Change to Calibrating the 32 kHz Clock Section.......................36  
Added Improving SNR Using Integrator Chopping Section,  
Figure 46, and Table 25; Renumbered Sequentially...................40  
Changes to Table 36........................................................................54  
Changes to Table 39........................................................................62  
Changes to Table 40........................................................................63  
Changes to Register 0x58 Description Column, Table 41.........65  
Changes to Ordering Guide...........................................................74  
Added Automotive Products Section...........................................74  
Operation Section ...........................................................................42  
Change to Hex Addr. 0x08, Reset Column, Table 35................54  
Changes to Table 37........................................................................60  
Changes to Table 41........................................................................67  
Updated Outline Dimensions .......................................................73  
Changes to Ordering Guide ..........................................................74  
7/2018—Rev. 0 to Rev. A  
Added ADPD1081 .............................................................Universal  
Added 28-Lead LFCSP (CP-28-5), ADPD1080.............Universal  
Added 17-Ball WLCSP (CB-17-1), ADPD1081.............Universal  
Changes to Features Section and General Description Section ....... 1  
Changes to Figure 1...................................................................................4  
1/2018—Revision 0: Initial Version  
Rev. C | Page 3 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
FUNCTIONAL BLOCK DIAGRAMS  
AVDD  
DVDD  
ADPD1080/ADPD1081  
PDC  
VREF  
1µF  
WLCSP  
TIME SLOT  
SWITCH  
PD1  
PD5  
TIME SLOT A  
DATA  
AFE:  
SIGNAL CONDITIONING  
GPIO0  
GPIO1  
14-BIT  
ADC  
TIA  
BPF  
±1 INTEGRATOR  
V
BIAS  
TIME SLOT B  
DATA  
AFE  
CONFIGURATION  
MOSI  
MISO  
A
B
ADPD1081  
SCLK  
CS  
ONLY  
DIGITAL  
DATAPATH  
AND  
INTERFACE  
CONTROL  
TIME SLOT  
SELECT  
SDA  
SCL  
ADPD1080  
ONLY  
LEDX3  
LEDX2  
LEDX1  
LEDX3  
LED3 LEVEL AND TIMING CONTROL  
LED3 DRIVER  
LED2 DRIVER  
LEDX2  
LEDX1  
LED2 LEVEL AND TIMING CONTROL  
LED1 LEVEL AND TIMING CONTROL  
DGND  
AGND  
LED1 DRIVER  
V
LED  
LGND  
Figure 1. Block Diagram for ADPD1080/ADPD1081 WLCSP (Chip Scale Package) Versions  
Rev. C | Page 4 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
AVDD  
DVDD  
TIME SLOT  
SWITCH  
ANALOG BLOCK  
PDC  
PD1  
AFE:  
SIGNAL CONDITIONING  
ADPD1080  
LFCSP  
TIA  
BPF  
±1 INTEGRATOR  
PD5  
V
V
V
V
BIAS  
VREF  
AFE:  
SIGNAL CONDITIONING  
PD2  
PD6  
1µF  
TIME SLOT A  
TIA  
BPF  
DATA  
±1 INTEGRATOR  
14-BIT  
ADC  
BIAS  
TIME SLOT B  
DATA  
AFE:  
SIGNAL CONDITIONING  
AFE  
PD3  
PD7  
SDA  
CONFIGURATION  
TIA  
BPF  
±1 INTEGRATOR  
A
B
SCL  
BIAS  
GPIO0  
TIME  
SLOT  
SELECT  
DIGITAL  
GPIO1  
AFE:  
DATAPATH  
SIGNAL CONDITIONING  
AND  
PD4  
PD8  
INTERFACE  
CONTROL  
TIA  
BPF  
±1 INTEGRATOR  
BIAS  
DGND  
AGND  
LEDX3  
LEDX2  
LEDX1  
LED3  
LED3 LEVEL AND TIMING CONTROL  
LED2 LEVEL AND TIMING CONTROL  
LED1 LEVEL AND TIMING CONTROL  
LED3 DRIVER  
LED2 DRIVER  
LED2  
LED1  
LED1 DRIVER  
V
LED  
LGND  
Figure 2. Block Diagram for ADPD1080 LFCSP Version  
Rev. C | Page 5 of 74  
ADPD1080/ADPD1081  
SPECIFICATIONS  
Data Sheet  
TEMPERATURE AND POWER SPECIFICATIONS  
Operating Conditions  
Table 1.  
Parameter  
Test Conditions/Comments  
Min  
Typ  
Max  
Unit  
TEMPERATURE  
Operating Range  
ADPD1080WBCPZR7  
Storage Range  
POWER SUPPLY VOLTAGE  
VDD  
−40  
−40  
−65  
+85  
+105  
+150  
°C  
°C  
°C  
Automotive grade only  
Applied at the AVDD, DVDD, and VDD pins  
1.7  
1.8  
1.9  
V
Current Consumption  
AVDD = DVDD = 1.8 V, ambient temperature (TA) = 25°C, unless otherwise noted.  
Table 2.  
Parameter  
Symbol  
Test Conditions/Comments  
Min Typ Max Unit  
POWER SUPPLY (VDD) CURRENT  
VDD Supply Current1  
SLOTx_LED_OFFSET = 25 µs; LED_PERIOD =13 µs;  
LED peak current = 25 mA, single-channel mode  
1 Pulse  
100 Hz data rate; Time Slot A only  
100 Hz data rate; Time Slot B only  
100 Hz data rate; both Time Slot A and Time Slot B  
100 Hz data rate; Time Slot A only  
100 Hz data rate; Time Slot B only  
53  
41  
76  
107  
95  
µA  
µA  
µA  
µA  
µA  
µA  
10 Pulses  
100 Hz data rate; both Time Slot A and Time Slot B  
184  
Peak VDD Supply Current (1.8 V)  
4-Channel Operation  
1-Channel Operation  
IVDD_PEAK  
9.3  
4.5  
0.3  
mA  
mA  
µA  
Standby Mode Current  
IVDD_STANDBY  
SYSTEM POWER DISSIPATION2  
Continuous, single channel, photoplethysmography  
(PPG) measurement  
Average Power  
VLED = 4.0 V, VDD = 1.8 V, signal-to-noise ratio (SNR) =  
75 dB,  
25 Hz output data rate, 70% full-scale input signal  
Current transfer ratio (CTR) = 20 nA/mA  
CTR = 100 nA/mA  
258  
75  
µW  
µW  
dB  
POWER SUPPLY REJECTION RATIO (PSRR)  
DC PSRR at 75% full-scale input  
24  
1 VDD is the voltage applied at the AVDD and DVDD pins.  
2 System power dissipation is the total average power dissipation, including the AFE VDD supply plus the VLED power supply to the LEDs.  
Rev. C | Page 6 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
PERFORMANCE SPECIFICATIONS  
AVDD = DVDD = 1.8 V, TA = 25°C, unless otherwise noted.  
Table 3.  
Parameter  
Test Conditions/Comments  
Min  
Typ  
Max Unit  
DATA ACQUISITION  
Resolution  
Single pulse  
64 to 255 pulses  
64 to 255 pulses and sample average = 128  
14  
20  
27  
Bits  
Bits  
Bits  
Sample  
Data Read  
LED DRIVER  
LED Current Slew Rate1  
Rising  
TA = 25°C; ILED = 70 mA  
Slew rate control setting = 0  
Slew rate control setting = 7  
Slew rate control setting = 0, 1, or 2  
Slew rate control setting = 6 or 7  
LED pulse enabled  
Voltage above ground required for LED driver operation  
AFE width = 4 µs2  
AFE width = 3 µs  
Time Slot A or Time Slot B; normal mode; 1 pulse;  
SLOTA_LED_OFFSET = 23 µs; SLOTA_PERIOD = 19 µs  
Both time slots; normal mode; 1 pulse;  
SLOTA_LED_OFFSET = 23 µs; SLOTA_PERIOD = 19 µs  
Time Slot A or Time Slot B; normal mode; 8 pulses;  
240  
mA/µs  
1400  
3200  
4500  
mA/µs  
mA/µs  
mA/µs  
mA  
Falling  
LED Peak Current  
Driver Compliance Voltage  
LED PERIOD  
370  
0.6  
19  
17  
V
µs  
µs  
Sampling Frequency3  
0.122  
0.122  
0.122  
0.122  
2000 Hz  
1600 Hz  
1600 Hz  
1000 Hz  
SLOTA_LED_OFFSET = 23 µs; SLOTA_PERIOD = 19 µs  
Both time slots; normal mode; 8 pulses;  
SLOTA_LED_OFFSET = 23 µs; SLOTA_PERIOD = 19 µs  
CATHODE PIN (PDC) VOLTAGE  
During All Sampling Periods  
Register 0x54, Bit 7 = 0x0; Register 0x3C, Bit 9 = 14  
Register 0x54, Bit 7 = 0x0; Register 0x3C, Bit 9 = 0  
1.8  
1.3  
1.8  
1.3  
1.55  
0
1.8  
1.3  
1.55  
0
1.8  
1.3  
1.8  
1.3  
1.55  
0
V
V
V
V
V
V
V
V
V
V
V
V
V
V
V
V
During Time Slot A Sampling  
During Time Slot B Sampling  
During Sleep Periods  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[9:8] = 0x04  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[9:8] = 0x1  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[9:8] = 0x2  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[9:8] = 0x35  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[11:10] = 0x04  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[11:10] = 0x1  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[11:10] = 0x2  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[11:10] = 0x35  
Register 0x54, Bit 7 = 0x0; Register 0x3C, Bit 9 = 1  
Register 0x54, Bit 7 = 0x0; Register 0x3C, Bit 9 = 0  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[13:12] = 0x0  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[13:12] = 0x1  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[13:12] = 0x2  
Register 0x54, Bit 7 = 0x1; Register 0x54, Bits[13:12] = 0x3  
PHOTODIODE INPUT PINS/ANODE VOLTAGE  
During All Sampling Periods  
1.3  
V
During Sleep Periods  
Cathode voltage  
V
1 LED inductance is negligible for these values. The effective slew rate slows with increased inductance.  
2 Minimum LED period = (2 × AFE width) + 5 µs.  
3 The maximum values in this specification are the internal ADC sampling rates in normal mode using the internal 32 kHz state machine clock. The I2C read rates in some  
configurations may limit the output data rate.  
4 This mode can induce additional noise and is not recommended unless necessary. The 1.8 V setting uses VDD, which contains greater amounts of differential voltage  
noise with respect to the anode voltage.  
5 This setting is not recommended for photodiodes because it causes a 1.3 V forward-bias of the photodiode.  
Rev. C | Page 7 of 74  
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
ANALOG SPECIFICATIONS  
AVDD = DVDD = 1.8 V, TA = 25°C, unless otherwise noted. Compensation of the AFE offset is explained in the AFE Operation section.  
Table 4.  
Parameter  
Test Conditions/Comments  
Min Typ  
Max Unit  
PULSED SIGNAL CONVERSIONS, 3 µs WIDE LED PULSE1  
4 µs wide AFE integration; normal operation,  
Register 0x43 and Register 0x45 = 0xADA5  
Transimpedance amplifier (TIA) feedback resistor  
ADC Resolution2  
25 kΩ  
50 kΩ  
100 kΩ  
200 kΩ  
3.27  
1.64  
0.82  
0.41  
nA/LSB  
nA/LSB  
nA/LSB  
nA/LSB  
ADC Saturation Level  
TIA feedback resistor  
25 kΩ  
26.8  
13.4  
6.7  
µA  
µA  
µA  
µA  
50 kΩ  
100 kΩ  
200 kΩ  
3.35  
Ambient Signal Headroom on Pulsed Signal  
TIA feedback resistor  
25 kΩ  
23.6  
11.8  
5.9  
µA  
µA  
µA  
µA  
50 kΩ  
100 kΩ  
200 kΩ  
2.95  
PULSED SIGNAL CONVERSIONS, 2 µs WIDE LED PULSE1  
ADC Resolution2  
3 µs wide AFE integration; normal operation,  
Register 0x43 and Register 0x45 = 0xADA5  
TIA feedback resistor  
25 kΩ  
4.62  
2.31  
1.15  
0.58  
nA/LSB  
nA/LSB  
nA/LSB  
nA/LSB  
50 kΩ  
100 kΩ  
200 kΩ  
ADC Saturation Level  
TIA feedback resistor  
25 kΩ  
37.84  
18.92  
9.46  
µA  
µA  
µA  
µA  
50 kΩ  
100 kΩ  
200 kΩ  
4.73  
Ambient Signal Headroom on Pulsed Signal  
FULL SIGNAL CONVERSIONS3  
TIA feedback resistor  
25 kΩ  
50 kΩ  
100 kΩ  
200 kΩ  
12.56  
6.28  
3.14  
1.57  
µA  
µA  
µA  
µA  
TIA Saturation Level of Pulsed Signal and Ambient  
Level  
TIA feedback resistor  
25 kΩ  
50 kΩ  
100 kΩ  
200 kΩ  
50.4  
25.2  
12.6  
6.3  
µA  
µA  
µA  
µA  
TIA Linear Range  
TIA feedback resistor  
25 kΩ  
42.8  
21.4  
10.7  
5.4  
µA  
µA  
µA  
µA  
50 kΩ  
100 kΩ  
200 kΩ  
Rev. C | Page 8 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Parameter  
Test Conditions/Comments  
Min Typ  
Max Unit  
SYSTEM PERFORMANCE  
Total Output Noise Floor  
Normal mode; per pulse; per channel; no LED;  
photodiode capacitance (CPD) = 70 pF  
25 kΩ; referred to ADC input  
25 kΩ; referred to peak input signal for  
2 µs LED pulse  
1.0  
4.6  
LSB rms  
nA rms  
25 kΩ; referred to peak input signal for  
3 µs LED pulse  
3.3  
nA rms  
25 kΩ; saturation SNR per pulse per channel4  
78.3  
1.2  
2.8  
dB  
LSB rms  
nA rms  
50 kΩ; referred to ADC input  
50 kΩ; referred to peak input signal for  
2 µs LED pulse  
50 kΩ; referred to peak input signal for  
3 µs LED pulse  
2.0  
nA rms  
50 kΩ; saturation SNR per pulse per channel4  
76.6  
1.5  
1.7  
dB  
LSB rms  
nA rms  
100 kΩ; referred to ADC input  
100 kΩ; referred to peak input signal for  
2 µs LED pulse  
100 kΩ; referred to peak input signal for  
3 µs LED pulse  
1.2  
nA rms  
100 kΩ; saturation SNR per pulse per channel4  
74.9  
2.2  
1.3  
dB  
LSB rms  
nA rms  
200 kΩ; referred to ADC input  
200 kΩ; referred to peak input signal for  
2 µs LED pulse  
200 kΩ; referred to peak input signal for  
3 µs LED pulse  
200 kΩ; saturation SNR per pulse per channel4  
0.9  
nA rms  
dB  
71.2  
1 This saturation level applies to the ADC only and, therefore, includes only the pulsed signal. Any nonpulsatile signal is removed prior to the ADC stage.  
2 ADC resolution is listed per pulse when the AFE offset is correctly compensated per the AFE Operation section. If using multiple pulses, divide by the number of pulses.  
3 This saturation level applies to the full signal path and, therefore, includes both the ambient signal and the pulsed signal. The linear dynamic range of the TIA is 85% of  
the TIA saturation levels shown.  
4 The noise term of the saturation SNR value refers to the receiver noise only and does not include photon shot noise or any noise on the LED signal itself.  
Rev. C | Page 9 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
DIGITAL SPECIFICATIONS  
DVDD = 1.7 V to 1.9 V, TA = -40°C to 105°C, unless otherwise noted.  
Table 5.  
Parameter  
Symbol Test Conditions/Comments  
Min  
Typ Max  
Unit  
LOGIC INPUTS (GPIOx, SCL1, SDA1, SCLK2, MOSI2, CS2)  
Input Voltage Level  
High  
VIH  
VIL  
SCL1, SDA1  
0.7 × DVDD  
0.7 × DVDD  
3.6  
DVDD  
V
V
V
2
2
CS2  
GPIOx, SCLK , MOSI ,  
Low  
0.3 × DVDD  
Input Current Level  
High  
Low  
Input Capacitance  
LOGIC OUTPUTS  
Output Voltage Level  
High  
IIH  
IIL  
CIN  
−10  
−10  
+10  
+10  
µA  
µA  
pF  
10  
GPIOx, MISO2  
VOH  
VOL  
2 mA high level output current DVDD − 0.5  
V
V
Low  
2 mA low level output current  
SDA1  
2 mA low level output current  
SDA1  
VOL1 = 0.6 V  
0.5  
Output Voltage Level  
Low  
Output Current Level  
Low  
VOL1  
IOL  
0.2 × DVDD  
V
6
mA  
1 This pin is only available as part of the I2C interface on the ADPD1080.  
2 This pin is only available as part of the SPI port on the ADPD1081.  
Rev. C | Page 10 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
TIMING SPECIFICATIONS  
DVDD = 1.7 V to 1.9 V, TA = −40°C to +105°C, unless otherwise noted.  
I2C Timing Specifications  
Table 6.  
Parameter  
I2C PORT  
SCL  
Symbol  
Test Conditions/Comments  
I2C port on ADPD1080 only.  
Min  
Typ  
Max  
Unit  
Frequency  
1
0.4  
Mbps  
Minimum Pulse Width  
High  
Low  
t1  
t2  
370  
530  
ns  
ns  
Start Condition  
Hold Time  
t3  
t4  
t5  
t9  
260  
260  
50  
ns  
ns  
ns  
ns  
Setup Time  
SDA Setup Time  
SDA Hold Time  
SCL and SDA  
Rise Time  
0
t6  
t7  
1000  
300  
ns  
ns  
Fall Time  
Stop Condition  
Setup Time  
t8  
260  
ns  
I2C Timing Diagram  
t5  
t3  
t3  
t9  
SDA  
t6  
t1  
SCL  
t2  
t7  
t4  
t8  
Figure 3. I2C Timing Diagram  
Rev. C | Page 11 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
SPI Timing Specifications  
DVDD = 1.7 V to 1.9 V, TA = −40°C to +85°C, unless otherwise noted.  
Table 7.  
Parameter  
SPI PORT  
SCLK  
Symbol  
Test Conditions/Comments  
Min  
Typ  
Max  
Unit  
SPI Port available on ADPD1081 only  
Frequency  
fSCLK  
10  
MHz  
Minimum Pulse Width  
High  
Low  
tSCLKPWH  
tSCLKPWL  
20  
20  
ns  
ns  
CS  
Setup Time  
tCS  
CS setup to SCLK rising edge  
CS hold from SCLK rising edge  
CS pulse width high  
10  
10  
10  
ns  
ns  
ns  
S
Hold Time  
tCS  
H
Pulse Width High  
tCS  
PWH  
MOSI  
Setup Time  
Hold Time  
MISO Output Delay  
tMOSIS  
tMOSIH  
tMISOD  
MOSI setup to SCLK rising edge  
MOSI hold from SCLK rising edge  
MISO valid output delay from SCLK falling edge  
10  
10  
ns  
ns  
ns  
21  
SPI Timing Diagram  
tCSH  
tCSS  
tCSPWH  
tSCLKPWL  
tSCLKPWH  
CS  
SCLK  
MOSI  
tMOSIH  
tMOSIS  
MISO  
tMISOD  
Figure 4. SPI Timing Diagram  
Rev. C | Page 12 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
ABSOLUTE MAXIMUM RATINGS  
RECOMMENDED SOLDERING PROFILE  
Table 8. ADPD1080 Absolute Maximum Rating  
Figure 5 and Table 11 provide details about the recommended  
soldering profile.  
Parameter  
Rating  
AVDD to AGND  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +3.6 V  
−0.3 V to +3.9 V  
150°C  
DVDD to AGND (LFCSP Only)  
GPIOx to AGND (LFCSP Only)  
DVDD to DGND (WLCSP Only)  
GPIOx to DGND (WLCSP Only)  
LEDXx to LGND  
CRITICAL ZONE  
P
T
TO T  
P
L
P
RAMP-UP  
L
T
L
SMAX  
SMIN  
SCL, SDA to DGND  
tS  
Junction Temperature  
Electrostatic Discharge (ESD)  
Human Body Model (HBM)  
Charged Device Model (CDM)  
Machine Model (MM)  
PREHEAT  
1500 V  
500 V  
100 V  
25°C TO PEAK  
TIME  
Figure 5. Recommended Soldering Profile  
Table 9. ADPD1081 Absolute Maximum Rating  
Table 11. Recommended Soldering Profile  
Parameter  
Rating  
Profile Feature  
Condition (Pb-Free)  
VDD to AGND  
VDD to DGND  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +2.2 V  
−0.3 V to +3.6 V  
150°C  
Average Ramp Rate (TL to TP)  
Preheat  
Minimum Temperature (TSMIN  
Maximum Temperature (TSMAX  
Time (TSMIN to TSMAX) (tS)  
TSMAX to TL Ramp-Up Rate  
Time Maintained Above Liquidous  
Temperature  
Liquidous Temperature (TL)  
Time (tL)  
Peak Temperature (TP)  
3°C/sec max  
CS  
GPIOx, MOSI, MISO, SCLK,  
LEDXx to LGND  
Junction Temperature  
Electrostatic Discharge (ESD)  
Human Body Model (HBM)  
Charged Device Model (CDM)  
Machine Model (MM)  
to DGND  
)
150°C  
200°C  
60 sec to 180 sec  
3°C/sec maximum  
)
1500 V  
500 V  
100 V  
217°C  
60 sec to 150 sec  
+260 (+0/−5)°C  
<30 sec  
Stresses at or above those listed under Absolute Maximum  
Ratings may cause permanent damage to the product. This is a  
stress rating only; functional operation of the product at these  
or any other conditions above those indicated in the  
operational section of this specification is not implied.  
Operation beyond the maximum operating conditions for  
extended periods may affect product reliability.  
Time Within 5°C of Actual Peak  
Temperature (tP)  
Ramp-Down Rate  
6°C/sec maximum  
8 minutes maximum  
Time from 25°C to Peak Temperature  
ESD CAUTION  
THERMAL RESISTANCE  
Thermal performance is directly linked to printed circuit board  
(PCB) design and operating environment. Close attention to  
PCB thermal design is required.  
θJA is the junction to ambient thermal resistance value, and θJC  
is the junction to case thermal resistance value.  
Table 10. Thermal Resistance  
Package Type1  
θJA  
54.9  
60  
θJC  
5.3  
0.5  
0.5  
Unit  
°C/W  
°C/W  
°C/W  
CP-28-5 (28-Lead LFCSP)  
CB-16-18 (16-Ball WLCSP)  
CB-17-1 (17-Ball WLCSP)  
60  
1 Thermal impedance simulated values are based on a JEDEC 2S2P board and  
2 thermal vias. See JEDEC JESD-51.  
Rev. C | Page 13 of 74  
 
 
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
PIN CONFIGURATIONS AND FUNCTION DESCRIPTIONS  
21 NIC  
GPIO0 1  
GPIO1 2  
DVDD 3  
AGND 4  
VREF 5  
AVDD 6  
PD1 7  
20 NIC  
19 NIC  
ADPD1080  
18 NIC  
17 NIC  
16 NIC  
15 PD8  
TOP VIEW  
(Not to Scale)  
NOTES  
1. NIC = NOT INTERNALLY CONNECTED (NONBONDED PAD).  
THIS PIN CAN BE GROUNDED.  
2. EXPOSED PAD (DIGITAL GROUND). CONNECT THE  
EXPOSED PAD TO GROUND.  
Figure 6. 28-Lead LFCSP Pin Configuration (ADPD1080)  
Table 12. 28-Lead LFCSP Pin Function Descriptions (ADPD1080)  
Pin No.  
Mnemonic  
GPIO0  
GPIO1  
DVDD  
AGND  
VREF  
AVDD  
PD1  
PD2  
PD3  
PD4  
PDC  
Type1  
DIO  
DIO  
S
S
REF  
S
AI  
AI  
AI  
AI  
AO  
AI  
AI  
AI  
AI  
Description  
1
2
3
4
5
6
7
8
General-Purpose Input/Output 0. This pin is used for interrupts and various clocking options.  
General-Purpose Input/Output 1. This pin is used for interrupts and various clocking options.  
1.8 V Digital Supply.  
Analog Ground.  
Internally Generated ADC Voltage Reference. Buffer this pin with a 1 µF capacitor to AGND.  
1.8 V Analog Supply.  
Photodiode Current Input (Anode) 1. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 2. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 3. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 4. If not in use, leave this pin floating.  
Photodiode Common Cathode Bias.  
Photodiode Current Input (Anode) 5. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 6. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 7. If not in use, leave this pin floating.  
Photodiode Current Input (Anode) 8. If not in use, leave this pin floating.  
Not Internally Connected (Nonbonded Pad). This pin can be grounded.  
LED Driver 1 Current Sink. If not in use, leave this pin floating.  
LED Driver 3 Current Sink. If not in use, leave this pin floating.  
LED Driver 2 Current Sink. If not in use, leave this pin floating.  
LED Driver Ground.  
9
10  
11  
12  
13  
14  
15  
16 to 22  
23  
24  
25  
26  
27  
28  
PD5  
PD6  
PD7  
PD8  
NIC  
R
LEDX1  
LEDX3  
LEDX2  
LGND  
SCL  
AO  
AO  
AO  
S
DI  
DIO  
S
I2C Clock Input.  
I2C Data Input/Output.  
Exposed Pad (Digital Ground). Connect the exposed pad to ground.  
SDA  
EPAD  
(DGND)  
1 DIO means digital input/output, S means supply, REF means voltage reference, AI means analog input, AO means analog output, R means reserved, and DI means  
digital input.  
Rev. C | Page 14 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
ADPD1080  
TOP VIEW, BALL SIDE DOWN  
(Not to Scale)  
1
2
3
A
B
LEDX2  
LGND  
SDA  
DVDD  
AGND  
AVDD  
PD1  
LEDX3  
SCL  
LEDX1  
GPIO0  
C
D
E
F
DGND  
VREF  
PDC  
GPIO1  
PD5  
Figure 7. 16-Ball WLCSP Pin Configuration (ADPD1080)  
Table 13. 16-Ball WLCSP Pin Function Descriptions (ADPD1080)  
Pin No.  
A1  
A2  
B1  
B2  
B3  
C1  
C2  
C3  
D2  
D3  
E1  
Mnemonic  
LEDX2  
LGND  
LEDX3  
LEDX1  
SDA  
Type1 Description  
AO  
S
LED2 Driver Current Sink. If not in use, leave this pin floating.  
LED Driver Ground.  
AO  
AO  
DIO  
DI  
LED3 Driver Current Sink. If not in use, leave this pin floating.  
LED1 Driver Current Sink. If not in use, leave this pin floating.  
I2C Data Input/Output.  
SCL  
I2C Clock Input.  
GPIO0  
DVDD  
DGND  
AGND  
GPIO1  
VREF  
AVDD  
PD5  
PDC  
DIO  
S
General-Purpose Input/Output 0. This pin is used for interrupts and various clocking options.  
1.8 V Digital Supply.  
S
Digital Ground.  
S
Analog Ground.  
DIO  
REF  
S
General-Purpose Input/Output 1. This pin is used for interrupts and various clocking options.  
Internally Generated ADC Voltage Reference. Buffer this pin with a 1 µF capacitor to AGND.  
1.8 V Analog Supply.  
E2  
E3  
F1  
F2  
AI  
AO  
AI  
PD5 Photodiode Current Input. If not in use, leave this pin floating.  
Photodiode Common Cathode Bias.  
PD1 Photodiode Current Input. If not in use, leave this pin floating.  
F3  
PD1  
1 AO means analog output, S means supply, DIO means digital input/output, DI means digital input, REF means voltage reference, AI means analog input, and AO  
means analog output.  
Rev. C | Page 15 of 74  
ADPD1080/ADPD1081  
Data Sheet  
ADPD1081  
TOP VIEW, BALL SIDE DOWN  
(Not to Scale)  
1
2
3
A
B
LEDX2  
LGND  
GPIO0  
DGND  
SCLK  
VREF  
PD1  
LEDX3  
GPIO1  
LEDX1  
MISO  
C
D
E
F
CS  
MOSI  
AGND  
PDC  
VDD  
PD5  
Figure 8. 17-Ball WLCSP Pin Configuration (ADPD1081)  
Table 14. 17-Ball WLCSP Pin Function Descriptions (ADPD1081)  
Pin No.  
A1  
A2  
B1  
B2  
B3  
C1  
C2  
C3  
D1  
D2  
D3  
E1  
Mnemonic  
LEDX2  
LGND  
LEDX3  
LEDX1  
GPIO0  
GPIO1  
MISO  
DGND  
CS  
Type1 Description  
AO  
S
LED2 Driver Current Sink. If not in use, leave this pin floating.  
LED Driver Ground.  
AO  
AO  
DIO  
DIO  
DO  
S
LED3 Driver Current Sink. If not in use, leave this pin floating.  
LED1 Driver Current Sink. If not in use, leave this pin floating.  
General-Purpose Input/Output 0. This pin is used for interrupts and various clocking options.  
General-Purpose Input/Output 1. This pin is used for interrupts and various clocking options.  
Master Input, Slave Output.  
Digital Ground.  
DI  
SPI Chip Select. Active low.  
MOSI  
SCLK  
VDD  
DI  
Master Output, Slave Input.  
DI  
SPI Clock Input.  
S
1.8 V Power Supply.  
E2  
E3  
F1  
F2  
AGND  
VREF  
PD5  
PDC  
PD1  
S
REF  
AI  
AO  
AI  
Analog Ground.  
Internally Generated ADC Voltage Reference. Buffer this pin with a 1 µF capacitor to AGND.  
PD5 Photodiode Current Input. If not in use, leave this pin floating.  
Photodiode Common Cathode Bias.  
F3  
PD1 Photodiode Current Input. If not in use, leave this pin floating.  
1 AO means analog output, S means supply, DIO means digital input/output, DO means digital output, DI means digital input, REF means voltage reference, and AI  
means analog input.  
Rev. C | Page 16 of 74  
Data Sheet  
ADPD1080/ADPD1081  
TYPICAL PERFORMANCE CHARACTERISTICS  
70  
LED COARSE SETTING = 0xF  
30  
25  
20  
15  
10  
5
60  
50  
40  
30  
20  
10  
0
LED COARSE SETTING = 0x0  
0
0
0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4  
LED DRIVER VOLTAGE (V)  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
FREQUENCY (Hz)  
Figure 12. LED Driver Current vs. LED Driver Voltage at  
10% Drive Strength, Fine Setting at Default  
Figure 9. 32 kHz Clock Frequency Distribution  
(Default Settings, Before User Calibration: Register 0x4B = 0x2612)  
400  
350  
300  
250  
200  
150  
100  
50  
60  
LED COARSE SETTING = 0xF  
50  
40  
30  
20  
10  
LED COARSE SETTING = 0x0  
0
0
0
0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2  
LED DRIVER VOLTAGE (V)  
32.0 32.5 33.0 33.5 34.0 34.5 35.0 35.5 36.0  
FREQUENCY (Hz)  
Figure 10. 32 MHz Clock Frequency Distribution  
(Default Settings, Before User Calibration: Register 0x4D = 0x0098)  
Figure 13. LED Driver Current vs. LED Driver Voltage at 100% Drive Strength,  
Fine Setting at Default  
5.0  
4.5  
4.0  
3.5  
3.0  
2µs PULSE  
2.5  
2.0  
3µs PULSE  
1.5  
1.0  
0.5  
0
0
50  
100  
150  
200  
TRANSIMPEDANCE AMPLIFIER GAIN (kΩ)  
Figure 11. Referred to Input Noise vs. Transimpedance Amplifier Gain at  
CPD = 70 pF  
Rev. C | Page 17 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
45  
40  
35  
30  
25  
20  
0
–5  
–10  
–15  
–20  
–25  
–30  
–35  
–40  
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
1
10  
100  
1k  
10k  
100k  
1M  
10M  
LED FINE SETTING  
FREQUENCY (Hz)  
Figure 14. LED Driver Current vs. LED Fine Setting (Coarse Setting = 0x0)  
Figure 16. AC PSRR vs. Frequency for 75% Full-Scale Input Signal  
340  
320  
300  
280  
260  
240  
220  
200  
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
LED FINE SETTING  
Figure 15. LED Driver Current vs. LED Fine Setting (Coarse Setting = 0xF)  
Rev. C | Page 18 of 74  
Data Sheet  
ADPD1080/ADPD1081  
THEORY OF OPERATION  
INTRODUCTION  
DUAL TIME SLOT OPERATION  
The ADPD1080/ADPD1081 operate as a complete optical  
transceiver stimulating up to three LEDs and measuring the  
return signal on up to two separate current inputs. The core  
consists of a photometric front end coupled with an ADC,  
digital block, and three independent LED drivers. The core  
circuitry stimulates the LEDs and measures the return in the  
analog block through one to eight photodiode inputs, storing  
the results in discrete data locations. The two inputs can drive  
four simultaneous input channels. Data can be read directly by  
a register or through a first in, first out (FIFO) method. This  
highly integrated system includes an analog signal processing  
block, digital signal processing block, an I2C communication  
interface on the ADPD1080 or an SPI port on the ADPD1081,  
and programmable pulsed LED current sources.  
The ADPD1080/ADPD1081 operate in two independent time  
slots, Time Slot A and Time Slot B, that operate sequentially.  
The entire signal path from LED stimulation to data capture and  
processing executes during each time slot. Each time slot has a  
separate datapath that uses independent settings for the LED  
driver, AFE setup, and the resulting data. Time Slot A and  
Time Slot B operate in sequence for every sampling period, as  
shown in Figure 17.  
The timing parameters for Time Slot A and Time Slot B are  
defined as follows:  
tA (µs) = SLOTA_LED_OFFSET + nA × SLOTA_PERIOD  
where nA is the number of pulses for Time Slot A (Register 0x31,  
Bits[15:8]).  
The LED driver is a current sink and is agnostic to the LED supply  
voltage and the LED type. The photodiode (PDx) inputs can  
accommodate any photodiode with an input capacitance of  
less than 100 pF. The ADPD1080/ADPD1081 produces a high  
SNR for relatively low LED power while greatly reducing the effect  
of ambient light on the measured signal.  
tB (µs) = SLOTB_LED_OFFSET + nB × SLOTB_PERIOD  
where nB is the number of pulses for Time Slot B (Register 0x36,  
Bits[15:8]).  
Calculate the LED period using the following equation:  
LED_PERIOD, minimum = 2 × SLOTx_AFE_WIDTH + 11  
t1 and t2 are fixed and based on the computation time for each  
slot. If a slot is not in use, these times do not add to the total  
active time. Table 15 defines the values for these LED and  
sampling time parameters.  
ACTIVE  
ACTIVE  
tA  
t1  
tB  
t2  
nA PULSES  
nB PULSES  
SLEEP  
TIME SLOT A  
TIME SLOT B  
1/f  
SAMPLE  
Figure 17. Time Slot Timing Diagram (fSAMPLE is the sampling frequency (Register 0x12, Bits[15:0]).)  
Table 15. LED Timing and Sample Timing Parameters  
Parameter Register Bits Test Conditions/Comments  
Min Typ Max Unit  
SLOTA_LED_OFFSET1 0x30  
[7:0] Delay from power-up to LEDA rising edge  
[7:0] Delay from power-up to LEDB rising edge  
[7:0] Time between LED pulses in Time Slot A; SLOTx_AFE_WIDTH = 4 µs 19  
[7:0] Time between LED pulses in Time Slot B; SLOTx_AFE_WIDTH = 4 µs 19  
23  
23  
63  
63  
63  
63  
µs  
µs  
µs  
µs  
µs  
µs  
µs  
SLOTB_LED_OFFSET1  
0x35  
0x31  
0x36  
N/A  
SLOTA_PERIOD2  
SLOTB_PERIOD2  
t1  
N/A  
N/A  
N/A  
Compute time for Time Slot A  
Compute time for Time Slot B  
Sleep time between sample periods  
68  
20  
t2  
N/A  
tSLEEP  
N/A  
222  
1 Setting the SLOTx_LED_OFFSET less than the specified minimum value can cause failure of ambient light rejection for large photodiodes.  
2 Setting the SLOTx_LED_PERIOD less than the specified minimum value can cause invalid data captures.  
Rev. C | Page 19 of 74  
 
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
TIME SLOT SWITCH  
ADPD1080 LFCSP Input Configurations  
PD1  
PD2  
PD3  
PD4  
CH1  
Up to eight photodiodes (PD1 to PD8) can be connected to  
the ADPD1080 for the LFCSP. The photodiode anodes are  
connected to the PD1 to PD8 input pins; the photodiode  
cathodes are connected to the cathode pin, PDC. The anodes  
are assigned in seven different configurations depending on the  
settings of Register 0x14 (see Figure 18 through Figure 24).  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 3  
REGISTER 0x14[7:4] = 3  
Figure 18 through Figure 24 show multiple configurations  
that can be used. The configuration selected depends on the  
requirements of the application. Depending on the dynamic  
range requirements of the application, 1-, 2-, or 4-channel  
modes can be selected. There are also several modes where  
input pins can be multiplexed together in cases where  
photodiode currents must be summed.  
Figure 20. PD1 to PD4 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 3 for the LFCSP  
PD5  
CH1  
See Table 16 for the time slot switch settings. It is important to  
leave any unused inputs floating for proper operation of the  
devices. The photodiode inputs are current inputs and as such,  
these pins are considered voltage outputs. Tying these inputs to  
a voltage saturates the analog block.  
PD6  
CH2  
PD7  
PD3  
CH1  
PD4  
CH3  
PD8  
CH4  
PD1  
CH2  
PD2  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 4  
REGISTER 0x14[7:4] = 4  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 1  
REGISTER 0x14[7:4] = 1  
Figure 21. PD5 to PD8 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 4 for the LFCSP  
Figure 18. PD1 to PD4 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 1 for the LFCSP  
PD7  
CH1  
PD8  
PD5  
CH2  
PD6  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 2  
REGISTER 0x14[7:4] = 2  
Figure 19. PD5 to PD8 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 2 for the LFCSP  
Rev. C | Page 20 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
PD1  
PD2  
PD3  
PD4  
PD3  
PD4  
CH1  
CH2  
CH3  
CH4  
CH1  
PD5  
PD6  
CH2  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 6  
REGISTER 0x14[7:4] = 6  
Figure 23. PD3 to PD6 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 6 for the LFCSP  
PD5  
CH1  
PD6  
PD7  
PD8  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 5  
REGISTER 0x14[7:4] = 5  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 7  
REGISTER 0x14[7:4] = 7  
Figure 22. PD1 to PD4 Connections with Register 0x14, Bits[11:8] and  
Bits[7:4] = 5 for the LFCSP  
Figure 24. PD5 to PD8 Connection with Register 0x14,  
Bits[11:8] and Bits[7:4] = 4 for the LFCSP  
Table 16. Time Slot Switch (Register 0x14), ADPD1080 LFCSP  
Channel  
Register, Bits, and Time Slot  
Setting  
1
2
3
4
Register 0x14, Bits[11:8] for Time Slot B and Bits[7:4] for Time Slot A  
0
1
2
3
4
5
6
7
No connect No connect No connect No connect  
PD3, PD4  
PD7, PD8  
PD1, PD2  
PD5, PD6  
No connect No connect  
No connect No connect  
PD1 to PD4 No connect No connect No connect  
PD5  
PD1  
PD6  
PD2  
PD7  
PD3  
PD8  
PD4  
PD3, PD4  
PD5, PD6  
No connect No connect  
PD5 to PD8 No connect No connect No connect  
Rev. C | Page 21 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
WLCSP Input Configurations  
Up to two photodiodes can be connected to the PD1 and PD5  
input pins of the ADPD1080 and ADPD1081 WLCSP models.  
The photodiode anodes are connected to the PD1 and PD5 input  
pins; the photodiode cathodes are connected to the cathode pin,  
PDC. The anodes are assigned in the configurations shown in  
Figure 25 and Figure 26 based on the bit settings of Register 0x14.  
PD5  
CH1  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 4  
REGISTER 0x14[7:4] = 4  
See Table 17 for the time slot switch settings. It is important to  
leave any unused inputs floating for proper operation of the  
devices. The photodiode inputs are current inputs and, as such,  
these pins are also considered voltage outputs. Tying these  
inputs to a voltage saturates the analog block.  
Figure 25. PD5 Connection with Register 0x14, Bits[11:8] and Bits[7:4] = 4 for  
the WLCSP  
PD1  
CH1  
INPUT CONFIGURATION FOR  
REGISTER 0x14[11:8] = 5  
REGISTER 0x14[7:4] = 5  
Figure 26. PD1 Connection with Register 0x14, Bits[11:8] and Bits[7:4] = 5 for  
the WLCSP  
Table 17. Time Slot Switch (Register 0x14), ADPD1080/ADPD1081 WLCSP  
Channel  
3
Register, Bits, and Time Slot  
Setting  
1
2
4
Register 0x14, Bits[11:8] for Time Slot B and Bits[7:4] for Time Slot A  
4
5
PD5  
PD1  
No connect No connect No connect  
No connect No connect No connect  
Rev. C | Page 22 of 74  
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
Providing an External 32 kHz Clock  
ADJUSTABLE SAMPLING FREQUENCY  
The ADPD1080/ADPD1081 have an option for the user to  
provide an external 32 kHz clock to the devices for system  
synchronization or for situations where a clock with better  
accuracy than the internal 32 kHz clock is required. The  
external 32 kHz clock is provided on the GPIO1 pin. To enable  
the 32 kHz external clock, use the following procedure at startup:  
Register 0x12 controls the sampling frequency setting of the  
ADPD1080/ADPD1081 and Register 0x4B, Bits[5:0] further  
tunes this clock for greater accuracy. An internal 32 kHz sample  
rate clock that also drives the transition of the internal state  
machine governs the sampling frequency. The maximum  
sampling frequencies for some sample conditions are listed in  
Table 3. The maximum sample frequency for all conditions is  
determined by the following equation:  
1. Drive the GPIO1 pin to a valid logic level or with the  
desired 32 kHz clock prior to enabling the GPIO1 pin as  
an input. Do not leave the pin floating prior to enabling it.  
2. Write 01 to Register 0x4F, Bits[6:5] to enable the GPIO1 pin  
as an input.  
3. Write 10 to Register 0x4B, Bits[8:7] to configure the devices  
to use an external 32 kHz clock. This setting disables the  
internal 32 kHz clock and enables the external 32 kHz clock.  
4. Write 0x1 to Register 0x10 to enter program mode.  
5. Write additional control registers in any order while the  
devices are in program mode to configure the devices as  
required.  
fSAMPLE, MAX = 1/(tA + t1 + tB + t2 + tSLEEP, MIN)  
where tSLEEP, MIN is the minimum sleep time required between  
samples. See Table 15.  
If a given time slot is not in use, elements from that time slot do  
not factor into the calculation. For example, if Time Slot A is  
not in use, tA and t1 do not add to the sampling period and the  
new maximum sampling frequency is calculated as follows:  
f
SAMPLE, MAX = 1/(tB + t2 + tSLEEP, MIN)  
See the Dual Time Slot Operation section for the definitions of  
tA, t1, tB, and t2. The maximum achievable sampling rate with a  
single pulse in Time Slot B is ~2.8 kSPS.  
6. Write 0x2 to Register 0x10 to start the normal sampling  
operation.  
External Sync for Sampling  
The ADPD1080/ADPD1081 provide an option to use an  
external sync signal to trigger the sampling periods. This  
external sample sync signal can be provided either on the  
GPIO0 pin or the GPIO1 pin. This functionality is controlled  
by Register 0x4F, Bits[3:2]. When enabled, a rising edge on the  
selected input specifies when the next sample cycle occurs.  
When triggered, there is a delay of one to two internal sampling  
clock (32 kHz) cycles, and then the normal start-up sequence  
occurs. This sequence is the same when the normal sample  
timer provides the trigger. To enable the external sync signal  
feature, use the following procedure:  
1. Write 0x1 to Register 0x10 to enter program mode.  
2. Write the appropriate value to Register 0x4F, Bits[3:2] to  
select whether the GPIO0 pin or the GPIO1 pin specifies  
when the next sample cycle occurs. Also, enable the  
appropriate input buffer using Register 0x4F, Bit 1, for the  
GPIO0 pin, or Register 0x4F, Bit 5, for the GPIO1 pin.  
3. Write 0x4000 to Register 0x38.  
4. Write 0x2 to Register 0x10 to start the sampling  
operations.  
5. Apply the external sync signal on the selected pin at the  
desired rate; sampling occurs at that rate. As with normal  
sampling operations, read the data using the FIFO or the  
data registers.  
The maximum frequency constraints also apply in this case.  
Rev. C | Page 23 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
this mode, the devices may consume higher current in program  
mode than in normal operation. To place the devices in program  
mode, write 0x1 to Register 0x10, Bits[1:0].  
STATE MACHINE OPERATION  
During each time slot, the ADPD1080/ADPD1081 operate  
according to a state machine. The state machine operates in the  
sequence shown in Figure 27.  
In normal operation, the ADPD1080/ADPD1081 pulse light  
and collect data. Power consumption in this mode depends on  
the pulse count and data rate. To place the devices in normal  
sampling mode, write 0x2 to Register 0x10, Bits[1:0].  
STANDBY  
REGISTER 0x10 = 0x0000  
ULTRALOW POWER MODE  
NO DATA COLLECTION  
ALL REGISTER VALUES ARE RETAINED.  
NORMAL MODE OPERATION AND DATA FLOW  
In normal mode, the ADPD1080/ADPD1081 follow a specific  
pattern set up by the state machine. This pattern is shown in the  
corresponding datapath diagram shown in Figure 28. The pattern  
is as follows:  
PROGRAM  
REGISTER 0x10 = 0x0001  
SAFE MODE FOR PROGRAMING REGISTERS  
1. LED pulse and sample. The ADPD1080/ADPD1081 pulse  
external LEDs. The response of a photodiode or photodiodes  
to the reflected light is measured by the ADPD1080/  
ADPD1081. Each data sample is constructed from the sum  
of n individual pulses, where n is user configurable between  
1 and 255.  
NO DATA COLLECTION  
DEVICE IS FULLY POWERED IN THIS MODE.  
NORMAL OPERATION  
REGISTER 0x10 = 0x0002  
LEDs ARE PULSED AND PHOTODIODES ARE SAMPLED  
2. Intersample averaging. If desired, the logic can average  
n samples, from 2 to 128 in powers of 2, to produce output  
data. New output data is saved to the output registers every  
N samples.  
3. Data read. The host processor reads the converted results  
from the data register or the FIFO.  
STANDARD DATA COLLECTION  
DEVICE POWER IS CYCLED BY INTERNAL STATE MACHINE.  
Figure 27. State Machine Operation Flowchart  
The ADPD1080/ADPD1081 operate in one of three modes:  
standby, program, and normal operation.  
Standby mode is a power saving mode in which no data collection  
occurs. All register values are retained in this mode. To place  
the devices in standby mode, write 0x0 to Register 0x10,  
Bits[1:0]. The devices power up in standby mode.  
4. Repeat. The sequence has a few different loops that enable  
different types of averaging while keeping both time slots  
close in time relative to each other.  
Program mode is used for programming registers. Always cycle  
the ADPD1080/ADPD1081 through program mode when writing  
registers or changing modes. Because no power cycling occurs in  
[14 + LOG  
(
n
× N )] BITS  
A A  
2
UP TO 27 BITS  
[14 + LOG (n )] BITS  
UP TO 20 BITS  
N
2
A
A
16-BIT CLIP  
IF VAL ≤ (2 – 1)  
VAL = VAL  
16 BITS  
16  
÷ N  
A
16  
ELSE VAL = 2 – 1  
1
14 BITS  
14 BITS  
n
A
20-BIT CLIP  
IF VAL ≤ (2 – 1)  
20  
n
A
n
A
VAL = VAL  
20  
ELSE VAL = 2 – 1  
0
1
14-BIT  
ADC  
1
REGISTER  
0x11[13]  
[14 + LOG (n )] BITS  
2
A
16-BIT  
DATA  
REGISTERS  
32-BIT DATA  
REGISTERS  
UP TO 22 BITS  
FIFO  
ADC OFFSET  
SAMPLE 1: TIME SLOT A  
SAMPLE 1: TIME SLOT B  
0
1
SAMPLE N : TIME SLOT A  
A
SAMPLE N : TIME SLOT B  
B
TIME SLOT A  
TIME SLOT B  
N
B
16-BIT CLIP  
16  
IF VAL ≤ (2 – 1)  
NOTES  
1. n AND n = NUMBER OF LED PULSES FOR TIME SLOT A AND TIME SLOT B.  
÷ N  
A
VAL = VAL  
A
B
[14 + LOG (n )] BITS  
UP TO 20 BITS  
16  
16 BITS  
2
B
ELSE VAL = 2 – 1  
1
2. N AND N = NUMBER OF AVERAGES FOR TIME SLOT A AND TIME SLOT B.  
A
B
[14 + LOG (n × N )] BITS  
2 B B  
UP TO 27 BITS  
Figure 28. ADPD1080/ADPD1081 Datapath  
Rev. C | Page 24 of 74  
 
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
f
SAMPLE (Register 0x12), but new data is written to the registers at  
LED Pulse and Sample  
the rate of fSAMPLE/N every Nth sample. This new data consists of  
the sum of the previous N samples. The full 32-bit sum is stored  
in the 32-bit registers. However, before sending this data to the  
FIFO, a divide by N operation occurs. This divide operation  
maintains bit depth to prevent clipping on the FIFO.  
At each sampling period, the selected LED driver drives a series  
of LED pulses, as shown in Figure 29. The magnitude, duration,  
and number of pulses are programmable over the I2C interface.  
Each LED pulse coincides with a sensing period so that the sensed  
value represents the total charge acquired on the photodiode in  
response to only the corresponding LED pulse. Charge, such  
as ambient light, that does not correspond to the LED pulse is  
rejected.  
Use this between sample averaging to lower the noise while  
maintaining 16-bit resolution. If the pulse count registers are  
kept to 8 or less, the 16-bit width is never exceeded. Therefore,  
when using Register 0x15 to average subsequent pulses, many  
pulses can be accumulated without exceeding the 16-bit word  
width. This averaging can reduce the number of FIFO reads  
required by the host processor.  
After each LED pulse, the photodiode output relating the pulsed  
LED signal is sampled and converted to a digital value by the 14-  
bit ADC. Each subsequent conversion within a sampling period  
is summed with the previous result. Up to 255 pulse values from  
the ADC can be summed in an individual sampling period. There  
is a 20-bit maximum range for each sampling period.  
Data Read  
The host processor reads output data from the ADPD1080/  
ADPD1081 via the I2C protocol on the ADPD1080 or the SPI  
port on the ADPD1081. Data is read from the data registers or  
from the FIFO. New output data is made available every N  
samples, where N is the user configured averaging factor. The  
averaging factors for Time Slot A and Time Slot B are  
configurable independently of each other. If they are the same,  
both time slots can be configured to save data to the FIFO. If the  
two averaging factors are different, only one time slot can save  
data to the FIFO; data from the other time slot can be read  
from the output registers.  
Averaging  
The ADPD1080/ADPD1081 offer sample accumulation and  
averaging functionality to increase signal resolution.  
Within a sampling period, the AFE can sum up to 256 sequential  
pulses. As shown in Figure 28, samples acquired by the AFE are  
clipped to 20 bits at the output of the AFE. Additional resolution,  
up to 27 bits, can be achieved by averaging between sampling  
periods. This accumulated data of N samples is stored as 27-bit  
values and can be read out directly by using the 32-bit output  
registers or the 32-bit FIFO configuration.  
The data read operations are described in more detail in the  
Reading Data section.  
When using the averaging feature set up by Register 0x15,  
subsequent pulses can be averaged by powers of 2. The user  
can select from 2, 4, 8 … up to 128 samples to be averaged.  
Pulse data is still acquired by the AFE at the sampling frequency,  
SHOWN WITH f  
SAMPLE  
= 10 Hz  
OPTICAL SAMPLING  
LOCATIONS  
0
0.5  
1.0  
1.5  
2.0  
2.5  
3.0  
TIME (s)  
LED  
CURRENT  
(I  
)
LED  
NUMBER OF LED PULSES (nA OR nB  
)
Figure 29. Example of a PPG Signal Sampled at a Data Rate of 10 Hz Using Five Pulses per Sample  
Rev. C | Page 25 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
AFE OPERATION  
AFE INTEGRATION OFFSET ADJUSTMENT  
The timing within each pulse burst is important for optimizing  
the operation of the ADPD1080/ADPD1081. Figure 30 shows the  
timing waveforms for a single time slot as an LED pulse response  
propagates through the analog block of the AFE. The first  
graph, shown in green, shows the ideal LED pulsed output. The  
filtered LED response, shown in blue, shows the output of the  
analog integrator. The third graph, shown in orange, shows an  
optimally placed integration window. When programmed to the  
optimized value, the full signal of the filtered LED response can be  
integrated. The AFE integration window is then applied to the  
output of the band-pass filter (BPF) and the result is sent to the  
ADC and summed for N pulses. If the AFE window is not  
correctly sized or located, all of the receive signal is not properly  
reported and system performance is not optimal; therefore, it is  
important to verify proper AFE position for every new hardware  
design or the LED width.  
The AFE integration width must be equal or larger than the LED  
width. As AFE width increases, the output noise increases and the  
ability to suppress high frequency content from the environment  
decreases. It is therefore desirable to keep the AFE integration  
width small. However, if the AFE width is too small, the LED  
signal is attenuated. With most hardware selections, the AFE  
width produces the optimal SNR at 1 µs more than the LED  
width. After setting LED width, LED offset, and AFE width, the  
ADC offset can then be optimized. The AFE offset must be  
manually set such that the falling edge of the first segment of the  
integration window matches the zero crossing of the filtered LED  
response.  
LED WIDTH  
REGISTER 0x30, BITS[12:8]  
REGISTER 0x35, BITS[12:8]  
N LED PULSES  
REGISTER 0x31, BITS [15:8]  
LED PERIOD  
REGISTER 0x36, BITS [15:8]  
REGISTER 0x31, BITS[7:0]  
LED OFFSET  
LED DRIVE STRENGTH  
REGISTER 0x22, REGISTER 0x23,  
REGISTER 0x24, REGISTER 0x25  
REGISTER 0x36, BITS[7:0]  
REGISTER 0x30, BITS[7:0]  
REGISTER 0x35, BITS[7:0]  
LED PULSE  
FOR N PULSES  
FOR N PULSES  
CONTROLLED BY:  
TIA SETTINGS  
AFE SETTINGS  
REGISTER 0x42,  
REGISTER 0x43,  
REGISTER 0x44,  
REGISTER 0x45  
FILTERED LED  
RESPONSE  
9µs + AFE OFFSET  
REGISTER 0x39, BITS[10:0]  
REGISTER 0x3B, BITS[10:0]  
AFE INTEGRATION  
WINDOW  
FOR N PULSES  
AFE  
WIDTH  
REGISTER 0x39, BITS[15:11]  
REGISTER 0x3B, BITS[15:11]  
AFE  
WIDTH  
ADC  
CONVERSION  
ADC  
CONVERSION  
TIME (µs)  
Figure 30. AFE Operation Diagram  
Rev. C | Page 26 of 74  
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
Each LSB represents one cycle of the 32 MHz clock, or 31.25 ns.  
The register can be thought of as 211 − 1 of these 31.25 ns steps,  
or it can be broken into an AFE coarse setting using Bits[10:5]  
to represent 1 µs steps and Bits[4:0] to represent 31.25 ns steps.  
Sweeping the AFE position from the starting point to find a  
local maximum is the recommended way to optimize the AFE  
offset. The setup for this test is to allow the LED light to fall on  
the photodiode in a static way. This test is typically done with a  
reflecting surface at a fixed distance. The AFE position can then  
be swept to look for changes in the output level. When  
adjusting the AFE position, it is important to sweep the  
position using the 31.25 ns steps. Typically, a local maximum is  
found within 2 µs of the starting point for most systems. Figure  
31 shows an example of an AFE sweep, where 0 on the x-axis  
represents the AFE starting point defined previously. Each data  
point in Figure 31 corresponds to one 31.25 ns step of the  
SLOTx_AFE_OFFSET. The optimal location for  
AFE Integration Offset Starting Point  
The starting point of the AFE integration offset, as expressed in  
microseconds, is set such that the falling edge of the integration  
window aligns with the falling edge of the LED.  
LED_FALLING_EDGE = SLOTx_LED_OFFSET +  
SLOTx_LED_WIDTH  
and,  
AFE_INTEGRATION_FALLING_EDGE = 9 +  
SLOTx_AFE_OFFSET + SLOTx_AFE_WIDTH  
If both falling edges are set equal to each other, solve for  
SLOTx_AFE_OFFSET to obtain the following equation:  
AFE_OFFSET_STARTING_POINT = SLOTx_LED_  
OFFSET + SLOTx_LED_WIDTH − 9 – SLOTx_AFE_  
WIDTH  
Setting the AFE offset to any point in time earlier than the  
starting point is equivalent to setting the integration in the  
future; the AFE cannot integrate the result from an LED pulse  
that has not yet occurred. As a result, a SLOTx_AFE_OFFSET  
value less than the AFE_OFFSET_STARTING_POINT value is an  
erroneous setting. Such a result may indicate that current in the  
TIA is operating in the reverse direction from intended, where  
the LED pulse is causing the current to leave the TIA rather  
than enter it.  
SLOTx_AFE_OFFSET in this example is 0.687 µs from the AFE  
starting point.  
100  
0.687  
95  
90  
85  
80  
75  
Because, for most setups, the SLOTx_AFE_WIDTH is 1 µs  
wider than the SLOTx_LED_WIDTH, the AFE_OFFSET_  
STARTING_POINT value is typically 10 µs less than the  
SLOTx_LED_OFFSET value. Any value less than  
SLOTx_LED_  
OFFSET − 10 is erroneous. The optimal AFE offset is some  
time after the AFE_OFFSET_STARTING_POINT value. The  
BPF response, LED response, and photodiode response each  
add some delay. In general, the component choice, board  
layout, SLOTx_LED_OFFSET, and SLOTx_LED_WIDTH are  
the variables that can change the SLOTx_AFE_OFFSET value.  
After a specific design is set, the SLOTx_AFE_OFFSET value  
can be locked down and does not need to be optimized further.  
0
0.15 0.30 0.45 0.60 0.75 0.90 1.05 1.20 1.35 1.50  
AFE OFFSET FROM STARTING POINT (µs)  
Figure 31. AFE Sweep Example  
Table 18 lists some typical LED and AFE values after optimization.  
In general, it is not recommended to use the  
SLOTx_AFE_OFFSET numbers in Table 18 without first verifying  
them against the AFE sweep method. Repeat this method for every  
new LED width and with every new set of hardware made with  
the ADPD1080/ ADPD1081. For maximum accuracy, it is  
recommended that the 32 MHz clock be calibrated prior to  
sweeping the AFE.  
Sweeping the AFE Position  
The AFE offsets for Time Slot A and Time Slot B are controlled  
by Bits[10:0] of Register 0x39 and Register 0x3B, respectively.  
Table 18. AFE Window Settings  
LED Register 0x30 or Register 0x35  
AFE Register 0x39 or Register 0x3B  
Comment  
0x0219  
0x0319  
0x1A08  
0x21FE  
2 µs LED pulse, 3 µs AFE width, 25 µs LED delay  
3 µs LED pulse, 4 µs AFE width, 25 µs LED delay  
Rev. C | Page 27 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
I2C SERIAL INTERFACE  
4. Write to the desired SLAVE_ADDRESS bits using  
Register 0x09, Bits[7:1]. While writing to Register 0x09,  
Bits[7:1], write 0xAD to Register 0x09, Bits[15:8]  
(ADDRESS_WRITE_KEY). Register 0x09 must be  
written to immediately after writing to Register 0x0D.  
5. Repeat Step 1 to Step 4 for all the devices that need  
SLAVE_ADDRESS changed.  
The ADPD1080 supports an I2C serial interface via the SDA  
(data) and SCL (clock) pins. All internal registers are accessed  
through the I2C interface. The ADPD1080 is an I2C only device  
and does not support an SPI.  
The ADPD1080 conforms to the UM10204 I2C-Bus  
Specification and User Manual, Rev. 05—9 October 2012,  
available from NXP Semiconductors. The I2C interface supports  
up to 1 Mbps data transfers. Register read and write are  
supported, as shown in Figure 32. Figure 3 shows the timing  
diagram for the I2C interface.  
6. Set the GPIO0 and GPIO1 pins as desired for normal  
operation using the new SLAVE_ADDRESS for each device.  
I2C Write and Read Operations  
Figure 32 shows the ADPD1080 I2C write and read operations.  
Single-word and multiword read operations are supported. For  
a single register read, the host sends a no acknowledge (NACK)  
after the second data byte is read and a new register address is  
needed for each access.  
Slave Address  
The default 7-bit I2C slave address for the device is 0x64,  
2
W
followed by the R/ bit. For a write, the default I C slave  
address is 0xC8; for a read, the default I2C address is 0xC9. The  
slave address is configurable by writing to Register 0x09, Bits[7:1].  
When multiple ADPD1080 devices are on the same bus lines,  
the GPIO0 and GPIO1 pins can be used to select specific  
devices for the address change. Register 0x0D can be used to  
select a key to enable address changes in specific devices. Use  
the following procedure to change the slave address when  
multiple ADPD1080 devices are connected to the same I2C bus  
lines:  
For multiword operations, each pair of data bytes is followed by  
an acknowledge from the host until the last byte of the last  
word is read. The host indicates the last read word by sending a  
no acknowledge. When reading from the FIFO_ACCESS  
(Register 0x60), the data is automatically advanced to the next  
word in the FIFO, and the space is freed. When reading from  
other registers, the register address is automatically advanced to  
the next register, except at Register 0x5F (DATA_ACCESS_CTL)  
or Register 0x7F (B_PD4_HIGH), where the address does not  
increment. This auto-incrementing allows lower overhead  
reading of sequential registers.  
1. Using Register 0x4F, enable the input buffer of the  
GPIO1 pin, the GPIO0 pin, or both, depending on the key  
being used.  
2. For the device identified as requiring an address change,  
set the GPIO0 and/or GPIO1 pins high or low to match  
the key being used.  
3. Write the SLAVE_ADDRESS_KEY bits using Register 0x0D,  
Bits[15:0] to match the desired function. The allowed keys  
are shown in Table 42.  
All register writes are single word only and require 16 bits (one  
word) of data.  
The software reset, SW_RESET (Register 0x0F, Bit 0), returns  
an acknowledge. The device then returns to standby mode with  
all registers in the default state.  
Table 19. Definitions of I2C Terminology  
Term  
Description  
SCL  
Serial clock.  
SDA  
Serial address and data.  
Master  
Slave  
Start (S)  
Start (Sr)  
Stop (P)  
ACK  
The master is the device that initiates a transfer, generates clock signals, and terminates a transfer.  
The slave is the device addressed by a master. The ADPD1080 operates as a slave device.  
A high to low transition on the SDA line while SCL is high; all transactions begin with a start condition.  
Repeated start condition.  
A low to high transition on the SDA line while SCL is high. A stop condition terminates all transactions.  
During the acknowledge or no acknowledge clock pulse, the SDA line is pulled low and remains low.  
During the acknowledge or no acknowledge clock pulse, the SDA line remains high.  
After a start (S), a 7-bit slave address is sent, which is followed by a data direction bit (read or write).  
A 1 indicates a request for data.  
NACK  
Slave Address  
Read (R)  
Write (W)  
A 0 indicates a transmission.  
Rev. C | Page 28 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
2
I
C WRITE  
REGISTER WRITE  
MASTER START  
SLAVE  
SLAVE ADDRESS + WRITE  
REGISTER ADDRESS  
DATA[15:8]  
DATA[7:0]  
STOP  
ACK  
ACK  
ACK  
ACK  
2
I
C SINGLE WORD READ MODE  
REGISTER READ  
MASTER START  
SLAVE  
ACK  
SLAVE ADDRESS + READ  
SLAVE ADDRESS + READ  
SLAVE ADDRESS + WRITE  
REGISTER ADDRESS  
REGISTER ADDRESS  
Sr  
Sr  
NACK  
STOP  
STOP  
ACK  
ACK  
DATA[15:8]  
DATA[15:8]  
ACK  
ACK  
ACK  
ACK  
DATA[7:0]  
2
I
C MULTIWORD READ MODE  
REGISTER READ  
MASTER START  
SLAVE  
ACK/NACK  
SLAVE ADDRESS + WRITE  
ACK  
DATA[7:0]  
DATA TRANSFERRED  
NOTES  
1. THE SHADED AREAS REPRESENT WHEN THE DEVICE IS LISTENING.  
Figure 32. I2C Write and Read Operations  
SPI PORT  
R
Bit 4  
Table 21. SPI Address and Write/ Byte Format  
The ADPD1081 is a SPI only device. It does not support the I2C  
interface. The SPI port uses a 4-wire interface, consisting of the  
Bit 0  
Bit 1  
Bit 2  
Bit 3  
Bit 5  
Bit 6  
Bit 7  
A6  
A5  
A4  
A3  
A2  
A1  
A0  
W/R  
CS  
, MOSI, MISO, and SCLK signals, and it is always a slave port.  
CS  
The  
signal goes low at the beginning of a transaction and high  
Data on the MOSI pin is captured on the rising edge of the  
at the end of a transaction. The SCLK signal latches MOSI on a  
low to high transition. The MISO data is shifted out of the device  
on the falling edge of SCLK and must be clocked into a receiving  
device, such as a microcontroller, on the SCLK rising edge. The  
MOSI signal carries the serial input data, and the MISO signal  
carries the serial output data. The MISO signal remains three  
state until a read operation is requested, which allows other  
SPI-compatible peripherals to share the same MISO line. All SPI  
transactions have the same basic format shown in Table 20. A  
timing diagram is shown in Figure 4. Write all data MSB first.  
clock, and data is propagated on the MISO pin on the falling  
edge of the clock. The maximum read and write speed for the  
SPI slave port is 10 MHz. See Figure 4 for the SPI timing  
diagram, and see Table 7 for the SPI timing specifications.  
A sample timing diagram for a multiple word SPI write operation  
to a register is shown in Figure 33. A sample timing diagram of  
a single-word SPI read operation is shown in Figure 34. The  
MISO pin transitions from being three-state to being driven  
R
following the reception of a valid bit. In this example, Byte 0  
R
contains the address and the W/ bit and subsequent bytes  
carry the data. A sample timing diagram of a multiple word SPI  
read operation is shown in Figure 35. In Figure 33 to Figure 35,  
rising edges on SCLK are indicated with an arrow, signifying  
that the data lines are sampled on the rising edge.  
Table 20. Generic Control Word Sequence  
Byte 0  
Byte 1  
Byte 2  
Subsequent Bytes  
Address[6:0], Data[15:8]  
W/R  
Data[7:0]  
Data[15:8], Data[7:0]  
When performing multiple word reads or writes, the data  
address is automatically incremented to the next consecutive  
address for subsequent transactions except for Address 0x5F  
(DATA_ACCESS_CTL), Address 0x60 (FIFO_ACCESS), and  
Address 0x7F (B_PD4_HIGH).  
The first byte written in a SPI transaction is a 7-bit address,  
which is the location of the address being accessed, followed by  
R
the W/ bit. This bit determines whether the communication is  
a write (Logic Level 1) or a read (Logic Level 0). This format is  
shown in Table 21.  
Rev. C | Page 29 of 74  
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22  
CS  
SCLK  
MOSI  
ADDRESS[6:0]  
DATA BYTE 1  
DATA BYTE 2  
DATA BYTE N  
Figure 33. SPI Slave Write Clocking (Burst Write Mode, N Bytes)  
0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23  
CS  
SCLK  
MOSI  
MISO  
ADDRESS[6:0]  
W/R  
DATA BYTE 1  
DATA BYTE 2  
Figure 34. SPI Slave Read Clocking (Single-Word Mode, Two Bytes)  
0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22  
CS  
SCLK  
MOSI  
MISO  
ADDRESS[6:0]  
W/R  
DATA BYTE 1  
DATA BYTE 2  
DATA BYTE N  
Figure 35. SPI Slave Read Clocking (Burst Read Mode, N Bytes)  
Rev. C | Page 30 of 74  
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
APPLICATIONS INFORMATION  
1.8V  
TYPICAL CONNECTION DIAGRAM  
ADPD1080  
Figure 36 shows a typical circuit used for wrist-based heart rate  
measurement with the ADPD1080 WLCSP using a green LED.  
The 1.8 V I2C communication lines, SCL and SDA, along with  
the GPIO0 and GPIO1 lines, connect to a system microprocessor  
or sensor hub. The I2C signals can have pull-up resistors connected  
to a 1.8 V or a 3.3 V power supply. The GPIO0 and GPIO1 signals  
are only compatible with a 1.8 V supply and may need a level  
translator. The circuit shown in Figure 36 is identical for the  
ADPD1081, except the I2C interface is replaced by an SPI.  
There are multiple ways to connect photodiodes to the 8-channel  
ADPD1080 LFCSP, as shown in Table 22 and Figure 39. The  
photodiode anodes are connected to the PD1 to PD8 input pins  
and the photodiode cathodes are connected to the cathode pin,  
PDC.  
DVDD  
AVDD  
PDC  
0.1µF  
0.1µF  
PD1  
PD5  
AGND  
DGND  
LGND  
1.8V  
VLED  
10kΩ 10kΩ  
4.7µF  
SCL  
SDA  
TO DIGITAL  
INTERFACE  
LEDX1  
VREF  
GPIO0  
GPIO1  
1µF  
Figure 36. Typical Wrist-Based HRM Measurement  
1
2
3
A
B
LEDX2  
LGND  
Provide the 1.8 V supply, VDD, to AVDD and DVDD. The LED  
supply uses a standard regulator circuit according to the peak  
current requirements specified in Table 3 and calculated in the  
LED Driver Pins and LED Supply Voltage section.  
SDA  
LEDX3  
SCL  
LEDX1  
GPIO0  
C
D
E
F
DVDD  
AGND  
For best noise performance, connect AGND, DGND, and  
LGND together at a large conductive surface, such as a ground  
plane, a ground pour, or a large ground trace.  
DGND  
VREF  
PDC  
The number of photodiodes or LEDs used varies depending on  
the application as well as the dynamic range and SNR required.  
For example, when using a single, large photodiode in an  
application, split the current between multiple inputs to increase  
the dynamic range. By connecting the anode of the photodiode  
to multiple channels, the current can split evenly among the  
number of channels connected, effectively increasing the dynamic  
range over a single channel configuration. Alternatively, in  
situations where the photodiode is small or the signal is greatly  
attenuated, SNR can be maximized by connecting the anode of  
the photodiode to a single channel. It is important to leave the  
unused input floating for proper device operation.  
GPIO1  
PD5  
AVDD  
PD1  
Figure 37. ADPD1080 Connection and PCB Layout Diagram (Top View),  
16-Ball WLCSP  
1
2
3
A
B
LEDX2  
LGND  
Figure 37 and Figure 38 show the recommended connection  
diagram and printed circuit board (PCB) layout for the 16-ball  
WLCSP ADPD1080 and 17-ball WLCSP ADPD1081, respectively.  
The current input pins, PD1 and PD5, have a typical voltage of  
1.3 V during the sampling period. During the sleep period,  
these pins are connected to the cathode pin. The cathode and  
anode voltages are listed in Table 3.  
GPIO0  
DGND  
SCLK  
VREF  
PD1  
LEDX3  
GPIO1  
LEDX1  
MISO  
C
MOSI  
D
E
CS  
AVDD  
PD5  
AGND  
F
PDC  
Figure 38. ADPD1081 Connection and PCB Layout Diagram, Dashed Line  
Traces from Blind Vias (Top View), 16-Ball WLCSP  
Rev. C | Page 31 of 74  
 
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
PD1  
PD1  
PD1  
PD1  
PD8  
15  
7
7
7
7
15  
14  
15  
14  
15  
14  
8
8
8
8
14  
PD1  
PD8  
7
7
15  
14  
15  
14  
PD1  
PD8  
7
15  
14  
8
8
8
Figure 39. Photodiode Configuration Options for the ADPD1080 LFCSP  
Table 22. Typical Photodiode Anode to Input Channel Connections for the ADPD1080 LFCSP1, 2  
Input Channel  
Photodiode Anode Configuration  
PD1  
D1  
NC  
D1  
NC  
D1  
D1  
D1  
NC  
D1  
PD2  
NC  
NC  
D1  
NC  
NC  
D1  
D2  
NC  
D2  
PD3  
NC  
NC  
D1  
NC  
NC  
D1  
D3  
NC  
D3  
PD4  
NC  
NC  
D1  
NC  
NC  
D1  
D4  
NC  
D4  
PD5  
NC  
D1  
NC  
D1  
D2  
D2  
NC  
D1  
D5  
PD6  
NC  
NC  
NC  
D1  
NC  
D2  
NC  
D2  
D6  
PD7  
NC  
NC  
NC  
D1  
NC  
D2  
NC  
D3  
D7  
PD8  
NC  
NC  
NC  
D1  
NC  
D2  
NC  
D4  
D8  
Single Photodiode (PD1)  
Two Photodiodes (PD1, PD2)  
Four Photodiodes (PD1 to PD4)  
Eight Photodiodes (PD1 to PD8)  
1 Dx refers to the diode connected to the specified channel.  
2 NC means do not connect. Leave all unused inputs floating.  
LED DRIVER OPERATION  
LED DRIVER PINS AND LED SUPPLY VOLTAGE  
The LED driver for the ADPD1080/ADPD1081 is a current  
sink. The compliance voltage, measured at the driver pin with  
respect to ground, required to maintain the programmed LED  
current level is a function of the current required. Figure 12  
shows the typical compliance voltages required at the various  
LED coarse settings. Figure 40 shows the basic schematic of  
how the ADPD1080/ADPD1081 connect to an LED through the  
LED driver. The Determining the Average Current section and  
the Determining CVLED section define the requirements for the  
bypass capacitor (CVLED) and the supply voltages of the LEDs  
(VLEDx).  
The LEDX1, LEDX2, and LEDX3 pins have an absolute maximum  
voltage rating of 3.6 V. Any voltage exposure over this rating  
affects the reliability of the device operation and, in certain  
circumstances, causes the device to cease proper operation. The  
voltage of the LEDx pins must not be confused with the supply  
voltages for the LED themselves. VLEDx is the voltage applied to the  
anode of the external LED, whereas the LEDXx pin is the input  
of the internal current driver, and the pins are connected to the  
cathode of the external LED.  
ADPD1080/  
ADPD1081  
V
LEDx  
SUPPLY  
C
VLED  
LGND LEDXx  
Figure 40. VLEDx Supply Schematic  
Rev. C | Page 32 of 74  
 
 
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
4.5  
4.0  
3.5  
3.0  
2.5  
2.0  
1.5  
1.0  
DETERMINING THE AVERAGE CURRENT  
TWO 528nm LEDs  
ONE 850nm LED  
The ADPD1080/ADPD1081 drive an LED in a series of short  
pulses. Figure 41 shows the typical ADPD1080/ADPD1081  
configuration of an LED pulse burst sequence.  
19µs  
3µs  
I
LED_MAX  
LED DRIVER CURRENT SETTING (mA)  
Figure 41. Typical LED Pulse Burst Sequence Configuration  
Figure 42. Example of the Average LED Forward-Bias Voltage Drop as a  
Function of the LED Driver Current Setting  
In this example, the LED pulse width, tLED_PULSE, is 3 µs, and the  
LED pulse period, tLED_PERIOD, is 19 µs. The LED being driven is a  
pair of green LEDs driven to a 250 mA peak. The goal of CVLED  
is to buffer the LED between individual pulses. In the worst  
case scenario, where the pulse train shown in Figure 41 is a  
continuous sequence of short pulses, the VLEDx supply must  
supply the average current. Therefore, calculate ILED_AVERAGE as  
follows:  
To correctly size the CVLED capacitor, do not deplete it during  
the pulse of the LED to the point where the voltage on the  
capacitor is less than the forward bias on the LED. Calculate the  
minimum value for the VLEDx bypass capacitor by  
tLED_PULSE × ILED_MAX  
(2)  
CVLED  
=
VLED_MIN  
(
VFB_LED_MAX + 0.6  
)
where:  
I
LED_AVERAGE = (tLED_PULSE/tLED_PERIOD) × ILED_MAX  
where:  
LED_AVERAGE is the average current needed from the VLEDx supply  
(1)  
t
I
LED_PULSE is the LED pulse width.  
LED_MAX is the maximum forward-biased current on the LED  
used in operating the devices.  
I
V
V
LED_MIN is the lowest voltage from the VLEDx supply with no load.  
FB_LED_MAX is the maximum forward-biased voltage required on  
during the pulse period, and it is also the VLEDx supply current  
rating.  
the LED to achieve ILED_MAX  
.
I
LED_MAX is the peak current setting of the LED.  
For the values shown in Equation 1, ILED_AVERAGE = 3/19 ×  
LED_MAX. For typical LED timing, the average VLEDx supply  
The numerator of the CVLED equation sets up the total discharge  
amount in coulombs from the bypass capacitor to satisfy a  
single programmed LED pulse of the maximum current. The  
denominator represents the difference between the lowest  
voltage from the VLEDx supply and the LED required voltage.  
The LED required voltage is the voltage of the anode of the  
LED such that the compliance of the LED driver and the  
forward-biased voltage of the LED operating at the maximum  
current is satisfied. At a 250 mA drive current, the compliance  
voltage of the driver is 0.6 V. For a typical ADPD1080 example,  
assume that the lowest value for the VLEDx supply is 4.75 V and  
that the peak current is 250 mA for two 528 nm LEDs in  
parallel. The minimum value for CVLED is then equal to 3.75 µF.  
I
current is 3/19 × 250 mA = 39.4 mA, indicating that the VLEDx  
supply must support a dc current of 40 mA.  
DETERMINING CVLED  
To determine the CVLED capacitor value, determine the  
maximum forward-biased voltage, VFB_LED_MAX, of the LED in  
operation. The LED current, ILED_MAX, converts to VFB_LED_MAX as  
shown in Figure 42. In this example, 250 mA of current through  
two green LEDs in parallel yields VFB_LED_MAX = 3.95 V. Any  
series resistance in the LED path must also be included in this  
voltage. When designing the LED path, keep in mind that small  
resistances can add up to large voltage drops due to the LED  
peak current being large. In addition, these resistances can be  
unnecessary constraints on the VLEDx supply.  
C
VLED = (3 × 10−6 × 0.250)/(4.75 – (3.95 + 0.6)) = 3.75 µF (3)  
As shown in Equation 3, as the minimum supply voltage drops  
close to the maximum anode voltage, the demands on CVLED  
become more stringent, forcing the capacitor value higher. It is  
important to insert the correct values into Equation 1, Equation 2,  
and Equation 3. For example, using an average value for  
VLED_MIN instead of the worst case value for VLED_MIN can cause a  
serious design deficiency, resulting in a CVLED value that is too small  
and that causes insufficient optical power in the application.  
Rev. C | Page 33 of 74  
 
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
Therefore, adding a sufficient margin on CVLED is strongly  
recommended. Add additional margin to CVLED to account for  
derating of the capacitor value over voltage, bias, temperature,  
and other factors over the life of the component.  
4. Write 0x0 to Register 0x10 to force the devices into  
standby mode.  
Optionally, stop the 32 kHz clock by resetting the CLK32K_  
EN bit (Register 0x4B, Bit 7). Register 0x4B, Bit 7 = 0 is the  
only write that must be written when the device is in standby  
mode (Register 0x10 = 0x0). If 0 is written to this bit while in  
program mode or normal mode, the devices become  
unable to transition into any other mode, including standby  
mode, even if they are subsequently written to do so. As a  
result, the power consumption in what appears to be standby  
mode is greatly elevated. For this reason, and due to the low  
current draw of the 32 kHz clock while in operation, it is  
recommended from an ease of use perspective to keep the  
32 kHz clock running after it is turned on.  
LED INDUCTANCE CONSIDERATIONS  
The LED drivers (LEDXx) on the ADPD1080/ADPD1081  
have configurable slew rate settings (Register 0x22, Bits[6:4],  
Register 0x23, Bits[6:4], and Register 0x24, Bits[6:4]). These  
slew rates are defined in Table 3. Even at the lowest setting,  
carefully consider board design and layout. If a large series  
inductor, such as a long PCB trace, is placed between the LED  
cathode and one of the LEDXx pins, voltage spikes from the  
switched inductor can cause violations of absolute maximum  
and minimum voltages on the LEDXx pins during the slew  
portion of the LED pulse.  
READING DATA  
The ADPD1080/ADPD1081 provide multiple methods for  
accessing the sample data. Each time slot can be independently  
configured to provide data access using the FIFO or the data  
registers. Interrupt signaling is also available to simplify timely  
data access. The FIFO is available to loosen the system timing  
requirements for data accesses.  
To verify that there are no voltage spikes on the LEDXx pins  
due to parasitic inductance, use an oscilloscope on the LEDXx pins  
to monitor the voltage during normal operation. Any positive  
spike >3.6 V may damage the devices.  
In addition, a negative spike less than −0.3 V may also damage the  
devices.  
Reading Data Using the FIFO  
RECOMMENDED START-UP SEQUENCE  
The ADPD1080/ADPD1081 include a 128-byte FIFO memory  
buffer that can store data from either or both time slots.  
Register 0x11 selects the kind of data from each time slot to be  
written to the FIFO. Note that both time slots can use the FIFO,  
but only if their output data rate is the same.  
At power-up, the device is in standby mode (Register 0x10 =  
0x0000), as shown in Figure 27. The ADPD1080/ADPD1081 do  
not require a particular power-up sequence.  
From standby mode, to begin measurement, initiate the  
ADPD1080/ADPD1081 as follows:  
Output Data Rate = fSAMPLE/NX  
1. Set the CLK32K_EN bit (Register 0x4B, Bit 7) to start the  
sample clock (32 kHz clock). This clock controls the state  
machine. If this clock is off, the state machine is not able to  
transition as defined by Register 0x10.  
2. Write 0x1 to Register 0x10 to force the device into  
program mode. Step 1 and Step 2 can be swapped, but the  
actual state transition does not occur until both steps  
occur.  
3. Write additional control registers in any order while the  
device is in program mode to configure the devices as  
required.  
4. Write 0x2 to Register 0x10 to start normal sampling  
operation.  
where:  
f
SAMPLE is the sampling frequency.  
NX is the averaging factor for each time slot (NA for Time Slot A  
and NB for Time Slot B). In other words, NA = NB must be true  
to store data from both time slots in the FIFO.  
Data packets are written to the FIFO at the output data rate. A  
data packet for the FIFO consists of a complete sample for each  
enabled time slot. Data for each photodiode channel can be stored  
as either 16 or 32 bits. Each time slot can store 2, 4, 8, or 16 bytes of  
data per sample, depending on the mode and data format. To  
ensure that data packets are intact, new data is only written to  
the FIFO if there is sufficient space for a complete packet. Any  
new data that arrives when there is not enough space is lost.  
The FIFO continues to store data when sufficient space exists.  
Always read FIFO data in complete packets to ensure that data  
packets remain intact.  
To terminate normal operation, follow this sequence to place  
the ADPD1080/ADPD1081 in standby mode:  
1. Write 0x1 to Register 0x10 to force the devices into  
program mode.  
2. Write to the registers in any order while the devices are in  
program mode.  
3. Write 0x00FF to Register 0x00 to clear all interrupts. If  
desired, clear the FIFO as well by writing 0x80FF to  
Register 0x00.  
The number of bytes currently stored in the FIFO is available in  
Register 0x00, Bits[15:8]. A dedicated FIFO interrupt is also  
available and automatically generates when a specified amount  
of data is written to the FIFO.  
Rev. C | Page 34 of 74  
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
2. Write 1 to Register 0x00, Bit 15.  
Interrupt-Based Method  
To read data from the FIFO using an interrupt-based method,  
use the following procedure:  
Reading Data from Registers Using Interrupts  
The latest sample data is always available in the data registers  
and is updated simultaneously at the end of each time slot. The  
data value for each photodiode channel is available as a 16-bit  
value in Register 0x64 through Register 0x67 for Time Slot A,  
and Register 0x68 through Register 0x6B for Time Slot B. If  
allowed to reach their maximum value, Register 0x64 through  
Register 0x6B clip. If Register 0x64 through Register 0x6B  
saturate, the unsaturated (up to 27 bits) values for each channel  
are available in Register 0x70 through Register 0x77 for Time  
Slot A and Register 0x78 through Register 0x7F for Time Slot B.  
Sample interrupts are available to indicate when the registers  
are updated and can be read. To use the interrupt for a given  
time slot, use the following procedure:  
1. In program mode, set the configuration of the time slots as  
desired for operation.  
2. Write to Register 0x11 with the desired data format for  
each time slot.  
3. Set FIFO_THRESH in Register 0x06, Bits[13:8] to the  
interrupt threshold. A recommended value for this is the  
number of 16-bit words in a data packet minus 1, which  
causes an interrupt to generate when there is at least one  
complete packet in the FIFO.  
4. Enable the FIFO interrupt by writing 0 to the FIFO_  
INT_MASK in Register 0x01, Bit 8. Also, configure the  
interrupt pin (GPIO0 or GPIO1) by writing the  
appropriate value to the bits in Register 0x02.  
5. Enter normal operation mode by setting Register 0x10 to 0x2.  
6. When an interrupt occurs,  
1. Enable the sample interrupt by writing a 0 to the appropriate  
bit in Register 0x01. To enable the interrupt for Time Slot A,  
write 0 to Bit 5. To enable the interrupt for Time Slot B,  
write 0 to Bit 6. Either or both interrupts can be set.  
2. Configure the interrupt pin (GPIOx) by writing the  
appropriate value to the bits in Register 0x02.  
3. An interrupt generates when the data registers are  
updated.  
4. The interrupt handler must perform the following:  
a. Read Register 0x00 and observe Bit 5 or Bit 6 to confirm  
which interrupt occurred. This step is not required if  
only one interrupt is in use.  
a. There is no requirement to read the FIFO_SAMPLES bits  
because the interrupt is generated only if there is one or  
more full packets. Optionally, the interrupt routine can  
check for the presence of more than one available packet  
by reading these bits.  
b. Read a complete packet using one or more multiword  
accesses using Register 0x60. Reading the FIFO  
automatically frees the space for new samples.  
The FIFO interrupt automatically clears immediately upon reading  
any data from the FIFO and is set again only when the FIFO is  
written and the number of words is more than the threshold.  
b. Read the data registers before the next sample can be  
written. The system must have interrupt latency and  
service time short enough to respond before the next  
data update, based on the output data rate.  
c. Write a 1 to Bit 5 or Bit 6 in Register 0x00 to clear the  
interrupt.  
Polling Method  
To read data from the FIFO in a polling method, use the  
following procedure:  
1. In program mode, set the configuration of the time slots as  
desired for operation.  
2. Write to Register 0x11 with the desired data format for  
If both time slots are in use, it is possible to use only the  
Time Slot B interrupt to signal when all registers can be read. It  
is recommended to use the multiword read to transfer the data  
from the data registers.  
each time slot.  
3. Enter normal operation mode by setting Register 0x10 to  
2.  
Reading Data from Registers Without Interrupts  
If the system interrupt response is not fast or predictable enough to  
use the interrupt method, or if the interrupt pin (GPIOx) is not  
used, it is possible to obtain reliable data access by using the data  
hold mechanism. To guarantee that the data read from the  
registers is from the same sample time, it is necessary to prevent  
the update of samples while reading the current values. The  
method for performing register reads without interrupt timing  
is as follows:  
Next, begin the polling operations.  
1. Wait for the polling interval to expire.  
2. Read the FIFO_SAMPLES bits (Register 0x00, Bits[15:8]).  
3. If FIFO_SAMPLES ≥ the packet size, read a packet using  
the following steps:  
a. Read a complete packet using one or more multiword  
accesses via Register 0x60. Reading the FIFO  
automatically frees the space for new samples.  
b. Repeat Step 1.  
1. Write 1 to the SLOTA_DATA_HOLD or SLOTB_DATA_  
HOLD bits (Register 0x5F, Bit 1 and Bit 2, respectively) for  
the time slot requiring access (both time slots can be  
accessed). This setting prevents sample updates.  
2. Read the registers as desired.  
When a mode change is required, or any other disruption to  
normal sampling is necessary, clear the FIFO. Use the following  
procedure to clear the state and empty the FIFO:  
1. Enter program mode by setting Register 0x10 to 0x1.  
Rev. C | Page 35 of 74  
ADPD1080/ADPD1081  
Data Sheet  
3. Write 0 to the SLOTA_DATA_HOLD or SLOTB_DATA_  
HOLD bits (Register 0x5F, Bit 1 and Bit 2, respectively)  
previously set. Sample updates are allowed again.  
1. Write 0x1 to Register 0x5F, Bit 0 (DIGITAL_CLOCK_ENA)  
to enable the 32 MHz oscillator.  
2. Enable the CLK_RATIO calculation by writing 0x1 to  
Register 0x50, Bit 5 (CLK32M_CAL_EN). This function  
counts the number of 32 MHz clock cycles in two cycles of  
the 32 kHz clock. With this function enabled, this cycle  
value is stored in Register 0x0A, Bits[11:0] and nominally  
this ratio is 2000 (0x7D0).  
Because a new sample may arrive while the reads are occurring,  
this method prevents the new sample from partially overwriting  
the data being read.  
CLOCKS AND TIMING CALIBRATION  
3. Calculate the 32 MHz clock error as follows:  
The ADPD1080/ADPD1081 operate using two internal time  
bases: a 32 kHz clock sets the sample timing, and a 32 MHz  
clock controls the timing of the internal functions, such as  
LED pulsing and data capture. Both clocks are internally  
generated and exhibit device to device variation of  
approximately 10% (typical).  
Clock Error = 32 MHz × (1 − CLK_RATIO/2000)  
4. Adjust the frequency of the 32 MHz oscillator by adjusting  
the setting of Bits[7:0] in Register 0x4D by the amount  
calculated in the following equation:  
CLK32M_ADJUST = Clock Error/112 kHz  
Heart rate monitoring applications require an accurate time  
base to achieve an accurate count of beats per minute. The  
ADPD1080/ADPD1081 provide a simple calibration procedure  
for both clocks.  
5. Write 0x0 to Register 0x50, Bit 5 (CLK32M_CAL_EN) to  
reset the CLK_RATIO function.  
Repeat Step 2 through Step 5 until the desired accuracy is achieved.  
Calibrating the 32 kHz Clock  
Write 0x0 to Register 0x5F, Bit 0 to disable the 32 MHz oscillator.  
Calibrating the 32 kHz clock also calibrates items associated  
with the output data rate. Calibration of this clock is important  
for applications where an accurate data rate is important, such  
as heart rate measurements.  
OPTIONAL TIMING SIGNALS AVAILABLE ON  
GPIO0 AND GPIO1  
The ADPD1080/ADPD1081 provide a number of different  
timing signals, available via the GPIO0 and GPIO1 pins, to enable  
ease of system synchronization and flexible triggering options.  
Each GPIOx pin can be configured as an open-drain output if  
the pins are to share the bus with other drivers, or the pins can  
be configured to always drive the bus. Both outputs also have  
polarity control in situations where a timing signal must be  
inverted from the default.  
To calibrate the 32 kHz clock,  
1. Set the sampling frequency to the highest the system can  
handle, such as 2000 Hz. Because the 32 kHz clock  
controls sample timing, its frequency is readily accessible via  
the GPIO0 pin. Configure the interrupt by writing the  
appropriate value to the bits in Register 0x02 and set the  
interrupt to occur at the sampling frequency by writing 0 to  
Register 0x01, Bit 5 or Bit 6. Monitor the GPIO0 pin. The  
interrupt frequency must match the set sample frequency.  
2. If the monitored interrupt frequency is less than the set  
sampling frequency, decrease the CLK32K_ADJUST bit  
(Register 0x4B, Bits[5:0]). If the monitored interrupt  
frequency is larger than the set sampling frequency,  
increase the CLK32K_ADJUST bits.  
Table 23. GPIOx Control Settings  
Mnemonic Register, Bit  
Setting Description  
GPIO0  
0x02, Bit 0  
0x02, Bit 1  
0x02, Bit 2  
0x02, Bit 8  
0x02, Bit 9  
0x4F, Bit 6  
0: polarity active high  
1: polarity active low  
0: always drives the bus  
1: drives the bus when asserted  
0: disables the GPIO0 pin drive  
1: enables the GPIO0 pin drive  
0: polarity active high  
3. Repeat Step 1 and Step 2 until the monitored interrupt  
signal frequency is close enough to the set sampling  
frequency.  
GPIO1  
1: polarity active low  
0: always drives the bus  
1: drives the bus when asserted  
0: disables the GPIO1 pin drive  
1: enables the GPIO1 pin drive  
After the 32 kHz oscillator calibration completes, set the GPIO0  
pin to the mode desired for normal operation.  
Calibrating the 32 MHz Clock  
The various available timing signals are controlled by the settings  
in Register 0x0B. Bits[12:8] of this register control the timing  
signals available on GPIO1, and Bits[4:0] control the timing  
signals available on GPIO0. All of the timing signals described in  
this data sheet are available on either (or both) of the GPIO0  
and GPIO1 pins. Timing diagrams are shown in Figure 43 and  
Figure 44. The time slot settings used to generate the timing  
diagrams are described in Table 24.  
Calibrating the 32 MHz clock also calibrates items associated with  
the fine timing within a sample period, such as LED pulse width  
and spacing, assuming that the 32 kHz clock is calibrated.  
To calibrate the 32 MHz clock, the 32 kHz clock must first be  
calibrated as previously described. Always start this routine with  
Register 0x4D set to 0x98, which is the default value at power-up.  
Rev. C | Page 36 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Table 24. ADPD1080/ADPD1081 Settings Used for Timing Diagrams Shown in Figure 43 and Figure 44  
Register  
Setting  
0x0118  
0x0418  
0x0120  
Description  
0x31  
0x36  
0x15  
Time Slot A: 1 LED pulse  
Time Slot B: 4 LED pulses  
Time Slot A decimation = 4, Time Slot B decimation = 2  
SLEEP  
SLOT A  
SLOT B  
SLOT A  
SLOT B  
Figure 43. Optional Timing Signals Available on GPIOx—Register 0x0B, Bits[12:8] or Bits[4:0] = 0x02, 0x05, 0x06, 0x07, and 0x0F  
SLEEP  
SLEEP  
SLEEP  
SLOT A/B  
SLOT A/B  
SLOT A/B  
SLOT A/B  
SLOT A/B  
SLOT A/B  
SLEEP  
SLEEP  
0x02  
0x0C  
0x0D  
0x0E  
Figure 44. Optional Timing Signals Available on GPIOx—Register 0x0B, Bits[12:8] or Bits[4:0] = 0x02, 0x0C, 0x0D, and 0x0E  
ADPD103 Backward Compatibility  
Output Data Cycle Signal  
Setting Register 0x0B = 0 provides backward compatibility to  
the ADPD103. The GPIO0 pin mirrors the functionality of the  
ADPD103 INT pin. The GPIO1 pin mirrors the functionality of  
the ADPD103 PDSO pin.  
Three options are available to provide a signal that indicates  
when the output data is written to the output data registers or  
to the FIFO. Setting Register 0x0B, Bits[12:8] or Bits[4:0] =  
0x0C provides a signal that indicates that a data value is written  
for Time Slot A. A setting of 0x0D provides a signal that  
indicates that a data value is written for Time Slot B, and a  
setting of 0x0E provides a signal to indicate that a value is  
written for either time slot. The signal asserts at the end of the  
time slot, when the output data is already written, and deasserts  
at the start of the subsequent sample. This timing signal is  
especially useful in situations where the FIFO is used. For  
example, one of the GPIOx pins can provide an interrupt after the  
FIFO reaches the FIFO threshold set in Register 0x06, Bits[13:8],  
while the other GPIOx pin can provide the output data cycle  
signal. This signal can trigger a peripheral device, such as an  
accelerometer, so that time aligned signals are provided to the  
processor.  
Interrupt Function  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x01 configures  
the respective pin to perform the interrupt function as defined  
by the settings in Register 0x01.  
Sample Timing  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x02 configures  
the respective pin to provide a signal that asserts at the beginning  
of the first time slot of the current sample and deasserts at the end  
of the last time slot of the current sample. For example, if both  
time slots are enabled, this signal asserts at the beginning of  
Time Slot A and deasserts at the end of Time Slot B. If only a  
single time slot is enabled, the signal asserts at the beginning of  
the enabled time slot and deasserts at the end of this same time slot.  
fS/2 Output  
Pulse Outputs  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x0F configures  
the respective pin to provide a signal that toggles at half the  
sampling rate. This timing signal is useful in, for example,  
situations where more than two LEDs per sample are required.  
This signal can be used as a select signal to a multiplexer being  
used to mux two LEDs into a single LED driver, providing the  
Three options are available to provide a copy of the LED pulse  
outputs. Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x05  
provides a copy of the Time Slot A LED pulses on the respective  
pin. A setting of 0x06 provides the Time Slot B pulses, and a  
setting of 0x07 provides the pulse outputs of both time slots.  
Rev. C | Page 37 of 74  
 
 
 
ADPD1080/ADPD1081  
Data Sheet  
ability to drive up to four separate LEDs per sample period.  
In such a case, the ADPD1080/ADPD1081 operate at 2× the  
sampling rate, and the LED settings can be reconfigured  
during the sleep period between samples. If identical LED  
settings (current and timing) are used for the LEDs being  
muxed, up to four LEDs can be sampled per sampling period  
without host intervention. An example of this configuration is  
shown in Figure 45.  
When only Time Slot A is enabled,  
PROC_A (C) = 0.35 × 10−6  
When only Time Slot B is enabled,  
PROC_B (C) = 0.24 × 10−6  
When Time Slot A and Time Slot B are enabled,  
PROC_AB (C) = 0.40 × 10−6  
AFE_x (A) = 3.0 × 10−3 + (1.5 × 10−3 × NUM_CHANNELS) +  
(4.6 × 10−3 × ILEDX_PK/SCALE_X)  
(6)  
Q
Q
Q
I
The fS/2 timing signal always starts in an active low state when  
the device switches from standby mode to normal operating  
mode and transitions to a high state at the completion of the  
first sample.  
tSLOTx (sec) = LEDx_OFFSET + LEDx_PERIOD ×  
PULSE_COUNT  
(7)  
V
LED  
where:  
NUM_CHANNELS is the number of active channels.  
LEDX_PK is the peak LED current, expressed in amps, for whichever  
LED is enabled in that particular time slot.  
I
ADPD1080/  
ADPD1081  
0
1
SCALE_X is the scale factor for the LED current drive determined  
by Bit 13 of the ILEDx_COARSE registers, Register 0x22,  
Register 0x23, and Register 0x24.  
LEDx  
LEDx_OFFSET is the pulse start time offset expressed in  
seconds.  
GPIOx  
LEDx_PERIOD is the pulse period expressed in seconds.  
PULSE_COUNT is the number of pulses.  
Figure 45. Example Using the fS/2 Timing Signal  
Logic 0 Output  
If either Time Slot A or Time Slot B are disabled, IAFE_x = 0 for that  
respective time slot. Additionally, if operating in TIA ADC mode,  
set Register 0x3C, Bits[8:3] = 010010 to achieve power savings.  
This setting disables the BPFs that are bypassed in TIA ADC  
mode, changing the AFE power contribution calculation to  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x10 configures  
the respective pin to provide a Logic 0 output.  
Logic 1 Output  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x11 configures  
the respective pin to provide a Logic 1 output.  
I
AFE_x (mA) = 3.0 × 10−3 + (1.0 × 10−3 × NUM_CHANNELS) +  
(4.6 × 10−3 × ILEDX_PK/SCALE_X)  
(8)  
32 kHz Oscillator Output  
Average VLEDA Supply Current  
Setting Register 0x0B, Bits[12:8] or Bits[4:0] = 0x13 configures  
the respective pin to provide a copy of the on-board 32 kHz  
oscillator.  
To calculate the average VLEDA supply current, use Equation 9.  
LED_AVG_A = SLOTA_LED_WIDTH × ILEDA_PK × DR ×  
PULSE_COUNT  
where:  
I
(9)  
CALCULATING CURRENT CONSUMPTION  
The current consumption of the ADPD1080/ADPD1081  
depends on the user selected operating configuration, as  
determined by the following equations.  
SLOTA_LED_WIDTH is the LED pulse width expressed in  
seconds.  
I
LEDA_PK is the peak current, expressed in amps, for whichever  
Total Power Consumption  
LED is selected for Time Slot A.  
To calculate the total power consumption, use Equation 4.  
Average VLEDB Supply Current  
Total Power = IVDD_AVG × VDD + ILEDA_AVG × VLEDA  
LEDB_AVG × VLEDB  
Average VDD Supply Current  
+
To calculate the average VLEDB supply current, use Equation 10.  
LED_AVG_B = SLOTB_LED_WIDTH × ILEDB_PK × DR ×  
PULSE_COUNT  
where:  
I
(4)  
(5)  
I
(10)  
To calculate the average VDD supply current, use Equation 5.  
IVDD_AVG = DR × ((IAFE_A × tSLOTA) + (IAFE_B × tSLOTB) +  
PROC_X) + IVDD_STANDBY  
SLOTB_LED_WIDTH is the LED pulse width expressed in  
seconds.  
Q
I
LEDB_PK is the peak current, expressed in amps, for whichever  
LED is selected for Time Slot B.  
where:  
DR is the data rate in Hz.  
VDD_STANDBY = 0.2 µA.  
PROC_X is an average charge associated with a processing time.  
I
Q
Rev. C | Page 38 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Tuning the Pulse Count  
OPTIMIZING SNR PER WATT  
After the LED peak current and TIA gain are optimized,  
increasing the number of pulses per sample increases the SNR  
by the square root of the number of pulses. There are two ways  
to increase the pulse count. The pulse count registers  
The ADPD1080/ADPD1081 offer a variety of adjustable  
parameters to achieve the best signal. One of the key goals of  
system performance is to obtain the best system SNR for the  
lowest total power. This goal is often referred to as optimizing  
SNR per Watt. Even in systems where only the SNR matters  
and power is a secondary concern, there may be a lower  
power or a high power means of achieving the same SNR.  
(Register 0x31, Bits[15:8], and Register 0x36, Bits[15:8]) change the  
number of pulses per internal sample. Register 0x15, Bits[6:4] and  
Bits[10:8], controls the number of internal samples that are  
averaged together before the data is sent to the output. Therefore,  
the number of pulses per sample is the pulse count register  
multiplied by the number of subsequent samples being averaged.  
In general, the internal sampling rate increases as the number  
of internal sample averages increase to maintain the desired  
output data rate. The SNR/Watt is most optimal with pulse  
count values of 16 or less. Above pulse count values of 16, the  
square root relationship does not hold in the pulse count  
register. However, this relationship continues to hold when  
averaged between samples using Register 0x15.  
Optimizing for Peak SNR  
The first step in optimizing for peak SNR is to find a TIA gain  
and LED level that gives the best performance where the  
number of LED pulses remains constant. If peak SNR is the  
goal, use the noise section of Table 4 as a guide. It is important  
to note that the SNR improves as a square root of the number  
of pulses averaged together, whereas the increase in the LED  
power consumed is directly proportional to the number of LED  
pulses. In other words, for every doubling of the LED pulse  
count, there is a doubling of the LED power consumed and a 3 dB  
SNR improvement. As a result, avoid any change in the gain  
configuration that provides less than 3 dB of improvement for  
a 2× power penalty; any TIA gain configuration that provides  
more than 3 dB of improvement for a 2× power penalty is a  
suitable choice. If peak SNR is the goal and there is no issue  
saturating the photodiode with LED current at any gain, the  
50 kΩ TIA gain setting is an optimal choice. After the SNR per  
pulse per channel is optimized, the user can then increase the  
number of pulses to achieve the desired system SNR.  
Note that increasing LED peak current increases SNR almost  
directly proportional to LED power, whereas increasing the  
number of pulses by a factor of n results in only a nominal √(n)  
increase in SNR.  
When using the sample sum or average function (Register 0x15),  
the output data rate decreases by the number of summed samples.  
To maintain a static output data rate, increase the sample  
frequency (Register 0x12) by the same factor as that selected  
in Register 0x15. For example, for a 100 Hz output data rate  
and a sample sum or average of four samples, set the sample  
frequency to 400 Hz.  
Optimizing SNR per Watt in a Signal Limited System  
In practice, optimizing for peak SNR is not always practical.  
One scenario in which the PPG signal has a poor SNR is the  
signal limited regime. In this scenario, the LED current reaches  
an upper limit before the desired dc return level is achieved.  
Applying a Reverse Bias to the Photodiode  
The photodiode capacitance contributes to higher noise in the  
signal path. Applying a reverse bias to the photodiode reduces  
the capacitance of the photodiode, resulting in better noise  
performance. To apply a reverse bias to the photodiode, set  
Register 0x54, Bit 7 to 1. The actual reverse bias is then  
determined by the settings in Register 0x54, Bits[11:10] for  
Time Slot B and in Register 0x54, Bits[9:8] for Time Slot A.  
Set these bits equal to 0x2 applies ~250 mV of reverse bias  
across the photodiode. There is also an option of setting the  
cathode of the PD equal to the positive supply voltage, which  
can result in up to 0.9 V of reverse bias; however, any noise on  
the supply is introduced directly into the signal so this may  
actually result in higher noise levels. The recommended setting  
is to set Register 0x54, Bits[11:10] and/or Register 0x54,  
Bits[9:8] equal to 0x2 for an ~250 mV reverse bias.  
Tuning in this case starts where the peak SNR tuning stops. The  
starting point is nominally a 50 kΩ gain, as long as the lowest LED  
current setting of 8 mA does not saturate the photodiode and  
the 50 kΩ gain provides enough protection against intense  
background light. In these cases, use a 25 kΩ gain as the starting  
point.  
The goal of the tuning process is to bring the dc return signal to a  
specific ADC range, such as 50% or 60%. The ADC range choice is  
a function of the margin of headroom needed to prevent saturation  
as the dc level fluctuates over time. The SNR of the PPG waveform  
is always some percentage of the dc level. If the target level cannot  
be achieved at the base gain, increase the gain and repeat the  
procedure. The tuning system may need to place an upper limit  
on the gain to prevent saturation from ambient signals.  
Rev. C | Page 39 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
tion is achieved by setting Register 0x17, Bits[3:0] = 0xA and  
Register 0x1D, Bits[3:0] = 0xA for Time Slot A and Time Slot B,  
respectively. To complete the operation, the math must be  
adjusted using Register 0x58. In this example, set Register 0x58,  
Bits[9:8] and Register 0x58, Bits[11:10] to b01 to add the third  
pulse and subtract the fourth pulse for Time Slot A and Time  
Slot B, respectively. Set Register 0x58, Bits[2:1] and Register  
0x58, Bits[6:5] to b01 to add the first pulse and subtract the  
second pulse for Time Slot A and Time Slot B, respectively. This  
sequence then repeats for every subsequent sequence of four  
pulses. An even number of pulses must be used with integrator  
chop mode.  
Improving SNR Using Integrator Chopping  
The last stage in the analog front end that is integrated into the  
ADPD1080/ADPD1081 data path is a charge integrator. The  
integrator uses an on and off integration sequence, synchronized  
to the emitted light pulse, which acts as an additional high-pass  
filter to remove offsets, drifts, and low frequency noise from the  
previous stages. However, the integrating amplifier can itself  
introduce low frequency signal content at a low level. The  
ADPD1080/ADPD1081 have an integrator chop mode that  
enables additional chopping in the digital domain to remove  
this signal. This chopping is achieved by using even numbers of  
pulses per sample and inverting the integration sequence for  
half of those sequences. In the calculation to combine the  
digitized result of each of the pulses of the sample, the sequences  
with an inverted integrator sequence are subtracted and the  
sequences with a normal integrator sequence are added. An  
example diagram of the integrator chopping sequence is shown  
in Figure 46.  
When using integrator chop mode, the ADC offset registers  
(Register 0x18 through Register 0x1B for Time Slot A, and  
Register 0x1E through Register 0x21 for Time Slot B) must be  
set to 0. These settings are required because any digital offsets  
at the output of the ADC are automatically eliminated when the  
math is adjusted to subtract the inverted integration sequences  
while the default integration sequences are added. Integrator  
chop mode also eliminates the need to manually null the ADC  
offsets at startup in a typical application. Note that the elimination  
of the offset using chop mode may clip at least half of the noise  
signal when no input signal is present, which makes measuring  
the noise floor during characterization of the system difficult.  
For this reason, perform noise floor characterization of the system  
either with chop mode disabled or with chop mode enabled but  
with a minimal signal present at the input that increases the  
noise floor enough such that it is no longer clipped.  
The result is that any low frequency signal contribution from  
the integrator is eliminated, leaving only the integrated signal,  
which results in higher SNR, especially at higher numbers of  
pulses and at lower TIA gains where the noise contribution of  
the integrator becomes more pronounced.  
Digital chopping is enabled using the registers and bits detailed  
in Table 25. The bit fields define the chopping operation for the  
first four pulses. This 4-bit sequence is then repeated for all  
subsequent pulses. In Figure 46, a sequence is shown where the  
second and fourth pulses are inverted, whereas the first and third  
pulses remain in the default polarity (noninverted). This configura-  
PULSE 1  
PULSE 2  
PULSE 3  
PULSE 4  
LED  
BAND-PASS  
FILTER  
OUTPUT  
INTEGRATOR  
SEQUENCE  
+
+
+
+
ADC  
+
+
Figure 46. Diagram of Integrator Chopping Sequence  
Table 25. Register Settings for Integrator Chop Mode  
Hex  
Addr.  
Data  
Bit(s)  
Bit Name  
Description  
0x17  
[3:0]  
INTEG_ORDER_A Integration sequence order for Time Slot A. Each bit corresponds to the polarity of the integration  
sequence of a single pulse in a four-pulse sequence. Bit 0 controls the integration sequence of  
Pulse 1, Bit 1 controls Pulse 2, Bit 2 controls Pulse 3, and Bit 3 controls Pulse 4. After four pulses, the  
sequence repeats.  
0: normal integration sequence.  
1: reversed integration sequence.  
0x1D  
[3:0]  
INTEG_ORDER_B Integration sequence order for Time Slot B. Each bit corresponds to the polarity of the integration  
sequence of a single pulse in a four-pulse sequence. Bit 0 controls the integration sequence of  
Pulse 1, Bit 1 controls Pulse 2, Bit 2 controls Pulse 3, and Bit 3 controls Pulse 4. After four pulses, the  
sequence repeats.  
0: normal integration sequence.  
1: reversed integration sequence  
Rev. C | Page 40 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Hex  
Addr.  
Data  
Bit(s)  
Bit Name  
Description  
0x58  
[11:10]  
FLT_MATH34_B  
Time Slot B control for adding and subtracting Sample 3 and Sample 4 in a four-pulse sequence (or  
any multiple of four pulses, for example, Sample 15 and Sample 16 in a 16-pulse sequence).  
00: add third and fourth.  
01: add third and subtract fourth.  
10: subtract third and add fourth.  
11: subtract third and fourth.  
[9:8]  
FLT_MATH34_A  
FLT_MATH12_B  
FLT_MATH12_A  
Time Slot A control for adding and subtracting Sample 3 and Sample 4 in a four-pulse sequence  
(or any multiple of four pulses, for example, Sample 15 and Sample 16 in a 16-pulse sequence).  
00: add third and fourth.  
01: add third and subtract fourth.  
10: subtract third and add fourth.  
11: subtract third and fourth.  
[6:5]  
Time Slot B control for adding and subtracting Sample 1 and Sample 2 in a four-pulse sequence (or  
any multiple of four pulses, for example, Sample 13 and Sample 14 in a 16-pulse sequence).  
00: add first and second.  
01: add first and subtract second.  
10: subtract first and add second.  
11: subtract first and second.  
[2:1]  
Time Slot A control for adding and subtracting Sample 1 and Sample 2 in a four-pulse sequence  
(or any multiple of four pulses, for example, Sample 13 and Sample 14 in a 16-pulse sequence).  
00: add first and second.  
01: add first and subtract second.  
10: subtract first and add second.  
11: subtract first and second.  
Three-channel mode can also be achieved with the appropriate  
OPTIMIZING POWER BY DISABLING UNUSED  
CHANNELS AND AMPLIFIERS  
Single-Channel AFE Mode  
settings. See Table 26 for the settings required to power down  
different combinations of channels. Refer to the Time Slot  
Switch section to determine the different combinations of the  
PDx inputs and enabled channels required to optimize the  
system configuration for maximum SNR and lowest power.  
When using a single photodiode in an application, with that  
photodiode connected to a single AFE channel (either Channel 1  
or Channel 2), the ADPD1080/ADPD1081 have an option to  
power down the unused channels, placing the device in single  
AFE channel mode. Because three of the four AFE channels are  
off in this mode, the power consumption is reduced considerably.  
Powering Down Individual Amplifiers for Additional  
Power Savings  
Each channel includes a TIA, a BPF, and an integrator which  
can also be configured as a buffer (see Figure 47).Options are  
built into the devices to power down individual amplifiers in the  
signal path. For example, in TIA ADC mode, the BPF is bypassed  
but left powered up by default. The BPF can be disabled  
completely, which saves 1/3 of the power dissipated by the AFE  
during the sampling phase. See the descriptions for Register 0x3C  
and Register 0x37 in Table 38 for information on how to disable  
the individual amplifiers.  
When only Channel 1 is used, disable Channel 2, Channel 3,  
and Channel 4 by writing 0x7 to Register 0x3C, Bits[8:6]. If  
only Channel 2 is used, disable Channel 1 by writing 0x7 to  
Register 0x3C, Bits[5:3], and disable Channel 3 and Channel 4  
by writing 0x7 to Register 0x37, Bits[15:13].  
Dual-Channel AFE Mode  
In situations where two of the four channels are in use, the  
other two channels can be disabled. Enable Channel 1 and  
Channel 2 (with Channel 3 and Channel 4 disabled) by writing  
0x7 to Register 0x37, Bits[15:13]. Operate Channel 3 and Channel  
4 in dual channel mode (with Channel 1 and Channel 2  
disabled) by writing 0x7 to both Register 0x3C, Bits[5:3] and  
Register 0x37, Bits[12:10].  
BPF  
TIA  
±1 INTEGRATOR  
V
BIAS  
Figure 47. TIA/BPF/Integrator Block Diagram  
It is important to leave any unused input channels floating for  
proper device operation.  
Rev. C | Page 41 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
Table 26. Channel Power-Down Settings  
Register 0x3C,  
Bits[8:6]  
Register 0x3C,  
Bits[5:3]  
Register 0x37,  
Bits[15:13]  
Register 0x37,  
Bits[12:10]  
Number of Channels Channels Enabled  
1
1
2
2
3
4
Channel 1  
Channel 2  
Channel 1, Channel 2  
Channel 3, Channel 4  
Channel 2, Channel 3, Channel 4 0x0  
All channels 0x0  
0x7  
0x0  
0x0  
0x0  
0x0  
0x7  
0x0  
0x7  
0x7  
0x0  
Not applicable  
Not applicable  
0x7  
0x7  
0x0  
0x0  
0x0  
0x0  
0x0  
0x7  
0x0  
0x0  
the gain of the integrator to achieve a similar result. Figure 48  
shows a block diagram of the receive path. The gain of the signal  
path is determined by the TIA feedback resistor (RF) and the  
input resistor to the integrator (RINT). When RF is reduced to  
provide additional dynamic range at the input to the TIA to  
accommodate additional ambient light, RINT can be reduced to  
provide more gain through the integrator such that the same  
amount of pulsed signal at the input to the TIA utilizes the same  
amount of dynamic range of the ADC before the TIA gain is  
reduced. Use Bits[9:8] of Register 0x42 (Time Slot A) and  
Register 0x44 (Time Slot B) to choose the resistor setting of RINT  
as shown in Table 27.  
OPTIMIZING DYNAMIC RANGE FOR HIGH  
AMBIENT LIGHT CONDITIONS  
Large amounts of ambient light use large amounts of the  
available dynamic range of the TIA. The band-pass filter  
rejects the ambient light prior to the charge being integrated  
by the integrator; therefore, the ambient light is not a primary  
concern for the integrator. However, to accommodate  
increased levels of ambient light, it may be necessary to use  
lower TIA gain to avoid saturation of the TIA. When the TIA  
gain is reduced, the referred to input (RTI) noise of the desired  
signal increases. The impact of this increase can be reversed by  
increasing the gain of the integrator so that the LED signal gain  
in mA per LSB remains the same.  
6.3pF  
R
F
R
R
INT  
For example, start with an amount of pulsed signal (desired)  
where the TIA gain has been optimized such that the pulsed  
signal is using the desired amount of ADC dynamic range  
available, typically ~70% full scale. If the ambient light level  
increases and the gain of the TIA must be decreased to  
accommodate for the increase in ambient light without saturating  
the TIA, then the amount of pulsed signal presented to the ADC is  
attenuated by the factor that the TIA gain is reduced, which  
results in the SNR of the desired signal reducing.  
ADC  
TIA  
BPF  
INT  
TIA_VREF  
R
F
6.3pF  
Figure 48. Receive Path Block Diagram  
Table 27. Values of RINT  
Register 0x42, Bits[9:8], Register 0x44, Bits[9:8]  
RINT (kΩ)  
00 (default)  
01  
10  
400  
200  
100  
To increase the SNR of the desired signal in this situation, use  
one of the following two methods. The first method simply  
increases the LED current by the amount required to bring the  
level of the pulsed signal at the ADC back to the desired amount  
of full scale. However, this is at the expense of increasing the  
overall power of the system. The second method is to increase  
Table 28 shows an example of how the SNR can be optimized  
as a function of the RF and RINT vs. the amount of ambient light  
that must be accommodated. The values shown in Table 28 are  
for a 2 µs LED pulse and a photodiode capacitance of 30 pF.  
Table 28. Examples of SNR vs. RF and RINT Combinations  
Pulsed Current at  
RF (kΩ) RINT (kΩ) 70% Full Scale (µA) Noise (nA rms) Maximum Ambient Current (µA)  
TIA Linear Range (µA)  
SNR (dB)  
72.1  
68.4  
65  
73.9  
200  
100  
50  
100  
50  
400  
200  
100  
400  
200  
400  
3.3  
3.3  
3.3  
6.8  
6.8  
13.2  
0.82  
1.26  
1.85  
1.38  
2.1  
2.2  
7.8  
18.8  
4.3  
15.3  
8.9  
5.5  
11.1  
22.1  
11.1  
22.1  
22.1  
70.2  
73.8  
50  
2.7  
Rev. C | Page 42 of 74  
 
 
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
Bit 9 for Time Slot B. Setting this bit to 0 (default) sets a gain of  
1. Setting this bit to 1 configures the buffer with a gain of 0.7.  
TIA ADC MODE  
Figure 49 shows a way to put the devices into a mode that  
effectively runs the TIA directly into the ADC without using  
the analog BPF and integrator. This mode is referred to as TIA  
ADC mode. There are two basic applications of TIA ADC mode.  
In normal operation, all background light is blocked from the  
signal chain and, therefore, cannot be measured. TIA ADC  
mode can measure the amount of background and ambient light.  
This mode can also measure other dc input currents, such as  
leakage resistance.  
Calculate the ADC output (ADCOUT) as follows:  
ADCOUT = 8192 (((2 × TIA_VREF − 2 × i × RF − 1.8 V)/  
146 µV/LSB) × SLOTx_BUF_GAIN)  
(11)  
where:  
TIA_VREF is the bias voltage for the TIA (the default value is  
1.265 V).  
i is the input current to the TIA.  
RF is the TIA feedback resistor.  
SLOTx_BUF_GAIN is either 0.7 or 1 based on the setting of  
Register 0x42, Bit 9 and Register 0x44, Bit 9.  
OPTIONAL  
BUFFER  
ADC  
–1  
TIA  
Equation 11 is an approximation and does not account for  
internal offsets and gain errors. The calculation also assumes  
that the ADC offset registers are set to 0  
TIA_VREF  
Figure 49. TIA ADC Mode Block Diagram  
One time slot can be used in TIA ADC mode at the same time  
the other time slot is being used in normal pulsed mode. This  
capability is useful for monitoring ambient and pulsed signals  
at the same time. The ambient signal is monitored during the  
time slot configured for TIA ADC mode, while the pulsed  
signal, with the ambient signal rejected, is monitored in the  
time slot configured for normal mode.  
When the devices are in TIA ADC mode, the BPF and the  
integrator stage are bypassed. This bypass effectively wires the  
TIA directly into the ADC. At the set sampling frequency, the  
ADC samples Channel 1 through Channel 4 in sequential  
order, and each sample is taken at 1 µs intervals.  
There are two modes of operation in TIA ADC mode. One  
mode is an inverting configuration where TIA ADC mode  
directly drives the ADC. This mode is enabled by setting  
Register 0x43 (Time Slot A) and/or Register 0x45 (Time Slot B)  
to 0xB065, which bypasses the BPF and the integrator. With the  
ADC offset register(s) for the desired channel set to 0, and the  
bias voltage for the TIA (TIA_VREF) set to 1.265 V, the output  
of the ADC is at ~13,000 codes for a single pulse and a zero  
input current condition. As the input current from the  
photodiode increases, the ADC output decreases toward 0.  
This configuration is a legacy TIA ADC mode from the  
ADPD103 that is kept in the ADPD1080/ADPD1081 for  
backward compatibility.  
Protecting Against TIA Saturation in Normal Operation  
One of the reasons to monitor TIA ADC mode is to protect  
against environments that may cause saturation. One concern  
when operating in high light conditions, especially with larger  
photodiodes, is that the TIA stage may become saturated while  
the ADPD1080/ADPD1081 continue to communicate data.  
The resulting saturation is not typical. The TIA, based on its  
settings, can only handle a certain level of photodiode current.  
Based on the way the ADPD1080/ADPD1081 are configured, if  
there is a current level from the photodiode that is larger than the  
TIA can handle, the TIA output during the LED pulse effectively  
extends the current pulse, making it wider. The AFE timing is then  
violated because the positive portion of the BPF output extends  
into the negative section of the integration window. Thus, the  
photo signal is subtracted from itself, causing the output signal  
to decrease when the effective light signal increases.  
The recommended TIA ADC mode is one in which the BPF is  
bypassed and the integrator is configured as an inverting buffer.  
This mode is enabled by writing 0xAE65 to Register 0x43  
(Time Slot A) and/or Register 0x45 (Time Slot B) to bypass  
the BPF. Additionally, to configure the integrator as a buffer,  
set Bit 7 of Register 0x42 (Time Slot A) and/or Register 0x44  
(Time Slot B) to 1, and set Bit 7 of Register 0x58 to 1. With  
the ADC offset register(s) for the desired channel set to 0  
and the TIA_VREF set to 1.265 V, the output of the ADC is  
at ~13,000 codes for a single pulse and a zero input current  
condition. As the input current from the photodiode increases,  
the ADC output decreases toward 0.  
To measure the response from the TIA and verify that this stage  
is not saturating, place the device in TIA ADC mode and slightly  
modify the timing. Specifically, sweep SLOTx_AFE_OFFSET  
until two or three of the four channels reach a minimum value  
(note that TIA is in an inverting configuration). The four  
channels do not reach this minimum value because, typically, 3 µs  
LED pulse widths are used, and the ADC samples the four  
channels sequentially at 1 µs intervals. This procedure aligns the  
ADC sampling time with the LED pulse to measure the total  
amount of light falling on the photodetector (for example,  
background light + LED pulse).  
When configuring the integrator as a buffer, there is the option  
of either using a gain of 1 or a gain of 0.7. Using the gain of 0.7  
increases the usable dynamic range at the input to the TIA;  
however, it is possible to overrange the ADC in this configuration  
and care must be taken to not saturate the ADC. To set the buffer  
gain use Register 0x42, Bit 9 for Time Slot A and Register 0x44,  
Rev. C | Page 43 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
If this minimum value is above 0 LSB, the TIA is not saturated.  
However, take care, because even if the result is not 0 LSB,  
operating the device near saturation can quickly result in  
saturation if light conditions change. A safe operating region is  
typically at ¾ full scale and lower. Use Table 29 to determine  
how the input codes map to ADC levels on a per channel per  
pulse basis. These codes are not the same as in normal mode  
because the BPF and integrator are not unity-gain elements.  
while in operation. Setting the cathode to 1.8 V places 0.5 V  
across the photodiode. Using the register settings in Table 3 to  
control the cathode voltage, measure the TIA ADC value at  
both voltages. Next, divide the voltage difference of 0.5 V by the  
difference of the ADC result after converting it to a current. This  
result is the approximate shunt resistance. Values greater than  
10 MΩ may be difficult to measure, but this method is useful in  
identifying gross failures.  
Measuring PCB Parasitic Input Resistance  
Measuring TIA Input Shunt Resistance  
During the process of mounting the ADPD1080/ADPD1081,  
undesired resistance can develop on the inputs through assembly  
errors or debris on the PCB. These resistances can form between  
the anode and cathode, or between the anode and some other  
supply or ground. In normal operation, the ambient rejection  
feature of the ADPD1080/ADPD1081 masks the primary effects  
of these resistances, making it difficult to detect them. However,  
even at 1 MΩ to 10 MΩ, such resistance can affect performance  
significantly through added noise or decreased dynamic range.  
TIA ADC mode can screen for these assembly issues.  
A resistance to develop between the TIA input and another  
supply or ground on the PCB is an example of another problem  
that can occur. These resistances can force the TIA into saturation  
prematurely. This premature saturation, in turn, takes away  
dynamic range from the device in operation and adds a Johnson  
noise component to the input. To measure these resistances, place  
the device in TIA ADC mode in the dark and start by measuring  
the TIA ADC offset level with the photodiode inputs disconnected  
(Register 0x14, Bits[11:8] = 0 or Register 0x14, Bits[7:4] = 0).  
From this, subtract the value of TIA ADC mode with the  
darkened photodiode connected and convert the difference into  
a current. If the value is positive, and the ADC signal decreased,  
Measuring Shunt Resistance on the Photodiode  
A shunt resistor across the photodiode does not generally affect  
the output level of the device in operation because the effective  
impedance of the TIA is low, especially if the photodiode is held  
to 0 V in operation. However, such resistance can add noise to the  
system, degrading performance. The best way to detect photodiode  
leakage, also called photodiode shunt resistance, is to place the  
device in TIA ADC mode in the dark and vary the operation  
mode cathode voltage. Setting the cathode to 1.3 V places 0 V  
across the photodiode because the anode is always at 1.3 V  
the resistance is to a voltage higher than 1.3 V, such as VDD  
Current entering the TIA causes the output to drop. If the  
output difference is negative due to an increase of codes at the  
ADC, current is being pulled out of the TIA, and there is a  
shunt resistance to a lower potential than 1.3 V, such as  
ground.  
.
Table 29. Analog Specifications for TIA ADC Mode  
Parameter  
Test Conditions/Comments  
Typ  
Unit  
TIA ADC Saturation Levels  
Values expressed per channel, per sample  
25 kΩ gain  
50 kΩ gain  
100 kΩ gain  
200 kΩ gain  
38.32  
19.16  
9.58  
4.79  
42.8  
21.4  
10.7  
5.4  
µA  
µA  
µA  
µA  
µA  
µA  
µA  
µA  
TIA Linear Range  
25 kΩ gain  
50 kΩ gain  
100 kΩ gain  
200 kΩ gain  
TIA ADC Resolution  
Values expressed per channel, per sample; TIA feedback resistor  
25 kΩ  
50 kΩ  
100 kΩ  
200 kΩ  
2.92  
1.5  
0.73  
0.37  
nA/LSB  
nA/LSB  
nA/LSB  
nA/LSB  
Output Without Input Photocurrent  
ADC offset (Register 0x18 to Register 0x21) = 0x0  
13,000 LSB  
Rev. C | Page 44 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
Table 30. Configuration Registers to Switch Between the Normal Sample Mode and TIA ADC Mode  
Hex  
Addr.  
Data  
Bit(s)  
Normal  
Mode Value Mode Value  
TIA ADC  
Bit Name  
Description  
42  
[15:10]  
SLOTA_AFE_MODE  
0x07  
0x0  
Not applicable In normal mode, this setting configures the integrator block  
for optimal operation. This setting is not important for TIA  
ADC mode.  
[9:8]  
SLOTA_INT_GAIN  
0x0  
00: buffer gain = 1.0.  
01: buffer gain = 1.0.  
10: buffer gain = 0.7.  
7
SLOTA_INT_AS_BUF 0x0  
0x1  
0: normal integrator configuration.  
1: convert integrator to buffer amplifier  
Time Slot A AFE connection.  
0xAE65 bypasses the band-pass filter.  
43  
44  
[15:0]  
SLOTA_AFE_CFG  
0xADA5  
0xAE65  
0xB065 can also be used in TIA ADC mode. This setting  
bypasses the BPF and the integrator.  
[15:10]  
[9:8]  
SLOTB_AFE_MODE  
SLOTB_INT_GAIN  
0x07  
0x0  
Not applicable In normal mode, this setting configures the integrator block  
for optimal operation. This setting is not important for TIA  
ADC mode.  
0x0  
00: buffer gain = 1.0.  
01: buffer gain = 1.0.  
10: buffer gain = 0.7.  
7
SLOTB_INT_AS_BUF 0x0  
0x1  
0: normal integrator configuration.  
1: convert integrator to buffer amplifier  
Time Slot B AFE connection.  
0xAE65 bypasses the BPF.  
45  
58  
[15:0]  
SLOTB_AFE_CFG  
0xADA5  
0xAE65  
0xB065 can also be used in TIA ADC mode. This setting  
bypasses the BPF and the integrator.  
7
ENA_INT_AS_BUF  
0x0  
0x1  
Enables the ability to configure the integrator as a buffer in  
TIA ADC mode.  
Rev. C | Page 45 of 74  
ADPD1080/ADPD1081  
Data Sheet  
The ADPD1080 is configured to alternately measure the  
PULSE CONNECT MODE  
photodiode signal and the ECG signal from the AD8233 on  
consecutive time slots to provide fully synchronized PPG and  
ECG measurements. Data can be read out of the on-chip FIFO  
or straight from data registers. The ADPD1080 channel used to  
process the ECG signal is set up in TIA ADC mode, and the input  
bias voltage must be set to the 0.90 V setting using Bits[5:4] of  
Register 0x42 if the ECG signal is on Time Slot A, or Register 0x44  
on Time Slot B. The TIA gain setting can be set to optimize the  
dynamic range of the signal path. The channel used to process  
the PPG signal is configured in its normal operating mode.  
Figure 50 shows a plot of a synchronized ECG and PPG  
measurement using the AD8233 with the ADPD1080.  
10000  
In pulse connect mode, the photodiode input connections are  
pulsed according to the timing set up in the LED pulse timing  
registers. In this mode, if the LED pulse timing is set up to provide  
a 2 µs LED pulse, the device pulses the connection to the photo-  
diode input for 2 µs instead of providing a 2 µs LED pulse. This  
mode is an alternate to TIA ADC mode, allowing the entire  
signal path, including the BPF and integrator, to measure ambient  
light as well as other types of measurements with different types  
of sensors (for example, electrocardiogram (ECG)).  
To enable pulse connect mode, the device is configured identically  
to normal mode, except that Register 0x14, Bits[3:2] = 0 for  
Time Slot B, and Register 0x14, Bits[1:0] = 0 for Time Slot A.  
52000  
SYNCHRONOUS ECG AND PPG MEASUREMENT  
USING TIA ADC MODE  
9500  
9000  
In wearable devices developed for monitoring the health care of  
patients, it is often necessary to have synchronized measurements  
of biomedical signals. For example, a synchronous measurement  
of patient ECG and PPG can determine the pulse wave transit  
time (PWTT), which can then estimate blood pressure.  
51500  
PPG  
8500  
8000  
51000  
ECG  
7500  
7000  
The circuit shown in Figure 51 shows a synchronous ECG and  
PPG measurement using the AD8233 and the ADPD1080. The  
AD8233 implements a two-pole high-pass filter (HPF) with a  
cutoff frequency at 0.3 Hz, and a two-pole low-pass filter (LPF)  
with a cutoff frequency of 37 Hz. The output of the AD8233 is  
fed to one of the current inputs of the ADPD1080 through a  
200 kΩ resistor to convert the voltage output of the AD8233  
into a current.  
50500  
6500  
50000  
6000  
SAMPLE RATE (ms)  
Figure 50. Plot of Synchronized ECG and PPG Waveforms  
1.8V  
4.7µF  
10MΩ  
HPDRIVE  
+IN  
HPSENSE  
IAOUT  
10MΩ  
10MΩ  
1.8V  
180kΩ  
180kΩ  
LA  
RA  
–IN  
REFIN  
10MΩ  
0.1µF  
4.7µF  
+V  
S
10MΩ  
RLDFB  
RLD  
0.1µF  
1nF  
360kΩ  
RL  
GND  
FR  
AD8233  
1.8V  
SW  
1MΩ  
1MΩ  
OPAMP+  
REFOUT  
OPAMP–  
OUT  
AC/DC  
SDN  
100kΩ 6.8nF  
250kΩ  
TO DIGITAL  
INTERFACE  
RLD SDN  
2.7nF  
1MΩ  
1.8V  
LOD  
ADPD1080  
50kΩ  
DVDD  
AVDD  
PD1  
0.1µF  
0.1µF  
VLED  
PDC  
AGND  
DGND  
LGND  
1.8V  
PD5  
10kΩ 10kΩ  
LEDX1  
SCL  
SDA  
VREF  
TO DIGITAL  
INTERFACE  
1µF  
GPIO0  
GPIO1  
Figure 51. Synchronized PPG and ECG Measurement Using the ADPD1080 with the AD8233  
Rev. C | Page 46 of 74  
 
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
Float Mode Measurement Cycle  
FLOAT MODE  
Figure 52 shows the float mode measurement cycle timing  
diagram, and the following details the points shown:  
The ADPD1080/ADPD1081 has a unique operating mode,  
float mode, that allows excellent SNR at low power in low  
light situations. In float mode, the photodiode is first  
The precondition period is shown prior to Point A. The  
photodiode is connected to the TIA, and the photocurrent  
flows into the TIA. The photodiode anode is held at 0.9 V  
(Register 0x42 and Register 0x44, Bits[5:4] = 0x2 sets  
TIA_VREF = 0.9 V). The photodiode is reverse biased  
to a maximum reverse bias of ~250 mV by setting  
Register 0x54, Bit 7 = 1 and Register 0x54, Bits[9:8] =  
0x2 (for Time Slot A). At this point, the output of the TIA  
(TIA_OUT) = TIA_VREF − (IPD × RF), where IPD is the  
current flowing from the PD into the ADPD1080/  
ADPD1081 input, and the integrator is off.  
preconditioned to a known state and then the photodiode  
anode is disconnected from the receive path of the ADPD1080/  
ADPD1081 for a preset amount of float time. During the float  
time, light falls on the photodiode, either from ambient light,  
pulsed LED light, or a combination of the two depending on  
the operating mode. Charge from the sensor is stored directly  
on the capacitance of the sensor. At the end of the float time,  
the photodiode switches back into the receive path of the  
ADPD1080/ADPD1081 and an inrush of the accumulated  
charge occurs, which is subsequently integrated by the integrator  
of the ADPD1080/ADPD1081, allowing the maximum amount  
of charge to be processed per pulse with the minimum amount  
of noise added by the signal path. The charge is integrated  
externally on the capacitance of the photodiode for as long as  
it takes to acquire maximum charge, independent of the  
amplifiers of the signal path, which adds noise to the signal.  
At Point A, the photodiode is disconnected from the  
receive path. Light continues to fall on the photodiode,  
producing a charge that accumulates directly on the  
photodiode capacitance. As the charge accumulates, the  
voltage at the floating photodiode anode rises. The TIA is  
disconnected from the input to the ADPD1080/ADPD1081  
so that no current flows through the TIA, and the TIA  
output is at TIA_VREF. Just prior to Point B, the integrator  
resets to 0. In the Float Mode for Synchronous LED  
Measurements section, the LED pulses during the time  
period between Point A and Point D. Float times of <4 µs  
are not allowed.  
Amplifier and ADC noise values are constant for a given  
measurement. For optimal SNR, it is desirable to have a greater  
amount of signal (charge) per measurement. In normal mode,  
because the pulse time is fixed, the charge per measurement can  
be increased only by increasing the LED drive current. For high  
light conditions, this is sufficient. In low light conditions,  
however, there is a limit to the available current. In addition,  
high current pulses can cause ground noise in some systems.  
Green LEDs have lower efficiency at high currents, and many  
battery designs do not deliver high current pulses as efficiently.  
Float mode allows the user the flexibility to increase the  
amount of charge per measurement by either increasing the  
LED drive current or by increasing the float time. This  
At Point B, the integrator begins its positive integration  
phase. Small dc offsets between the TIA output and the  
integrator reference causes the integrator output to ramp  
up for positive offsets or ramp down for negative offsets.  
The photodiode continues to accumulate charge during  
this period.  
At Point C, the integrator begins its negative integration  
phase. This reversal in polarity begins to cancel any signal  
caused by offsets. This offset cancellation continues through  
Point F, where all offsets are cancelled completely.  
At Point D, the photodiode switches into the receive path  
where all the charge that has accumulated on the photo-  
diode capacitance during the float time is dumped into the  
TIA. The typical charge dump time is less than 2 µs. As  
the current flows through the TIA, the output of the TIA  
responds with a large negative signal. Because the integrator  
is in the negative integration phase at this point, the output  
of the integrator rises as the input current to the device  
integrates back to total charge. Between Point D and Point  
E, any light incident on the photodiode produces  
additional photocurrent, which is immediately integrated  
by the integrator as charge.  
flexibility is especially useful in low current transfer ratio (CTR)  
conditions, for example, 10 nA/mA, where normal mode  
requires multiple pulses to achieve an acceptable level of SNR.  
In float mode, the signal path bypasses the BPF and uses only  
the TIA and integrator. In normal mode, the shape of the pulse  
is known (typically either 2 µs or 3 µs) and is consistent across  
devices and conditions. The shape of the signal coming through  
the BPF is also predictable, which allows a user to align the  
integrator timing with the zero-crossing of the filtered signal.  
In float mode, the shape of the signal produced by the charge  
dump can differ across devices and conditions. A filtered signal  
cannot be reliably aligned; therefore, the BPF cannot be used.  
In float mode, the entire charge dump is integrated in the  
negative cycle of the integrator and the positive cycle cancels  
any offsets.  
At Point E, the TIA disconnects from the receive path and  
the TIA output returns to TIA_VREF. Between Point E  
and Point F, the integrator completes the negative  
integration phase and cancellation of the offsets.  
At Point F, the integrator output is held until sampled by  
the ADC.  
Rev. C | Page 47 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
25µs  
30µs  
35µs  
A
D
E
CONNECT/FLOAT  
INTEGRATOR  
B
C
F
+PHASE  
–PHASE  
CHARGE ON PD  
TIA OUTPUT  
DON’T CARE  
INTEGRATOR RESPONSE  
INTEGRATOR RESET  
ADC READ  
Figure 52. Float Mode Measurement Cycle Timing Diagram  
Float Time  
Float Mode Limitations  
The maximum amount of charge that can be stored on the  
photodiode capacitance and remain in the linear operating  
region of the sensor can be estimated by  
When using float mode, the limitations of the mode must be  
well understood. For example, a finite amount of charge can  
accumulate on the capacitance of the photodiode, and a maximum  
amount of charge that can be integrated by the integrator.  
Based on an initial reverse bias of 250 mV on the photodiode  
and assuming that the photodiode begins to become nonlinear  
at ~200 mV of forward bias, there is ~450 mV of headroom for the  
anode voltage to increase from its starting point at the beginning of  
the float time before the charge ceases to accumulate in a linear  
fashion. It is desirable to operate only in the linear region of the  
photodiode (see Figure 53). To verify that float mode is operating  
in the linear region of the diode, the user can perform a simple  
check. Record data at a desired float time and then record data  
at half the float time. The ratio of the two received signals  
should be 2:1. If this ratio does not hold true, the diode is likely  
beginning to forward bias at the longer float time and becomes  
nonlinear.  
Q = CV  
where:  
Q is the integrated charge.  
C is the capacitance of the photodiode.  
V is the amount of voltage change across the photodiode before  
the photodiode becomes nonlinear.  
For a typical discrete optical design using a 7 mm2 photodiode  
with 70 pF capacitance and 450 mV of headroom, the maximum  
amount of charge that can be stored on the photodiode  
capacitance is 31.5 pC.  
In addition, consider the maximum amount of charge the  
integrator of the ADPD1080/ADPD1081 can integrate. The  
integrator can integrate up to 7.6 pC. When this charge is referred  
back to the input, consider the TIA gain. When the TIA gain is  
at 200 kΩ, the input referred charge is at a 1:1 ratio to the  
integrated charge on the integrator. For 100 kΩ gain, it is 2:1;  
for 50 kΩ gain, it is 4:1; and for 25 kΩ gain, it is 8:1. For the  
previous example using a photodiode with 70 pF capacitance,  
use 50 kΩ TIA gain and set the float timing such that, for a single  
pulse, the output of the ADC is at 70% of full scale, which is a  
typical operating condition. Under these operating conditions,  
5.3 pC integrates per pulse by the integrator for 21.2 pC of charge  
accumulated on the photodiode capacitance. For small CTR,  
however, it can take a long time to accumulate 21.2 pC of charge  
on the photodiode capacitance, in which case, use higher TIA  
gains according to how much charge can be accumulated in a  
PD BEGINS TO  
FORWARD BIAS  
RECOMMENDED  
FLOAT MODE  
OPERATING REGION  
FLOAT TIME (µs)  
Figure 53. Transfer Function of Integrated Charge on the Photodiode vs.  
Rev. C | Page 48 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
given amount of time. Ultimately, the type of measurement  
being made (ambient or pulsed LED), the photodiode capacitance,  
and the CTR of the system determine the float times.  
shorter than the second pulse. After the two measurements are  
taken, Measurement 1 is subtracted from Measurement 2,  
which effectively cancels out any offset and drift common to  
both measurements. What is left is an ambient light  
Float Mode for Ambient Light Measurements  
measurement based on an amount of charge that is integrated  
over a time that is the difference of the first and second float  
times. For example, if Float Time 1 is 6 µs and Float Time 2 is  
26 µs, the ambient light measurement is based on 20 µs of  
charge integrated on the photodiode capacitance with any  
offset and drift removed. In float mode for ambient light, the  
number of pulses must be set to two to cancel drifts and offsets  
because only the first pulse can be short. More than two pulses  
can be used; however, pulses two through n are always the same  
length. If drift cancellation is not required, any number of  
pulses can be used and added together. Figure 54 shows an  
example of float ambient mode timing, and Table 31 details the  
relevant registers that must be configured.  
Float mode is used for ambient light measurements where the  
background light is sufficiently small. Use TIA ADC mode for  
ambient light measurements of higher intensities. Small amounts  
of light can be measured with adequate float times, allowing the  
incoming charge to accumulate to levels large enough to be  
measured above the noise floor of the system. The source of  
this light can be any combination of synchronous light (for  
example, from a pulsed LED) and asynchronous light (that is,  
background). If there is no system generated light source, the  
measurement is simply a measure of the background light.  
Use a two pulse differential measurement technique to cancel  
out electrical drifts and offsets. Take two measurements, each  
of a different float time. The first float time is considerably  
REGISTER 0x59, BITS[12:8]/  
REGISTER 0x5E, BITS[12:8]  
PRECONDITION TIME  
REGISTER 0x30, BITS[12:8]/  
REGISTER 0x35, BITS[12:8]  
CHARGE DUMP TIME  
FLOAT 1 TIME  
(FLT_RPRECON_x)  
(SLOTx_LED_WIDTH)  
CONNECT/FLOAT  
REGISTER 0x30 BITS[7:0]/REGISTER 0x35, BITS[7:0]  
TIME TO FIRST CHARGE DUMP  
REGISTER 0x31, BITS[7:0]/  
REGISTER 0x36, BITS[7:0]  
(SLOTx_LED OFFSET)  
FLOAT 2 TIME (SLOTx_PERIOD)  
INTEGRATOR SEQUENCE  
REGISTER 0x39, BITS[15:11]/  
REGISTER 0x3B, BITS[15:11]  
INTEGRATION TIME (SLOTx_AFE_WIDTH)  
ACCUMULATED  
CHARGE ON PD  
Figure 54. Example of Float Ambient Mode Timing  
Table 31. Float Ambient Mode Registers  
Register  
Time Slot B  
0x14, Bits[3:2]  
Group  
Register Name  
Time Slot A  
Float Mode Description  
Float Mode  
Operation  
SLOTx_LED_SEL  
0x14, Bits[1:0]  
Set to 0 to enable float mode.  
FLT_EN_x  
0x5E, Bits[14:13] 0x59, Bits[14:13] Set to 3 to enable float between connect pulses.  
FLT_MATH12_x  
SLOTx_AFE_CFG  
SLOTx_TIA_VREF  
SLOTx_V_CATHODE  
0x58, Bits[2:1]  
0x43, Bits[15:0]  
0x42, Bits[5:4]  
0x54, Bits[9:8]  
0x58, Bits[6:5]  
0x45, Bits[15:0]  
0x44, Bits[5:4]  
Set to 2 to subtract first pulse and add second pulse.  
Set to 0xAE65 for TIA and integrator, bypass BPF.  
Set to 2 for TIA_VREF = 0.9 V.  
0x54, Bits[11:10] Set to 2 for 250 mV reverse bias on the photodiode at  
the precondition.  
REG54_VCAT_ENABLE 0x54, Bit 7  
0x54, Bit 7  
Set to 1 to override Register 0x3C cathode voltage  
settings.  
Rev. C | Page 49 of 74  
 
 
ADPD1080/ADPD1081  
Data Sheet  
Register  
Group  
Register Name  
Time Slot A  
Time Slot B  
Float Mode Description  
Float Mode  
Timing  
FLT_PRECON_x  
0x5E, Bits[12:8]  
0x59, Bits[12:8]  
Precondition time (to start of Float 1 time).  
SLOTx_PERIOD  
SLOTx_PERIOD  
SLOTx_LED_WIDTH  
0x31, Bits[7:0]  
0x37, Bits[1:0]  
0x30, Bits[12:8]  
0x36, Bits[7:0]  
0x37, Bits[9:8]  
0x35, Bits[12:8]  
8 LSBs of float period in µs; Float 2 time = SLOTx_PERIOD  
2 MSBs of float period.  
Connect time in µs; this is the amount of time given to  
dump the accumulated charge from the photodiode  
capacitance; typically, this is set to 2 µs.  
SLOTx_LED_OFFSET  
0x30, Bits[7:0]  
0x35, Bits[7:0]  
Time to first charge dump; Float 1 time =  
(SLOTx_LED_OFFSET + SLOTx_LED_WIDTH) −  
FLT_PRECONx.  
SLOTx_AFE_WIDTH  
SLOTx_AFE_OFFSET  
0x39, Bits[15:11] 0x3B, Bits[15:11]  
Integration time in µs; set to FLT_CONNx + 1.  
Integrator start time in 31.25 ns increments; set to  
(SLOTx_LED_OFFSETx − SLOTx_AFE_WIDTH − 9.25) µs.  
0x39, Bits[10:0]  
0x3B, Bits[10:0]  
SLOTx_PULSES  
0x31, Bits[15:8]  
0x36, Bits[15:8]  
Number of pulses; set to 2 for float ambient mode.  
is present in one of the pulses. In the other, only the ambient  
light and offset is present. A subtraction of the two pulses is  
made that eliminates ambient light as well as any offset and  
drift. It is recommended to use groups of four pulses for  
measurement where the LED is flashed on Pulse 2 and Pulse 3.  
The accumulator adds Pulse 2 and Pulse 3 and then subtract  
Pulse 1 and Pulse 4. To gain additional SNR, use multiple  
groups of four pulses.  
Float Mode for Synchronous LED Measurements  
In float LED mode, photocurrent is generated from ambient  
light and pulsed LED light during the float time. Float LED  
mode is desirable in low signal conditions where the CTR is  
<10 nA/mA. In addition, float mode is a good option in  
situations where the user wants to limit the LED drive current  
of the green LEDs in a heart rate measurement to keep the  
forward voltage drop of the green LED to a level that allows the  
elimination of a boost converter for the LED supply. For  
example, the LED current can be limited to 10 mA to ensure  
that the LED voltage drop is ~3 V so that it can operate directly  
from the battery without the need of a boost converter. Float  
mode accumulates the received charge during longer LED  
pulses without adding noise from the signal path, effectively  
yielding the highest SNR and/or photon attainable.  
The settings of FLT_LED_FIRE_x, Register 0x5A, Bits[15:8]  
determine if the LED fires in which pulse position. Which pulse  
positions are added or subtracted is configured in the  
FLT_MATH12x and FLT_MATH34x bits of Register 0x58.  
These sequences are repeated in groups of four pulses. The  
value written to the FIFO or data registers is dependent on the  
total number of pulses per sample period. For example, if the  
device is setup for 32 pulses, the 4 pulse sequence, as defined in  
FLT_LED_FIRE_x and FLT_MATHxxx, repeats eight times and  
a single register or FIFO write of the final value based on 32  
pulses executes. Table 32 details the relevant registers for float  
LED mode.  
As with float ambient mode, multiple pulses cancel electrical  
offsets and drifts; however, in float LED mode, the ambient  
light must also be cancelled because only the reflected return  
from the LED pulses is desired. To achieve this ambient light  
rejection, use an even number of equal length pulses. For every  
pair of pulses, the LED flashes in one of the pulses and does not  
flash in the other. The return from the LED + ambient + offset  
Rev. C | Page 50 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
Table 32. Float LED Mode Registers  
Register Address  
Group  
Register Name  
SLOTx_LED_SEL  
FLT_EN1_x  
Time Slot A  
0x14, Bits[1:0]  
Time Slot B  
Float Mode Description  
Set to 0 to enable float mode.  
Float Mode  
Operation  
0x14, Bits[3:2]  
0x5E, Bits[14:13] 0x59, Bits[14:13] Set to 3 to enable float between connect pulses.  
FLT_MATH12_x  
FLT_MATH34_x  
SLOTx_AFE_CFG  
SLOTx_TIA_VREF  
SLOTx_V_CATHODE  
0x58, Bits[2:1]  
0x58, Bits[9:8]  
0x43, Bits[15:0]  
0x42, Bits[5:4]  
0x54, Bits[9:8]  
0x58, Bits[6:5]  
Set to 2 to subtract first pulse and add second pulse.  
0x58, Bits[11:10] Set to 1 to add third pulse and subtract fourth pulse.  
0x45, Bits[15:0]  
0x44, Bits[5:4]  
Set to 0xAE65 for TIA + integrator, bypass BPF.  
Set to 2 for TIA_VREF = 0.9 V.  
0x54, Bits[11:10] Set to 2 for 250 mV reverse bias on the photodiode at the  
precondition.  
REG54_VCAT_ENABL  
E
0x54, Bit 7  
0x54, Bit 7  
Set to 1 to override Register 0x3C cathode voltage settings.  
FLT_LED_SELECT_x  
0x3E, Bits[15:14] 0x3F[15:14]  
LED selection for float LED mode.  
00 = no LED.  
01 = LED1.  
10 = LED2.  
11 = LED3.  
Float Mode  
Timing  
FLT_PRECON_x  
SLOTx_PERIOD  
0x5E, Bits[12:8]  
0x31, Bits[7:0]  
0x59, Bits[12:8]  
0x36, Bits[7:0]  
Precondition time (to start of float 1 time).  
8 LSBs of float period in µs. Float 2 time = SLOTx_PERIOD.  
Float 2 time is valid for every pulse subsequent to the first  
pulse. Float 1 time must be set equal to Float 2 time in  
float LED mode.  
SLOTx_PERIOD  
0x37, Bits[1:0]  
0x30, Bits[12:8]  
0x37, Bits[9:8]  
0x35, Bits[12:8]  
2 MSBs of float period.  
SLOTx_LED_WIDTH  
Connect time in µs, which is the amount of time given to  
dump the accumulated charge from the photodiode  
capacitance. Typically, it is set to 2 µs.  
SLOTx_LED_OFFSET  
0x30, Bits[7:0]  
0x35, Bits[7:0]  
Time to first charge dump. Float 1 time =  
(SLOTx_LED_OFFSET + SLOTx_LED_WIDTH) –  
FLT_PRECONx. Float 1 time must be equal to Float 2 time  
for float LED mode.  
SLOTx_AFE_WIDTH  
SLOTx_AFE_OFFSET  
0x39,Bits[15:11] 0x3B, Bits[15:11]  
Integration time in µs. set to FLT_CONN + 1.  
Integrator start time in 31.25 ns increments. Set to  
(SLOTx_LED_OFFSET – SLOTx_AFE_WIDTH − 9.25) µs.  
0x39, Bits[10:0]  
0x3B, Bits[10:0]  
SLOTx_PULSES  
0x31, Bits[15:8]  
0x36, Bits[15:8]  
Number of pulses; must be set in multiples of 2,  
minimum 2.  
FLT_LED_WIDTH_x  
FLT_LED_OFFSET_x  
FLT_LED_FIRE_x  
0x3E, Bits[12:8]  
0x3E, Bits[7:0]  
0x5A, Bits[11:8]  
0x3F, Bits[12:8]  
0x3F, Bits[7:0]  
0x5A, Bits[15:12]  
LED pulse width for float LED mode in µs.  
Time of first LED pulse in float LED mode.  
In any given sequence of four pulses, fire the LED in the  
selected position. Selections are active low (that is, fire LED  
if 0). For example, in a sequence of four pulses on Time Slot B,  
Register 0x5A, Bit 12 is the first pulse, and Register 0x5A,  
Bit 15 is the fourth pulse. For a sequence of four pulses, fire  
the LED in the second and third pulses by writing 0x9 to  
Register 0x5A, Bits[15:12].  
A timing diagram for a four pulse float LED sequence for  
Time Slot B is shown in Figure 55. In this example, the device is  
set up for LED pulses of 12 µs that fall within a float period of  
16 µs, 2 µs of which are used for dumping of the accumulated  
charge on the photodiode. The integration time is set to 3 µs,  
which is 1 µs more than the charge dump time to allow timing  
margin when integrating the incoming charge. Note, there is a  
9 µs offset built into the integration start time. Consider this  
offset when setting the SLOTx_AFE_OFFSET value. As shown  
in Figure 55, the time of the first charge dump is set to 30 µs.  
SLOTx_AFE_OFFSET is set to 0x238 (17.75 µs), taking into  
account the 3 µs integration time, the 9 µs offset, and an  
additional 250 ns for edge placement margin.  
To calculate SLOTx_AFE_OFFSET, use the following equation:  
SLOTx_AFE_OFFSET = SLOTx_LED_OFFSET –  
SLOTx_AFE_WIDTH − 9.25 µs  
Placement of the integration period is such that the negative  
phase of the integration is centered on the charge dump phase.  
The TIA is an inverting stage; therefore, placing the negative  
Rev. C | Page 51 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
phase of the integration during the dumping of the charge from  
the photodiode causes the integrator to increase with the  
negative going output signal from the TIA.  
Bits[11:10] = 1 forces the device to add the second and third  
pulses while subtracting the first and fourth pulses, effectively  
cancelling out the ambient light and electrical offsets and drift.  
The LED flashes in the second and third pulses of the four pulse  
sequence. Setting Register 0x58, Bits[6:5] = 2 and Register 0x58,  
A comparison of float ambient mode vs. float LED mode is  
shown in Table 33 and Table 34.  
PRECONDITION  
REGISTER 0x36, BITS[7:0] = 0x10  
REGISTER 0x35, BITS[12:8] = 0x2  
CHARGE DUMPTIME = 2µs  
FLOAT PERIOD = 16µs  
CONNECT/FLOAT  
MASKED LED PULSE  
LED PULSES  
FLASH LED  
FLASH LED  
MASKED LED PULSE  
REGISTER 0x5A, BITS[15:12] = 0x9  
MASK PULSES 1 AND 4  
FLASH PULSES 2 AND 3  
REGISTER 0x3F, BITS[12:8] = 0xC  
LED PW = 12µs  
ACCUMULATED  
CHARGE ON PD  
INTEGRATOR  
OUTPUT  
REGISTER 0x3B,  
BITS[15:11] = 0x3  
INTEGRATOR  
SEQUENCE  
INTEGRATION TIME = 3µs  
INTEGRATOR  
RESET  
ADC READ  
t = 0  
t = 16µs, REGISTER 0x59, BITS[12:8] = 0x10  
PRECONDITIONING TIME  
t = 17µs, REGISTER 0x3F, BITS[7:0] = 0x11  
LED PULSE OFFSET  
t = 26.75µs, REGISTER 0x3B, BITS[10:0] = 0x238  
START OF INTEGRATION TIME  
t = 30µs, REGISTER 0x35, BITS[7:0] = 0x1E  
TIME OF FIRST CHARGE DUMP  
Figure 55. Example Timing Diagram of Four Pulse Float LED Mode Sequence  
Table 33. Float Ambient Mode—Measure Ambient Light Level  
Pulse Float Time Integrated Charge Calculation  
Result  
1
2
3
4
Shorter  
Longer  
Offset, Ambient 1 (shorter time) Subtract  
Offset, Ambient 1 (shorter time) Add  
Ambient Measurement = Ambient 2 – Ambient 1 (Offset Cancels)  
Not applicable Not applicable  
Not applicable Not applicable  
Not applicable  
Not applicable  
Table 34. Float LED Mode—Measurement Synchronous Reflected Light from LED  
Pulse Float Time Integrated Charge Calculation Result  
1
2
3
4
Equal  
Equal  
Equal  
Equal  
Offset + Ambient  
Subtract  
Add  
Add  
Sync LED Response = Reflected LED Return (Offset and Ambient Cancels  
Offset + Ambient + LED  
Offset + Ambient + LED  
Offset + Ambient  
Subtract  
Rev. C | Page 52 of 74  
 
 
 
Data Sheet  
ADPD1080/ADPD1081  
The user sets an ambient level threshold in the BG_THRESH  
register, which is the threshold by which the ADC result of the  
subtract cycles in float LED mode are compared against. The  
subtract cycles in float LED mode are the positions in the pulse  
sequence in which the LED pulse is masked; therefore, it is the  
background level measurement. The ADC result is equal to the  
raw ADC output minus the contents of the ADC offset register  
(Register 0x18 to Register 0x1B and Register 0x1E to Register 0x21).  
In the BG_COUNT register, the user sets a limit on the number  
of cycles that BG_THRESH is exceeded by the ADC result before  
the BG_STATUS bit is set for any particular channel. Every time  
the BG_THRESH value is exceeded by the ADC result during a  
subtract cycle, an internal counter increments. Each channel  
has its own counter. When this count exceeds the limit set in  
the BG_COUNT register, the BG_STATUS bit is set for the  
channel. The user can periodically monitor the BG_STATUS  
register to check for asserted bits. Alternatively, a GPIOx pin can  
be asserted if a BG_STATUS flag is set. See Table 35 for  
the various logical combinations of BG_STATUS flags and  
interrupts that can be brought out on a GPIOx.  
Monitoring Ambient Light Levels in Float LED Mode  
In real-world applications, it is common for the ambient light  
levels to change constantly. When using float LED mode,  
increasing the amount of ambient light can approach levels  
where the ambient light uses an unacceptable amount of  
dynamic range of the charge that can be stored on the photodiode  
capacitance. For this reason, it is required that the ambient light  
level is monitored so that configuration changes can be made  
when necessary, for example, float time, TIA gain, and  
operating mode. There are two ways to monitor ambient light  
levels. One way is to use TIA ADC mode in the alternate time  
slot and continuously monitor the ambient light level. The  
other way is to use a feature of the ADPD1080/ADPD1081  
where the ambient light level is automatically monitored in the  
background during float mode operation and is compared  
against a user-defined threshold. If the ambient light level  
exceeds this threshold by some user-defined number of times,  
the device sets a flag that can be read by the user or can be  
output to a GPIO. Table 35 lists all the registers used to  
monitor the ambient light level while in float LED mode.  
Table 35. Registers for Monitoring the Ambient Light Level in Float LED Mode  
Register  
Float Mode Register Name  
Time Slot A  
Time Slot B  
Description  
BG_STATUS_x  
0x04, Bits[3:0]  
0x04, Bits[7:4]  
Status of comparison between background light level and background  
threshold value (BG_THRESH). A 1 in any bit location means the threshold  
has been crossed BG_COUNT number of times. This register is cleared once  
it is read.  
Bit 0: Time Slot A, Channel 1 exceeded threshold count.  
Bit 1: Time Slot A, Channel 2 exceeded threshold count.  
Bit 2: Time Slot A, Channel 3 exceeded threshold count.  
Bit 3: Time Slot A, Channel 4 exceeded threshold count.  
Bit 4: Time Slot B, Channel 1 exceeded threshold count.  
Bit 5: Time Slot B, Channel 2 exceeded threshold count.  
Bit 6: Time Slot B, Channel 3 exceeded threshold count.  
Bit 7: Time Slot B, Channel 4 exceeded threshold count.  
BG_THRESH_x  
BG_COUNT_x  
0x16, Bits[13:0] 0x1C[13:0]  
0x16, Bits[15:14] 0x1C[15:14]  
The background threshold that is compared against the ADC result during  
the subtract cycles during float mode. If the ADC result exceeds the value  
in this register, BG_COUNT is incremented.  
This is the number of times the ADC value exceeds the BG_THRESH value  
during the float mode subtract cycles before the BG_STATUS bit is set.  
0x0: never set BG_STATUS.  
0x1: set when BG_THRESH is exceeded 1 time.  
0x02: set when BG_THRESH is exceeded 4 times.  
0x03: set when BG_THRESH is exceeded 16 times.  
GPIO0 asserts for the following conditions:  
0x10: logical OR of BG_STATUS, Bits[3:0].  
0x1A: logical OR of BG_STATUS, Bits[7:4].  
0x1B: logical OR of BG_STATUS, Bits[7:0].  
0x1C: logical OR of BG_STATUS, Bits[7:0] and INT.  
GPIO1 asserts for the following conditions:  
0x10: logical OR of BG_STATUS, Bits[3:0].  
0x1A: logical OR of BG_STATUS, Bits[7:4].  
0x1B: logical OR of BG_STATUS, Bits[7:0].  
0x1C: logical OR of BG_STATUS, Bits[7:0] and INT.  
GPIO0_ALT_CFG  
GPIO1_ALT_CFG  
0x0B[4:0]  
0x0B[4:0]  
0x0B[12:8]  
0x0B[12:8]  
Rev. C | Page 53 of 74  
 
ADPD1080/ADPD1081  
REGISTER LISTING  
Data Sheet  
The recommended values are not shown. Only power-on reset values are shown in Table 36. The recommended values are largely  
dependent on use case.  
Table 36. Numeric Register Listing  
Bit 15  
Bit 14  
Bit 6  
Bit 13  
Bit 5  
Bit 12  
Bit 4  
Bit 11  
Bit 3  
Bit 10  
Bit 2  
Bit 9  
Bit 1  
Bit 8  
Bit 0  
Hex.  
Addr. Name  
Bits  
Bit 7  
Reset  
R/W  
0x00 Status  
[15:8]  
FIFO_SAMPLES[7:0]  
0x0000 R/W  
[7:0] Reserved  
[15:8]  
SLOTB_INT  
SLOTA_INT  
Reserved  
Reserved  
0x01 INT_MASK  
Reserved  
FIFO_INT_ 0x00FF R/W  
MASK  
[7:0] Reserved  
SLOTB_INT_ SLOTA_INT_  
MASK  
MASK  
0x02 GPIO_DRV  
0x04 BG_STATUS  
[15:8]  
[7:0]  
Reserved  
GPIO1_DRV GPIO1_POL 0x0000 R/W  
GPIO0_DRV GPIO0_POL  
0x0000 R/W  
Reserved  
GPIO0_ENA  
[15:8]  
[7:0]  
Reserved  
BG_STATUS_B[3:0]  
Reserved  
BG_STATUS_A[3:0]  
0x06 FIFO_  
THRESH  
[15:8]  
[7:0]  
FIFO_THRESH[5:0]  
0x0000 R/W  
0x0A16  
0x00C8 R/W  
0x0000  
Reserved  
REV_NUM[7:0]  
DEV_ID[7:0]  
0x08 DEVID  
[15:8]  
[7:0]  
R
0x09 I2CS_ID  
0x0A CLK_RATIO  
0x0B GPIO_CTRL  
[15:8]  
[7:0]  
ADDRESS_WRITE_KEY[7:0]  
SLAVE_ADDRESS[6:0]  
Reserved  
[15:8]  
[7:0]  
Reserved  
CLK_RATIO[11:8]  
R
CLK_RATIO[7:0]  
[15:8]  
[7:0]  
Reserved  
Reserved  
GPIO1_ALT_CFG[4:0]  
GPIO0_ALT_CFG[4:0]  
0x0000 R/W  
0x0000 R/W  
0x0D SLAVE_  
ADDRESS_  
KEY  
[15:8]  
[7:0]  
SLAVE_ADDRESS_KEY[15:8]  
SLAVE_ADDRESS_KEY[7:0]  
0x0F SW_RESET  
[15:8]  
[7:0]  
Reserved  
Reserved  
0x0000 R/W  
0x0000 R/W  
0x1000 R/W  
SW_RESET  
0x10 Mode  
[15:8]  
[7:0]  
Reserved  
Reserved  
Mode[1:0]  
0x11 SLOT_EN  
[15:8]  
Reserved  
RDOUT_  
MODE  
FIFO_  
OVRN_  
PREVENT  
Reserved  
SLOTB_  
FIFO_  
MODE[2]  
[7:0]  
SLOTB_FIFO_MODE[1:0]  
SLOTB_EN  
SLOTA_FIFO_MODE[2:0]  
FSAMPLE[15:8]  
FSAMPLE[7:0]  
Reserved  
SLOTA_EN  
0x12 FSAMPLE  
[15:8]  
[7:0]  
0x0028 R/W  
0x0541 R/W  
0x0600 R/W  
0x0000 R/W  
0x0000 R/W  
0x2000 R/W  
0x2000 R/W  
0x2000 R/W  
0x2000 R/W  
0x0000 R/W  
0x0000 R/W  
0x14 PD_LED_  
SELECT  
[15:8]  
[7:0]  
Reserved  
SLOTB_PD_SEL[3:0]  
SLOTB_LED_SEL[1:0] SLOTA_LED_SEL[1:0]  
SLOTB_NUM_AVG[2:0]  
Reserved  
BG_THRESH_A[13:8]  
SLOTA_PD_SEL[3:0]  
Reserved  
0x15 NUM_AVG  
0x16 BG_MEAS_A  
0x17 INT_SEQ_A  
[15:8]  
[7:0] Reserved  
[15:8  
SLOTA_NUM_AVG[2:0]  
BG_COUNT_A[1:0]  
[7:0]  
BG_THRESH_A[7:0]  
Reserved  
[15:8]  
[7:0]  
Reserved  
INTEG_ORDER_A[3:0]  
0x18 SLOTA_CH1_ [15:8]  
SLOTA_CH1_OFFSET[15:8]  
SLOTA_CH1_OFFSET[7:0]  
SLOTA_CH2_OFFSET[15:8]  
SLOTA_CH2_OFFSET[7:0]  
SLOTA_CH3_OFFSET[15:8]  
SLOTA_CH3_OFFSET[7:0]  
SLOTA_CH4_OFFSET[15:8]  
SLOTA_CH4_OFFSET[7:0]  
OFFSET  
[7:0]  
0x19 SLOTA_CH2_ [15:8]  
OFFSET  
[7:0]  
0x1A SLOTA_CH3_ [15:8]  
OFFSET  
[7:0]  
0x1B SLOTA_CH4_ [15:8]  
OFFSET  
[7:0]  
0x1C BG_MEAS_B  
0x1D INT_SEQ_B  
[15:8  
[7:0]  
BG_COUNT_B[1:0]  
BG_THRESH_B[13:8]  
BG_THRESH_B[7:0]  
Reserved  
[15:8]  
[7:0]  
Reserved  
INTEG_ORDER_B[3:0]  
Rev. C | Page 54 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Bit 15  
Bit 7  
Bit 14  
Bit 6  
Bit 13  
Bit 5  
Bit 12  
Bit 4  
Bit 11  
Bit 3  
Bit 10  
Bit 2  
Bit 9  
Bit 1  
Bit 8  
Bit 0  
Hex.  
Addr. Name  
Bits  
Reset  
R/W  
0x1E SLOTB_CH1_ [15:8]  
SLOTB_CH1_OFFSET[15:8]  
SLOTB_CH1_OFFSET[7:0]  
SLOTB_CH2_OFFSET[15:8]  
SLOTB_CH2_OFFSET[7:0]  
SLOTB_CH3_OFFSET[15:8]  
SLOTB_CH3_OFFSET[7:0]  
SLOTB_CH4_OFFSET[15:8]  
SLOTB_CH4_OFFSET[7:0]  
0x2000 R/W  
0x2000 R/W  
0x2000 R/W  
0x2000 R/W  
0x3000 R/W  
0x3000 R/W  
0x3000 R/W  
0x630C R/W  
0x0320 R/W  
0x0818 R/W  
0x0000 R/W  
OFFSET  
[7:0]  
0x1F SLOTB_CH2_ [15:8]  
OFFSET  
[7:0]  
0x20 SLOTB_CH3_ [15:8]  
OFFSET  
[7:0]  
0x21 SLOTB_CH4_ [15:8]  
OFFSET  
[7:0]  
0x22 ILED3_  
COARSE  
[15:8]  
Reserved  
ILED3_SCALE  
ILED3_SLEW[2:0]  
ILED1_SCALE  
Reserved  
[7:0] Reserved  
[15:8]  
ILED3_COARSE[3:0]  
Reserved  
0x23 ILED1_  
COARSE  
Reserved  
Reserved  
[7:0] Reserved  
[15:8]  
ILED1_SLEW[2:0]  
ILED2_SCALE  
ILED1_COARSE[3:0]  
Reserved  
0x24 ILED2_  
COARSE  
[7:0] Reserved  
[15:8]  
ILED2_SLEW[2:0]  
ILED3_FINE[4:0]  
Reserved  
ILED2_COARSE[3:0]  
0x25 ILED_FINE  
ILED2_FINE[4:2]  
[7:0]  
ILED2_FINE[1:0]  
Reserved  
ILED1_FINE[4:0]  
0x30 SLOTA_LED_ [15:8]  
SLOTA_LED_WIDTH[4:0]  
PULSE  
[7:0]  
SLOTA_LED_OFFSET[7:0]  
SLOTA_PULSES[7:0]  
SLOTA_PERIOD[7:0]  
0x31 SLOTA_  
NUMPULSES  
[15:8]  
[7:0]  
0x34 LED_DISABLE [15:8]  
Reserved  
SLOTB_  
LED_DIS  
SLOTA_  
LED_DIS  
[7:0]  
Reserved  
0x35 SLOTB_  
LED_PULSE  
[15:8]  
[7:0]  
Reserved  
SLOTB_LED_WIDTH[4:0]  
0x0320 R/W  
0x0818 R/W  
0x0000 R/W  
SLOTB_LED_OFFSET[7:0]  
SLOTB_PULSES[7:0]  
SLOTB_PERIOD[7:0]  
0x36 SLOTB_  
NUMPULSES  
[15:8]  
[7:0]  
0x37 ALT_PWR_  
DN  
[15:8]  
[7:0]  
CH34_DISABLE[15:13]  
CH2_DISABLE[12:10]  
SLOTB_PERIOD[9:8]  
SLOTA_PERIOD[9:8]  
Reserved  
0x38 EXT_SYNC_  
STARTUP  
[15:8]  
[7:0]  
EXT_SYNC_STARTUP[15:8]  
EXT_SYNC_STARTUP[7:0]  
0x000  
R/W  
0x39 SLOTA_AFE_ [15:8]  
SLOTA_AFE_WIDTH[4:0]  
SLOTA_AFE_OFFSET[10:8]  
0x22FC R/W  
0x22FC R/W  
0x3006 R/W  
WINDOW  
[7:0]  
SLOTA_AFE_OFFSET[7:0]  
0x3B SLOTB_AFE_ [15:8]  
SLOTB_AFE_WIDTH[4:0]  
SLOTB_AFE_OFFSET[10:8]  
SLOTB_AFE_OFFSET[7:0]  
Reserved Reserved V_CATHODE AFE_  
WINDOW  
[7:0]  
0x3C AFE_PWR_  
CFG1  
[15:8]  
Reserved  
POWER-  
DOWN[5]  
[7:0]  
AFE_POWERDOWN[4:0]  
Reserved  
Reserved  
FLT_LED_WIDTH_A[4:0]  
FLT_LED_OFFSET_A[7:0]  
0x3E SLOTA_  
FLOAT_LED  
[15:8] FLT_LED_SELECT_A[1:0]  
[7:0]  
0x0320 R/W  
0x0320 R/W  
0x1C38 R/W  
0x3F SLOTB_  
FLOAT_LED  
[15:8]  
[7:0]  
FLT_LED_SELECT_B[1:0]  
Reserved  
FLT_LED_WIDTH_B[4:0]  
FLT_LED_OFFSET_B[7:0]  
0x42 SLOTA_  
TIA_CFG  
[15:8]  
SLOTA_AFE_MODE[5:0]  
SLOTA_TIA_VREF[1:0]  
SLOTA_INT_GAIN[1:0]  
SLOTA_TIA_GAIN[1:0]  
[7:0] SLOTA_INT_  
AS_BUF  
SLOTA_TIA_  
IND_EN  
Reserved (write 0x1)  
0x43 SLOTA_  
AFE_CFG  
[15:8]  
[7:0]  
SLOTA_AFE_CFG[15:8]  
SLOTA_AFE_CFG[7:0]  
SLOTB_AFE_MODE[5:0]  
SLOTB_TIA_VREF[1:0] Reserved (write 0x1)  
0xADA5 R/W  
0x44 SLOTB_  
TIA_CFG  
[15:8]  
SLOTB_INT_GAIN[1:0] 0x1C38 R/W  
SLOTB_TIA_GAIN[1:0]  
[7:0] SLOTB_INT_  
AS_BUF  
SLOTB_  
TIA_IND_EN  
0x45 SLOTB_  
AFE_CFG  
[15:8]  
[7:0]  
SLOTB_AFE_CFG[15:8]  
0xADA5 R/W  
SLOTB_AFE_CFG[7:0]  
Reserved  
0x4B SAMPLE_CLK [15:8]  
CLK32K_  
BYP  
0x2612 R/W  
[7:0] CLK32K_EN  
[15:8]  
Reserved  
CLK32K_ADJUST[5:0]  
0x4D CLK32M_  
ADJUST  
Reserved  
CLK32M_ADJUST[7:0]  
Reserved  
0x0098 R/W  
0x2090 R/W  
[7:0]  
0x4F EXT_SYNC_  
SEL  
[15:8]  
[7:0] Reserved  
GPIO1_OE  
GPIO1_IE  
Reserved  
EXT_SYNC_SEL[1:0]  
GPIO0_IE  
Reserved  
Rev. C | Page 55 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Bit 15  
Bit 14  
Bit 6  
Bit 13  
Bit 5  
Bit 12  
Bit 4  
Bit 11  
Bit 3  
Bit 10  
Bit 2  
Bit 9  
Bit 1  
Bit 8  
Bit 0  
Hex.  
Addr. Name  
Bits  
Bit 7  
Reset  
R/W  
0x50 CLK32M_  
CAL_EN  
[15:8]  
Reserved  
0x0000 R/W  
[7:0] Reserved  
GPIO1_CTRL CLK32M_  
CAL_EN  
Reserved  
0x54 AFE_PWR_  
CFG2  
[15:8]  
Reserved  
SLEEP_V_CATHODE [1:0]  
SLOTB_V_CATHODE[1:0]  
Reserved  
SLOTA_V_CATHODE[1:0] 0x0020 R/W  
[7:0] REG54_VCAT_  
ENABLE  
0x55 TIA_INDEP_  
GAIN  
[15:8]  
Reserved  
Reserved  
SLOTB_TIA_GAIN_4[1:0]  
SLOTA_TIA_GAIN_3[1:0]  
FLT_MATH34_B[1:0]  
SLOTB_TIA_GAIN_3[1:0]  
SLOTA_TIA_GAIN_2[1:0]  
FLT_MATH34_A[1:0]  
0x0000 R/W  
0x0000 R/W  
[7:0]  
SLOTB_TIA_GAIN_2[1:0]  
SLOTA_TIA_GAIN_4[1:0]  
0x58 MATH  
[15:8]  
[7:0] ENA_INT_  
AS_BUF  
FLT_MATH12_B[1:0]  
Reserved Reserved  
FLT_MATH12_A[1:0]  
FLT_PRECON_B[4:0]  
FLT_LED_FIRE_A[3:0]  
FLT_PRECON_A[4:0]  
Reserved  
0x59 FLT_  
CONFIG_B  
[15:8] Reserved  
FLT_EN_B[1:0]  
0x0808 R/W  
0x0010 R/W  
0x0808 R/W  
0x0000 R/W  
[7:0]  
[15:8]  
[7:0]  
Reserved  
0x5A FLT_  
LED_FIRE  
FLT_LED_FIRE_B[3:0]  
FLT_EN_A[1:0]  
Reserved (write 0x10)  
0x5E FLT_  
CONFIG_A  
[15:8]  
[7:0]  
Reserved  
Reserved  
Reserved  
0x5F DATA_  
ACCESS_CTL  
[15:8]  
[7:0]  
Reserved  
SLOTB_  
DATA_  
HOLD  
SLOTA_  
DATA_  
HOLD  
DIGITAL_  
CLOCK_  
ENA  
0x60 FIFO_  
ACCESS  
[15:8]  
[7:0]  
FIFO_DATA[15:8]  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
FIFO_DATA[7:0]  
0x64 SLOTA_  
PD1_16BIT  
[15:8]  
[7:0]  
SLOTA_CH1_16BIT[15:8]  
SLOTA_CH1_16BIT[7:0]  
SLOTA_CH2_16BIT[15:8]  
SLOTA_CH2_16BIT[7:0]  
SLOTA_CH3_16BIT[15:8]  
SLOTA_CH3_16BIT[7:0]  
SLOTA_CH4_16BIT[15:8]  
SLOTA_CH4_16BIT[7:0]  
SLOTB_CH1_16BIT[15:8]  
SLOTB_CH1_16BIT[7:0]  
SLOTB_CH2_16BIT[15:8]  
SLOTB_CH2_16BIT[7:0]  
SLOTB_CH3_16BIT[15:8]  
SLOTB_CH3_16BIT[7:0]  
SLOTB_CH4_16BIT[15:8]  
SLOTB_CH4_16BIT[7:0]  
SLOTA_CH1_LOW[15:8]  
SLOTA_CH1_LOW[7:0]  
SLOTA_CH2_LOW[15:8]  
SLOTA_CH2_LOW[7:0]  
SLOTA_CH3_LOW[15:8]  
SLOTA_CH3_LOW[7:0]  
SLOTA_CH4_LOW[15:8]  
SLOTA_CH4_LOW[7:0]  
SLOTA_CH1_HIGH[15:8]  
SLOTA_CH1_HIGH[7:0]  
SLOTA_CH2_HIGH[15:8]  
SLOTA_CH2_HIGH[7:0]  
SLOTA_CH3_HIGH[15:8]  
SLOTA_CH3_HIGH[7:0]  
SLOTA_CH4_HIGH[15:8]  
SLOTA_CH4_HIGH[7:0]  
SLOTB_CH1_LOW[15:8]  
SLOTB_CH1_LOW[7:0]  
SLOTB_CH2_LOW[15:8]  
SLOTB_CH2_LOW[7:0]  
0x65 SLOTA_  
PD2_16BIT  
[15:8]  
[7:0]  
0x66 SLOTA_  
PD3_16BIT  
[15:8]  
[7:0]  
0x67 SLOTA_  
PD4_16BIT  
[15:8]  
[7:0]  
0x68 SLOTB_  
PD1_16BIT  
[15:8]  
[7:0]  
0x69 SLOTB_  
PD2_16BIT  
[15:8]  
[7:0]  
0x6A SLOTB_  
PD3_16BIT  
[15:8]  
[7:0]  
0x6B SLOTB_  
PD4_16BIT  
[15:8]  
[7:0]  
0x70 A_PD1_LOW [15:8]  
[7:0]  
0x71 A_PD2_LOW [15:8]  
[7:0]  
0x72 A_PD3_LOW [15:8]  
[7:0]  
0x73 A_PD4_LOW [15:8]  
[7:0]  
0x74 A_PD1_HIGH [15:8]  
[7:0]  
0x75 A_PD2_HIGH [15:8]  
[7:0]  
0x76 A_PD3_HIGH [15:8]  
[7:0]  
0x77 A_PD4_HIGH [15:8]  
[7:0]  
0x78 B_PD1_LOW [15:8]  
[7:0]  
0x79 B_PD2_LOW [15:8]  
[7:0]  
Rev. C | Page 56 of 74  
Data Sheet  
ADPD1080/ADPD1081  
Bit 15  
Bit 7  
Bit 14  
Bit 6  
Bit 13  
Bit 5  
Bit 12  
Bit 4  
Bit 11  
Bit 3  
Bit 10  
Bit 2  
Bit 9  
Bit 1  
Bit 8  
Bit 0  
Hex.  
Addr. Name  
Bits  
Reset  
R/W  
0x7A B_PD3_LOW [15:8]  
SLOTB_CH3_LOW[15:8]  
SLOTB_CH3_LOW[7:0]  
SLOTB_CH4_LOW[15:8]  
SLOTB_CH4_LOW[7:0]  
SLOTB_CH1_HIGH[15:8]  
SLOTB_CH1_HIGH[7:0]  
SLOTB_CH2_HIGH[15:8]  
SLOTB_CH2_HIGH[7:0]  
SLOTB_CH3_HIGH[15:8]  
SLOTB_CH3_HIGH[7:0]  
SLOTB_CH4_HIGH[15:8]  
SLOTB_CH4_HIGH[7:0]  
0x0000  
R
[7:0]  
0x7B B_PD4_LOW [15:8]  
0x0000  
0x0000  
0x0000  
0x0000  
0x0000  
R
R
R
R
R
[7:0]  
0x7C B_PD1_HIGH [15:8]  
[7:0]  
0x7D B_PD2_HIGH [15:8]  
[7:0]  
0x7E B_PD3_HIGH [15:8]  
[7:0]  
0x7F B_PD4_HIGH [15:8]  
[7:0]  
Rev. C | Page 57 of 74  
ADPD1080/ADPD1081  
Data Sheet  
LED CONTROL REGISTERS  
Table 37. LED Control Registers  
Default  
Value  
Address Data Bit  
Access  
R/W  
Name  
Description  
0x14  
[15:12]  
[11:8]  
0x0  
Reserved  
Write 0x0 to these bits for proper operation.  
0x5  
R/W  
SLOTB_PD_SEL  
PDx connection selection for Time Slot B. See the Time Slot Switch  
section for detailed descriptions.  
[7:4]  
[3:2]  
0x4  
0x0  
R/W  
R/W  
SLOTA_PD_SEL  
SLOTB_LED_SEL  
PDx connection selection for Time Slot A. See the Time Slot Switch  
section for detailed descriptions.  
Time Slot B LED configuration. These bits determine which LED is  
associated with Time Slot B.  
0x0: pulse PDx connection to AFE. Float mode and pulse connect  
mode enable.  
0x1: LEDX1 pulses during Time Slot B.  
0x2: LEDX2 pulses during Time Slot B.  
0x3: LEDX3 pulses during Time Slot B.  
[1:0]  
0x1  
R/W  
SLOTA_LED_SEL  
Time Slot A LED configuration. These bits determine which LED is  
associated with Time Slot A.  
0x0: pulse PDx connection to AFE. Float mode and pulse connect  
mode enable.  
0x1: LEDX1 pulses during Time Slot A.  
0x2: LEDX2 pulses during Time Slot A.  
0x3: LEDX3 pulses during Time Slot A.  
Write 0x0.  
0x22  
[15:14]  
13  
0x0  
0x1  
R/W  
R/W  
Reserved  
ILED3_SCALE  
LEDX3 current scale factor.  
1: 100% strength.  
0: 10% strength; sets the LEDX3 driver in low power mode.  
LEDX3 Current Scale = 0.1 + 0.9 × (Register 0x22, Bit 13).  
Write 0x1.  
12  
0x1  
0x0  
0x0  
R/W  
R/W  
R/W  
Reserved  
[11:7]  
[6:4]  
Reserved  
Write 0x0.  
ILED3_SLEW  
LEDX3 driver slew rate control. The slower the slew rate, the safer  
the performance in terms of reducing the risk of overvoltage of the  
LED driver.  
0x0: the slowest slew rate.  
0x7: the fastest slew rate.  
[3:0]  
0x0  
R/W  
ILED3_COARSE  
LEDX3 coarse current setting. Coarse current sink target value of  
LEDX3 in standard operation.  
0x0: lowest coarse setting.  
0xF: highest coarse setting.  
LED3PEAK = LED3COARSE × LED3FINE × LED3SCALE  
where:  
LED3PEAK is the LEDX3 peak target value (mA).  
LED3COARSE = 50.3 + 19.8 × (Register 0x22, Bits[3:0]).  
LED3FINE = 0.74 + 0.022 × (Register 0x25, Bits[15:11]).  
LED3SCALE = 0.1 + 0.9 × (Register 0x22, Bit 13).  
0x23  
[15:14]  
13  
0x0  
0x1  
R/W  
R/W  
Reserved  
Write 0x0.  
ILED1_SCALE  
LEDX1 current scale factor.  
1: 100% strength.  
0: 10% strength; sets the LEDX1 driver in low power mode.  
LEDX1 Current Scale = 0.1 + 0.9 × (Register 0x23, Bit 13).  
12  
0x1  
0x0  
R/W  
R/W  
Reserved  
Reserved  
Write 0x1.  
Write 0x0.  
[11:7]  
Rev. C | Page 58 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
[6:4]  
0x0  
R/W  
ILED1_SLEW  
LEDX1 driver slew rate control. The slower the slew rate, the safer  
the performance in terms of reducing the risk of overvoltage of the  
LED driver.  
0: the slowest slew rate.  
7: the fastest slew rate.  
[3:0]  
0x0  
R/W  
ILED1_COARSE  
LEDX1 coarse current setting. Coarse current sink target value of  
LEDX1 in standard operation.  
0x0: lowest coarse setting.  
0xF: highest coarse setting.  
LED1PEAK = LED1COARSE × LED1FINE × LED1SCALE  
where:  
LED1PEAK is the LEDX1 peak target value (mA).  
LED1COARSE = 50.3 + 19.8 × (Register 0x23, Bits[3:0]).  
LED1FINE = 0.74 + 0.022 × (Register 0x25, Bits[4:0]).  
LED1SCALE = 0.1 + 0.9 × (Register 0x23, Bit 13).  
0x24  
[15:14]  
13  
0x0  
0x1  
R/W  
R/W  
Reserved  
Write 0x0.  
ILED2_SCALE  
LEDX2 current scale factor.  
1: 100% strength.  
0: 40% strength; sets the LEDX2 driver in low power mode.  
LED2 Current Scale = 0.1 + 0.9 × (Register 0x24, Bit 13)  
12  
0x1  
0x0  
0x0  
R/W  
R/W  
R/W  
Reserved  
Write 0x1.  
Write 0x0.  
[11:7]  
[6:4]  
Reserved  
ILED2_SLEW  
LEDX2 driver slew rate control. The slower the slew rate, the safer  
the performance in terms of reducing the risk of overvoltage of the  
LED driver.  
0: the slowest slew rate.  
7: the fastest slew rate.  
[3:0]  
0x0  
R/W  
ILED2_COARSE  
LEDX2 coarse current setting. Coarse current sink target value of  
LEDX2 in standard operation.  
0x0: lowest coarse setting.  
0xF: highest coarse setting.  
LED2PEAK = LED2COARSE × LED2FINE × LED2SCALE  
where:  
LED2PEAK is the LEDX2 peak target value (mA).  
LED2COARSE = 50.3 + 19.8 × (Register 0x24, Bits[3:0]).  
LED2FINE = 0.74 + 0.022 × (Register 0x25, Bits[10:6]).  
LED2SCALE = 0.1 + 0.9 × (Register 0x24, Bit 13).  
0x25  
[15:11]  
[10:6]  
0xC  
0xC  
R/W  
R/W  
ILED3_FINE  
ILED2_FINE  
LEDX3 fine adjust. Current adjust multiplier for LED3.  
LEDX3 fine adjust = 0.74 + 0.022 × (Register 0x25, Bits[15:11]).  
See Register 0x22, Bits[3:0], for the full LED3 formula.  
LEDX2 fine adjust. Current adjust multiplier for LED2.  
LEDX2 fine adjust = 0.74 + 0.022 × (Register 0x25, Bits[10:6]).  
See Register 0x24, Bits[3:0], for the full LED2 formula.  
Write 0x0.  
5
0x0  
0xC  
R/W  
R/W  
Reserved  
[4:0]  
ILED1_FINE  
LEDX1 fine adjust. Current adjust multiplier for LED1.  
LEDX1 Fine Adjust = 0.74 + 0.022 × (Register 0x25, Bits[4:0]).  
See Register 0x23, Bits[3:0], for the full LED1 formula.  
Write 0x0.  
0x30  
[15:13]  
[12:8]  
[7:0]  
0x0  
R/W  
R/W  
R/W  
Reserved  
0x3  
SLOTA_LED_WIDTH  
SLOTA_LED_OFFSET  
LED pulse width (in 1 µs step) for Time Slot A.  
LED offset width (in 1 µs step) for Time Slot A.  
0x20  
Rev. C | Page 59 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
0x31  
[15:8]  
0x08  
R/W  
SLOTA_PULSES  
LED Time Slot A pulse count. nA: number of LED pulses in  
Time Slot A.  
[7:0]  
[15:10]  
9
0x18  
0x00  
0x0  
R/W  
R/W  
R/W  
SLOTA_PERIOD  
Reserved  
LED Time Slot A pulse period (in 1 µs step).  
Write 0x0.  
0x34  
SLOTB_LED_DIS  
Time Slot B LED disable. 1: disables the LED assigned to Time Slot B.  
Register 0x34 keeps the drivers active and prevents them from  
pulsing current to the LEDs. Disabling both LEDs via this register  
is often used to measure the dark level.  
Use Register 0x11 instead to enable or disable the actual time slot  
usage and not only the LED.  
8
0x0  
R/W  
SLOTA_LED_DIS  
Time Slot A LED disable. 1: disables the LED assigned to Time Slot A.  
Use Register 0x11 instead to enable or disable the actual time slot  
usage and not only the LED.  
[7:0]  
0x00  
0x0  
R/W  
R/W  
Reserved  
Write 0x00.  
0x35  
0x36  
[15:13]  
[12:8]  
[7:0]  
Reserved  
Write 0x0.  
0x3  
SLOTB_LED_WIDTH  
SLOTB_LED_OFFSET  
SLOTB_PULSES  
SLOTB_PERIOD  
LED pulse width (in 1 µs step) for Time Slot B.  
LED offset width (in 1 µs step) for Time Slot B.  
LED Time Slot B pulse count. nB: number of LED pulses in Time Slot B.  
LED Time Slot B pulse period (in 1 µs step).  
0x20  
0x08  
0x18  
[15:8]  
[7:0]  
R/W  
R/W  
AFE CONFIGURATION REGISTERS  
Table 38. AFE Global Configuration Registers  
Default  
Address  
Data Bit  
Value  
Access  
Name  
Description  
0x37  
[15:13]  
0x0  
R/W  
CH34_DISABLE  
Power-down options for Channel 3 and Channel 4 only.  
Bit 13: power down Channel 3, Channel 4 TIA op amp.  
Bit 14: power down Channel 3, Channel 4 BPF op amp.  
Bit 15: power down Channel 3, Channel 4 integrator op amp.  
Bit 10: power down Channel 2 TIA op amp.  
Bit 11: power down Channel 2 BPF op amp.  
Bit 12: power down Channel 2 integrator op amp.  
8 MSBs of LED Time Slot B pulse period.  
Write 0x000.  
[12:10]  
0x0  
R/W  
CH2_DISABLE  
[9:8]  
[7:2]  
[1:0]  
[15:14]  
[13:11]  
10  
0x0  
0x000  
0x0  
0x0  
0x6  
0x0  
0x0  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
SLOTB_PERIOD  
Reserved  
SLOTA_PERIOD  
Reserved  
8 MSBs of LED Time Slot A pulse period.  
Write 0x0.  
0x3C  
Reserved  
Write 0x6.  
Reserved  
Reserved.  
9
V_CATHODE  
0x0: 1.3 V (identical to anode voltage).  
0x1: 1.8 V (reverse bias photodiode by 550 mV). This  
setting may add noise.  
[8:3]  
0x00  
R/W  
AFE_POWERDOWN  
AFE channels power-down select.  
0x0: keeps all channels on.  
Bit 3: power down Channel 1 TIA op amp.  
Bit 4: power down Channel 1 BPF op amp.  
Bit 5: power down Channel 1 integrator op amp.  
Bit 6: power down Channel 2, Channel 3, and Channel 4  
TIA op amp.  
Bit 7: power down Channel 2, Channel 3, and Channel 4  
BPF op amp.  
Bit 8: power down Channel 2, Channel 3, and Channel 4  
integrator op amp.  
[2:0]  
0x6  
R/W  
Reserved  
Write 0x6.  
Rev. C | Page 60 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address  
Data Bit  
Access  
R/W  
Name  
Description  
0x54  
[15:14]  
[13:12]  
0x0  
0x0  
Reserved  
Write 0x0.  
R/W  
SLEEP_V_CATHODE  
If Bit 7 = 1; this setting is applied to the cathode voltage  
while the device is in sleep mode.  
0x0: VDD.  
0x1: AFE VREF during idle, VDD during sleep.  
0x2: floating.  
0x3: 0.0 V.  
[11:10]  
[9:8]  
7
0x0  
0x0  
0x0  
R/W  
R/W  
R/W  
SLOTB_V_CATHODE  
SLOTA_V_CATHODE  
REG54_VCAT_ENABLE  
If Bit 7 = 1; this setting is applied to the cathode voltage  
while the device is in Time Slot B operation. The anode  
voltage is determined by Register 0x44, Bits[5:4].  
0x0: VDD (1.8 V).  
0x1: equal to PD anode voltage.  
0x2: sets a reverse PD bias of ~250 mV (recommended  
setting).  
0x3: 0.0 V (this forward biases a diode at the input).  
If Bit 7 = 1; this setting is applied to the cathode voltage  
while the device is in Time Slot A operation. The anode  
voltage is determined by Register 0x42, Bits[5:4].  
0x0: VDD (1.8 V).  
0x1: equal to PD anode voltage.  
0x2: sets a reverse PD bias of ~250 mV (recommended  
setting).  
0x3: 0.0 V (this forward biases a diode at the input).  
0: use the cathode voltage settings defined by Register 0x3C,  
Bit 9.  
1: override Register 0x3C, Bit 9 with cathode settings  
defined by Register 0x54, Bits[13:8].  
[6:0]  
0x20  
0x0  
R/W  
R/W  
R/W  
Reserved  
Reserved.  
Write 0x0.  
0x55  
[15:12]  
[11:10]  
Reserved  
0x0  
SLOTB_TIA_GAIN_4  
TIA gain for Time Slot B, Channel 4 when Register 0x44,  
Bit 6 = 1.  
0: 200 kΩ.  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
[9:8]  
[7:6]  
[5:4]  
0x0  
0x0  
0x0  
R/W  
R/W  
R/W  
SLOTB_TIA_GAIN_3  
SLOTB_TIA_GAIN_2  
SLOTA_TIA_GAIN_4  
TIA gain for Time Slot B, Channel 3 when Register 0x44,  
Bit 6 = 1.  
0: 200 kΩ  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
TIA gain for Time Slot B, Channel 2 when Register 0x44,  
Bit 6 = 1.  
0: 200 kΩ  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
TIA gain for Time Slot A, Channel 4 when Register 0x42,  
Bit 6 = 1.  
0: 200 kΩ  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
Rev. C | Page 61 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Value  
Address  
Data Bit  
Access  
Name  
Description  
[3:2]  
0x0  
R/W  
SLOTA_TIA_GAIN_3  
TIA gain for Time Slot A, Channel 3 when Register 0x42,  
Bit 6 = 1.  
0: 200 kΩ  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
[1:0]  
0x0  
R/W  
SLOTA_TIA_GAIN_2  
TIA gain for Time Slot A, Channel 2 when Register 0x42,  
Bit 6 = 1.  
0: 200 kΩ  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
Table 39. AFE Configuration Registers, Time Slot A  
Default  
Address Data Bit  
Value  
0x000  
0x0  
Access Name  
Description  
0x17  
[15:4]  
[3:0]  
R/W  
R/W  
Reserved  
Write 0x000  
INTEG_ORDER_A  
Integration sequence order for Time Slot A. Each bit  
corresponds to the polarity of the integration sequence of a  
single pulse in a four-pulse sequence. Bit 0 controls the  
integration sequence of Pulse 1, Bit 1 controls Pulse 2, Bit 2  
controls Pulse 3, and Bit 3 controls Pulse 4. After four pulses,  
the sequence repeats.  
0: normal integration sequence.  
1: reversed integration sequence.  
AFE integration window width (in 1 µs step) for Time Slot A.  
AFE integration window offset for Time Slot A in 31.25 ns steps.  
Set to 0x07.  
0x39  
0x42  
[15:11]  
[10:0]  
[15:10]  
[9:8]  
0x4  
R/W  
R/W  
R/W  
R/W  
SLOTA_AFE_WIDTH  
SLOTA_AFE_OFFSET  
SLOTA_AFE_MODE  
SLOTA_INT_GAIN  
0x2FC  
0x07  
0x0  
For normal mode,  
00: RINT = 400 kΩ.  
01: RINT = 200 kΩ.  
10: RINT = 100 kΩ.  
For TIA ADC mode with integrator configured as buffer,  
00: integrator as buffer gain = 1.0.  
01: integrator as buffer gain = 1.0.  
10: integrator as buffer gain = 0.7.  
0: normal integrator configuration.  
7
6
0x0  
0x0  
R/W  
R/W  
SLOTA_INT_AS_BUF  
SLOTA_TIA_IND_EN  
1: converts integrator to buffer amplifier (used in TIA ADC  
mode only).  
Enable Time Slot A TIA gain individual settings. When it is  
enabled, the Channel 1 TIA gain is set via Register 0x42,  
Bits[1:0], and the Channel 2 through Channel 4 TIA gain is  
set via Register 0x55, Bits[5:0].  
0: disable TIA gain individual setting.  
1: enable TIA gain individual setting.  
Set VREF of the TIA for Time Slot A.  
0: 1.14 V.  
1: 1.01 V.  
2: 0.90 V.  
[5:4]  
[3:2]  
0x3  
0x2  
R/W  
R/W  
SLOTA_TIA_VREF  
Reserved  
3: 1.27 V (default recommended).  
Reserved. Write 0x1.  
Rev. C | Page 62 of 74  
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address Data Bit  
Access Name  
R/W SLOTA_TIA_GAIN  
Description  
[1:0]  
0x0  
Transimpedance amplifier gain for Time Slot A. When  
SLOTA_TIA_IND_EN is enabled, this value is for Time Slot B,  
Channel 1 TIA gain. When this bit is disabled, it is for all four  
Time Slot A channel, TIA gain settings.  
0: 200 kΩ.  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
0x43  
[15:0]  
0xADA5 R/W  
SLOTA_AFE_CFG  
AFE connection in Time Slot A.  
0xADA5: analog full path mode (TIA_BPF_INT_ADC).  
0xAE65: TIA ADC mode (must set Register 0x42, Bit 7 = 1  
and Register 0x58, Bit 7 = 1).  
0xB065: TIA ADC mode (if Register 0x42, Bit 7 = 0).  
Others: reserved.  
Table 40. AFE Configuration Registers, Time Slot B  
Default  
Address Data Bit  
Value  
0x000  
0x0  
Access  
R/W  
Name  
Description  
0x1D  
[15:4]  
[3:0]  
Reserved  
Write 0x000  
R/W  
INTEG_ORDER_B  
Integration sequence order for Time Slot B. Each bit corresponds  
to the polarity of the integration sequence of a single pulse in a  
four-pulse sequence. Bit 0 controls the integration sequence of  
Pulse 1, Bit 1 controls Pulse 2, Bit 2 controls Pulse 3, and Bit 3  
controls Pulse 4. After four pulses, the sequence repeats.  
0: normal integration sequence.  
1: reversed integration sequence  
AFE integration window width (in 1 µs step) for Time Slot B.  
AFE integration window offset for Time Slot B in 31.25 ns steps.  
Set to 0x07.  
0x3B  
0x44  
[15:11]  
[10:0]  
[15:10]  
[9:8]  
0x04  
0x17  
0x07  
0x0  
R/W  
R/W  
R/W  
R/W  
SLOTB_AFE_WIDTH  
SLOTB_AFE_OFFSET  
SLOTB_AFE_MODE  
SLOTB_INT_GAIN  
For normal mode,  
00: RINT = 400 kΩ.  
01: RINT = 200 kΩ.  
10: RINT = 100 kΩ.  
For TIA ADC mode with integrator configured as buffer,  
00: integrator as buffer gain = 1.0.  
01: integrator as buffer gain = 1.0.  
10: integrator as buffer gain = 0.7.  
0: normal integrator configuration.  
1: convert integrator to buffer amplifier (used in TIA ADC mode only).  
7
6
0x0  
0x0  
R/W  
R/W  
SLOTB_INT_AS_BUF  
SLOTB_TIA_IND_EN  
Enable Time Slot B TIA gain individual settings. When it is  
enabled, the Channel 1 TIA gain is set via Register 0x44, Bits[1:0],  
and the Channel 2 through Channel 4 TIA gain is set via Register  
0x55, Bits[11:6].  
0: disable TIA gain individual setting.  
1: enable TIA gain individual setting.  
Set VREF of the TIA for Time Slot B.  
0: 1.14 V.  
1: 1.01 V.  
2: 0.90 V.  
[5:4]  
[3:2]  
0x3  
0x2  
R/W  
R/W  
SLOTB_TIA_VREF  
Reserved  
3: 1.27 V (default recommended).  
Write 0x1.  
Rev. C | Page 63 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
[1:0]  
0x0  
R/W  
SLOTB_TIA_GAIN  
Transimpedance amplifier gain for Time Slot B. When SLOTB_TIA_  
IND_EN is enabled, this value is for Time Slot B, Channel 1 TIA gain.  
When SLOTB_TIA_IND_EN is disabled, it is for all four Time Slot B  
channel TIA gain settings.  
0: 200 kΩ.  
1: 100 kΩ.  
2: 50 kΩ.  
3: 25 kΩ.  
0x45  
[15:0]  
0xADA5 R/W  
SLOTB_AFE_CFG  
AFE connection in Time Slot B.  
0xADA5: analog full path mode (TIA_BPF_INT_ADC).  
0xAE65: TIA ADC mode (must set Register 0x44, Bit 7 = 1 and  
Register 0x58, Bit 7 = 1).  
0xB065: TIA ADC mode (if Register 0x44, Bit 7 = 0).  
Others: reserved.  
FLOAT MODE REGISTERS  
Table 41. Float Mode Registers  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
0x04  
[15:8]  
[7:4]  
0x0  
R
R
Reserved  
BG_STATUS_B  
Not applicable.  
0x0  
Status of comparison between background light level and  
background threshold value for Time Slot B (BG_THRESH_B). A 1  
in any bit location means the threshold has been crossed  
BG_COUNT_B number of times. This register is cleared after it is read.  
Bit 4: Time Slot B, Channel 1 exceeded threshold count.  
Bit 5: Time Slot B, Channel 2 exceeded threshold count.  
Bit 6: Time Slot B, Channel 3 exceeded threshold count.  
Bit 7: Time Slot B, Channel 4 exceeded threshold count.  
[3:0]  
0x0  
R
BG_STATUS_A  
Status of comparison between background light level and  
background threshold value for Time Slot A (BG_THRESH_A).  
A 1 in any bit location means the threshold has been crossed  
BG_COUNT_A number of times. This register is cleared once it is  
read.  
Bit 0: Time Slot A, Channel 1 exceeded threshold count.  
Bit 1: Time Slot A, Channel 2 exceeded threshold count.  
Bit 2: Time Slot A, Channel 3 exceeded threshold count.  
Bit 3: Time Slot A, Channel 4 exceeded threshold count.  
0x16  
[15:14]  
0x0  
R/W  
BG_COUNT_A  
For Time Slot A, this is the number of times the ADC value  
exceeds the BG_THRESH_A value during the float mode subtract  
cycles before the BG_STATUS_A bit is set.  
0: never set BG_STATUS_A.  
1: set when BG_THRESH_A is exceeded 1 time.  
2: set when BG_THRESH_A is exceeded 4 times.  
3: set when BG_THRESH_A is exceeded 16 times.  
[13:0]  
0x0  
0x0  
R/W  
R/W  
BG_THRESH_A  
BG_COUNT_B  
The background threshold for Time Slot A that is compared  
against the ADC result during the subtract cycles during float  
mode. If the ADC result exceeds the value in this register,  
BG_COUNT_A is incremented.  
0x1C  
[15:14]  
For Time Slot B, this is the number of times the ADC value  
exceeds the BG_THRESH_B value during the float mode subtract  
cycles before the BG_STATUS_B bit is set.  
0: never set BG_STATUS_B.  
1: set when BG_THRESH_B is exceeded 1 time.  
2: set when BG_THRESH_B is exceeded 4 times.  
3: set when BG_THRESH_B is exceeded 16 times.  
Rev. C | Page 64 of 74  
 
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
[13:0]  
0x0  
R/W  
BG_THRESH_B  
The background threshold for Time Slot B that is compared  
against the ADC result during the subtract cycles during float  
mode. If the ADC result exceeds the value in this register,  
BG_COUNT_B is incremented.  
0x3E  
0x3F  
0x58  
[15:14]  
0x0  
R/W  
FLT_LED_SELECT_A  
Time Slot A LED selection for float LED mode.  
0: no LED selected.  
1: LED1.  
2: LED2.  
3: LED3.  
13  
0
R/W  
R/W  
R/W  
R/W  
Reserved  
Write 0x0.  
[12:8]  
[7:0]  
0x03  
0x20  
0x0  
FLT_LED_WIDTH_A  
FLT_LED_OFFSET_A  
FLT_LED_SELECT_B  
Time Slot A LED pulse width for LED float mode in 1 µs steps.  
Time to first LED pulse in float mode for Time Slot A.  
[15:14]  
Time Slot B LED selection for float LED mode.  
0: no LED selected.  
1: LED1.  
2: LED2.  
3: LED3.  
13  
0
R/W  
R/W  
R/W  
R/W  
R/W  
Reserved  
Write 0x0.  
[12:8]  
[7:0]  
0x03  
0x20  
0x0  
0x0  
FLT_LED_WIDTH_B  
FLT_LED_OFFSET_B  
Reserved  
Time Slot B LED pulse width for LED float mode in 1 µs steps.  
Time to first LED pulse in Float mode for Time Slot A.  
Reserved.  
[15:12]  
[11:10]  
FLT_MATH34_B  
Time Slot B control for adding and subtracting Sample 3 and  
Sample 4 in a 4 pulse sequence (or any multiple of 4 pulses, for  
example, Sample 15 and Sample 16 in a 16-pulse sequence).  
00: add third and fourth.  
01: add third and subtract fourth.  
10: subtract third and add fourth.  
11: subtract third and fourth.  
[9:8]  
0x0  
R/W  
FLT_MATH34_A  
Time Slot A control for adding and subtracting Sample 3 and  
Sample 4 in a 4 pulse sequence (or any multiple of 4 pulses, for  
example, Sample 15 and Sample 16 in a 16-pulse sequence).  
00: add third and fourth.  
01: add third and subtract fourth.  
10: subtract third and add fourth.  
11: subtract third and fourth.  
7
0x0  
0x0  
R/W  
R/W  
ENA_INT_AS_BUF  
FLT_MATH12_B  
Set to 1 to enable the configuration of the integrator as a buffer in  
TIA ADC mode.  
[6:5]  
Time Slot B control for adding and subtracting Sample 1 and  
Sample 2 in a 4 pulse sequence (or any multiple of 4 pulses, for  
example, Sample 13 and Sample 14 in a 16-pulse sequence).  
00: add first and second.  
01: add first and subtract second.  
10: subtract first and add second.  
11: subtract first and second.  
Write 0x0.  
[4:3]  
[2:1]  
0x0  
0x0  
R/W  
R/W  
Reserved  
FLT_MATH12_A  
Time Slot A control for adding and subtracting Sample 1 and  
Sample 2 in a 4 pulse sequence (or any multiple of 4 pulses, for  
example, Sample 13 and Sample 14 in a 16-pulse sequence).  
00: add first and second.  
01: add first and subtract second.  
10: subtract first and add second.  
11: subtract first and second.  
Write 0x0.  
0
0x0  
R/W  
Reserved  
Rev. C | Page 65 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Value  
Address Data Bit  
Access  
R/W  
Name  
Description  
0x59  
15  
0x0  
Reserved  
FLT_EN_B  
Write 0x0.  
[14:13]  
0x0  
R/W  
0: default setting, float disabled for Time Slot B.  
1: reserved.  
2: reserved.  
3: enable float mode.  
[12:8]  
0x08  
R/W  
FLT_PRECON_B  
Float mode preconditioning time for Time Slot B. Time to start of  
first float time, which is typically 16 µs.  
[7:0]  
0x08  
0x0  
R/W  
R/W  
Reserved  
Write 0x08.  
0x5A  
[15:12]  
FLT_LED_FIRE_B  
In any given sequence of four pulses, fire the LED in the selected  
position by writing a zero into that pulse position. Mask the LED  
pulse (that is, do not fire LED) by writing a 1 into that position. In a  
sequence of four pulses on Time Slot B, Register 0x5A, Bit 12, is  
the first pulse, Bit 13 is the second pulse, Bit 14 is the third pulse,  
and Bit 15 is the fourth pulse.  
[11:8]  
0x0  
R/W  
FLT_LED_FIRE_A  
In any given sequence of four pulses, fire the LED in the selected  
position by writing a zero into that pulse position. Mask the LED  
pulse (that is, do not fire LED) by writing a 1 into that position. In a  
sequence of four pulses on Time Slot A, Register 0x5A, Bit 8, is the  
first pulse, Bit 9 is the second pulse, Bit 10 is the third pulse, and  
Bit 11 is the fourth pulse.  
[7:0]  
15  
0x10  
0x0  
R/W  
R/W  
R/W  
Reserved  
Reserved  
FLT_EN_A  
Write 0x10.  
0x5E  
Write 0x0.  
[14:13]  
0x0  
0: default setting, float disabled for Time Slot A.  
1: reserved  
2: reserved  
3: enable float mode in Time Slot A.  
[12:8]  
[7:0]  
0x08  
0x08  
R/W  
R/W  
FLT_PRECON_A  
Reserved  
Float mode preconditioning time for Time Slot A. Time to start of  
first float time, which is typically 16 µs.  
Write 0x08.  
SYSTEM REGISTERS  
Table 42. System Registers  
Default  
Address Data Bit  
Value  
Access  
Name  
Description  
0x00  
[15:8]  
0x00  
R/W  
FIFO_SAMPLES  
FIFO status. Number of available bytes to be read from the FIFO.  
When comparing this to the FIFO length threshold (Register 0x06,  
Bits[13:8]), note that the FIFO status value is in bytes and the FIFO  
length threshold is in words, where one word = two bytes.  
Write 1 to Bit 15 to clear the contents of the FIFO.  
Write 0x1 to clear this bit to 0x0.  
7
6
0x0  
0x0  
R/W  
R/W  
Reserved  
SLOTB_INT  
Time Slot B interrupt. Describes the type of interrupt event. A 1  
indicates an interrupt of a particular event type has occurred. Write  
a 1 to clear the corresponding interrupt. After clearing, the register  
goes to 0. Writing a 0 to this register has no effect.  
5
0x0  
R/W  
SLOTA_INT  
Time Slot A interrupt. Describes the type of interrupt event. A 1  
indicates an interrupt of a particular event type has occurred. Write a  
1 to clear the corresponding interrupt. After clearing, the register  
goes to 0. Writing a 0 to this register has no effect.  
[4:0]  
[15:9]  
8
0x00  
0x00  
0x1  
R/W  
R/W  
R/W  
Reserved  
Write 0x1F to clear these bits to 0x00.  
Write 0x00.  
0x01  
Reserved  
FIFO_INT_MASK  
Sends an interrupt when the FIFO data length has exceeded the  
FIFO length threshold in Register 0x06, Bits[13:8]. A 0 enables the  
interrupt.  
Rev. C | Page 66 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address Data Bit  
Access  
R/W  
Name  
Description  
7
6
0x1  
0x1  
Reserved  
Write 0x1.  
R/W  
SLOTB_INT_MASK  
Sends an interrupt on the Time Slot B sample. Write a 1 to disable  
the interrupt. Write a 0 to enable the interrupt.  
5
0x1  
R/W  
SLOTA_INT_MASK  
Sends an interrupt on the Time Slot A sample. Write a 1 to disable  
the interrupt. Write a 0 to enable the interrupt.  
[4:0]  
0x1F  
0x00  
0x0  
R/W  
R/W  
R/W  
Reserved  
Reserved  
GPIO1_DRV  
Write 0x1F.  
0x02  
[15:10]  
9
Write 0x0000.  
GPIO1 drive.  
0: the GPIO1 pin is always driven.  
1: the GPIO1 pin is driven when the interrupt is asserted; otherwise,  
it is left floating and requires a pull-up or pull-down resistor,  
depending on polarity (operates as open drain). Use this setting if  
multiple devices must share the GPIO1 pin.  
8
0x0  
R/W  
GPIO1_POL  
GPIO1 polarity.  
0: the GPIO1 pin is active high.  
1: the GPIO1 pin is active low.  
Write 0x00.  
[7:3]  
2
0x00  
0x0  
R/W  
R/W  
Reserved  
GPIO0_ENA  
GPIO0 pin enable.  
0: disable the GPIO0 pin. The GPIO0 pin floats, regardless of  
interrupt status. The status register (Address 0x00) remains active.  
1: enable the GPIO0 pin.  
GPIO0 drive.  
0: the GPIO0 pin is always driven.  
1: the GPIO0 pin is driven when the interrupt is asserted; otherwise,  
it is left floating and requires a pull-up or pull-down resistor,  
depending on polarity (operates as open drain). Use this setting if  
multiple devices must share the GPIO0 pin.  
1
0x0  
0x0  
R/W  
GPIO0_DRV  
GPIO0_POL  
0
R/W  
GPIO0 polarity.  
0: the GPIO0 pin is active high.  
1: the GPIO0 pin is active low.  
Write 0x0.  
0x06  
[15:14]  
[13:8]  
0x0  
R/W  
R/W  
Reserved  
0x00  
FIFO_THRESH  
FIFO length threshold. An interrupt is generated when the number  
of data-words in the FIFO exceeds the value in FIFO_THRESH. The  
interrupt pin automatically deasserts when the number of data-  
words available in the FIFO no longer exceeds the value in  
FIFO_THRESH.  
[7:0]  
[15:8]  
[7:0]  
[15:8]  
[7:1]  
0
0x00  
0x0A  
0x16  
0x00  
0x64  
0x0  
R/W  
R
Reserved  
REV_NUM  
DEV_ID  
Write 0x00.  
0x08  
0x09  
Revision number.  
Device ID.  
R
W
R/W  
R
ADDRESS_WRITE_KEY Write 0xAD when writing to SLAVE_ADDRESS. Otherwise, do not access.  
SLAVE_ADDRESS  
Reserved  
I2C slave address.  
Do not access.  
Write 0x0.  
0x0A  
0x0B  
[15:12]  
[11:0]  
0x0  
R
Reserved  
0x000  
R
CLK_RATIO  
When the CLK32M_CAL_EN bit (Register 0x50, Bit 5) is set, the  
device calculates the number of 32 MHz clock cycles in two cycles of  
the 32 kHz clock. The result, nominally 2000 (0x07D0), is stored in  
the CLK_RATIO bits.  
[15:13]  
[12:8]  
0x0  
R/W  
R/W  
Reserved  
Write 0x0.  
0x00  
GPIO1_ALT_CFG  
Alternate configuration for the GPIO1 pin.  
0x00: GPIO1 is backward compatible to the ADPD103 PDSO pin  
functionality.  
0x01: interrupt function provided on GPIO1, as defined in Register 0x01.  
0x02: asserts at the start of the first time slot, deasserts at end of last  
time slot.  
Rev. C | Page 67 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Value  
Address Data Bit  
Access  
Name  
Description  
0x05: Time Slot A pulse output.  
0x06: Time Slot B pulse output.  
0x07: pulse output of both time slots.  
0x0C: output data cycle occurred for Time Slot A.  
0x0D: output data cycle occurred for Time Slot B.  
0x0E: output data cycle occurred.  
0x0F: toggles on every sample, which provides a signal at half the  
sampling rate.  
0x10: output = 0.  
0x11: output = 1.  
0x13: 32 kHz oscillator output.  
Remaining settings are not supported.  
Write 0x0.  
[7:5]  
[4:0]  
0x0  
R/W  
R/W  
Reserved  
0x00  
GPIO0_ALT_CFG  
Alternate configuration for the GPIO0 pin.  
0x0: GPIO0 is backward compatible to the ADPD103 INT pin  
functionality.  
0x1: interrupt function provided on GPIO0, as defined in Register 0x01.  
0x2: asserts at the start of the first time slot, deasserts at end of last  
time slot.  
0x5: Time Slot A pulse output.  
0x6: Time Slot B pulse output.  
0x7: pulse output of both time slots.  
0xC: output data cycle occurred for Time Slot A.  
0xD: output data cycle occurred for Time Slot B.  
0xE: output data cycle occurred.  
0xF: toggles on every sample, which provides a signal at half the  
sampling rate.  
0x10: output = 0.  
0x11: output = 1.  
0x13: 32 kHz oscillator output.  
Remaining settings are not supported.  
0x0D  
[15:0]  
0x0000 R/W  
SLAVE_ADDRESS_KEY Enable changing the I2C address using Register 0x09.  
0x04AD: enable address change always.  
0x44AD: enable address change if GPIO0 is high.  
0x84AD: enable address change if GPIO1 is high.  
0xC4AD: enable address change if both GPIO0 and GPIO1 are high.  
0x0F  
0x10  
[15:1]  
0
0x0000  
0x0  
R
Reserved  
Write 0x0000.  
R/W  
SW_RESET  
Software reset. Write 0x1 to reset the devices. This bit clears itself  
after a reset. For I2C communications, this command returns an  
acknowledge and the device subsequently returns to standby mode  
with all registers reset to the default state.  
[15:2]  
[1:0]  
0x0000 R/W  
Reserved  
Mode  
Write 0x000.  
0x0  
R/W  
Determines the operating mode of the ADPD1080/ADPD1081.  
0x0: standby.  
0x1: program.  
0x2: normal operation.  
0x11  
[15:14]  
13  
0x0  
0x0  
R/W  
R/W  
Reserved  
Reserved.  
RDOUT_MODE  
Readback data mode for extended data registers.  
0x0: block sum of N samples.  
0x1: block average of N samples.  
12  
0x1  
R/W  
FIFO_OVRN_PREVENT 0x0: wrap around FIFO, overwriting old data with new.  
0x1: new data if FIFO is not full (recommended setting).  
Rev. C | Page 68 of 74  
Data Sheet  
ADPD1080/ADPD1081  
Default  
Value  
Address Data Bit  
Access  
R/W  
Name  
Description  
[11:9]  
[8:6]  
0x0  
0x0  
Reserved  
Reserved.  
R/W  
SLOTB_FIFO_MODE  
Time Slot B FIFO data format.  
0: no data to FIFO.  
1: 16-bit sum of all four channels.  
2: 32-bit sum of all four channels.  
4: four channels of 16-bit sample data for Time Slot B.  
6: four channels of 32-bit extended sample data for Time Slot B.  
Others: reserved.  
The selected Time Slot B data is saved in the FIFO. Available only if  
Time Slot A has the same averaging factor, N (Register 0x15, Bits[10:8]  
= Bits[6:4]), or if Time Slot A is not saving data to the FIFO (Register 0x11,  
Bits[4:2] = 0).  
5
0x0  
0x0  
R/W  
R/W  
SLOTB_EN  
Time Slot B enable. 1: enables Time Slot B.  
Time Slot A FIFO data format.  
[4:2]  
SLOTA_FIFO_MODE  
0: no data to FIFO.  
1: 16-bit sum of all four channels.  
2: 32-bit sum of all four channels.  
4: four channels of 16-bit sample data for Time Slot A.  
6: four channels of 32-bit extended sample data for Time Slot A.  
Others: reserved.  
1
0
0x0  
0x0  
R/W  
R/W  
Reserved  
Write 0x0.  
SLOTA_EN  
Time Slot A enable. 1: enables Time Slot A.  
Write 0x4000 when EXT_SYNC_SEL is 01 or 10. Otherwise, write 0x0.  
Write 0x13.  
0x38  
0x4B  
[15:0]  
[15:9]  
8
0x0000 R/W  
EXT_SYNC_STARTUP  
Reserved  
0x13  
0x0  
R/W  
R/W  
CLK32K_BYP  
Bypass internal 32 kHz oscillator.  
0x0: normal operation.  
0x1: provide external clock on the GPIO1 pin. The user must set  
Register 0x4F, Bits[6:5] = 01 to enable the GPIO1 pin as an input.  
7
0x0  
R/W  
CLK32K_EN  
Sample clock power-up. Enables the data sample clock.  
0x0: clock disabled.  
0x1: normal operation.  
6
0x0  
R/W  
R/W  
Reserved  
Write 0x0.  
[5:0]  
0x12  
CLK32K_ADJUST  
Data sampling (32 kHz) clock frequency adjust. This register is used  
to calibrate the sample frequency of the device to achieve high  
precision on the data rate as defined in Register 0x12. Adjusts the  
sample master 32 kHz clock by 0.6 kHz per LSB. For a 100 Hz sample  
rate as defined in Register 0x12, 1 LSB of Register 0x4B, Bits[5:0], is  
1.9 Hz.  
Note that a larger value produces a lower frequency. See the Clocks  
and Timing Calibration section for more information regarding clock  
adjustment.  
00 0000: maximum frequency.  
10 0010: typical center frequency.  
11 1111: minimum frequency.  
Write 0x00.  
0x4D  
[15:8]  
[7:0]  
0x00  
0x98  
R/W  
R/W  
Reserved  
CLK32M_ADJUST  
Internal timing (32 MHz) clock frequency adjust. This register is used  
to calibrate the internal clock of the device to achieve precisely  
timed LED pulses. Adjusts the 32 MHz clock by 109 kHz per LSB.  
See the Clocks and Timing Calibration section for more information  
regarding clock adjustment.  
0000 0000: minimum frequency.  
1001 1000: default frequency.  
1111 1111: maximum frequency.  
Rev. C | Page 69 of 74  
ADPD1080/ADPD1081  
Data Sheet  
Default  
Address Data Bit  
Value  
0x20  
0x1  
Access  
R/W  
Name  
Description  
0x4F  
[15:8]  
Reserved  
Reserved  
GPIO1_OE  
GPIO1_IE  
Reserved  
EXT_SYNC_SEL  
Write 0x20.  
7
R/W  
Write 0x1.  
6
0x0  
R/W  
GPIO1 pin output enable.  
GPIO1 pin input enable.  
Write 0x1.  
5
0x0  
R/W  
4
0x1  
R/W  
[3:2]  
0x0  
R/W  
Sample sync select.  
00: use the internal 32 kHz clock with FSAMPLE to select sample  
timings.  
01: use the GPIO0 pin to trigger sample cycle.  
10: use the GPIO1 pin to trigger sample cycle.  
11: reserved.  
1
0x0  
R/W  
R/W  
R/W  
R/W  
GPIO0_IE  
Reserved  
Reserved  
GPIO1_CTRL  
GPIO0 pin input enable.  
Write 0x0.  
0
0x0  
0x50  
[15:7]  
6
0x000  
0x0  
Write 0x000.  
Controls the GPIO1 output when the GPIO1 output is enabled  
(GPIO1_OE = 0x1).  
0x0: GPIO1 output driven low.  
0x1: GPIO1 output driven by the AFE power-down signal.  
5
0x0  
R/W  
R/W  
CLK32M_CAL_EN  
As part of the 32 MHz clock calibration routine, write 1 to begin the  
clock ratio calculation. Read the result of this calculation from the  
CLK_RATIO bits in Register 0x0A.  
Reset this bit to 0 prior to reinitiating the calculation.  
[4:0]  
[15:3]  
2
0x00  
Reserved  
Write 0x0.  
0x5F  
0x0000 R/W  
Reserved  
Write 0x0000.  
0x0  
0x0  
0x0  
R/W  
R/W  
R/W  
SLOTB_DATA_HOLD  
Setting this bit prevents the update of the data registers corresponding  
to Time Slot B. Set this bit to ensure that unread data registers are not  
updated, guaranteeing a contiguous set of data from all four  
photodiode channels.  
1: hold data registers for Time Slot B.  
0: allow data register update.  
1
0
SLOTA_DATA_HOLD  
DIGITAL_CLOCK_ENA  
Setting this bit prevents the update of the data registers corresponding  
to Time Slot A. Set this bit to ensure that unread data registers are not  
updated, guaranteeing a contiguous set of data from all four  
photodiode channels.  
1: hold data registers for Time Slot A.  
0: allow data register update.  
Set to 1 in order to enable the 32 MHz clock when calibrating the  
32 MHz clock. Always disable the 32 MHz clock following the  
calibration by resetting this bit to 0.  
Rev. C | Page 70 of 74  
Data Sheet  
ADPD1080/ADPD1081  
ADC REGISTERS  
Table 43. ADC Registers  
Default  
Address Data Bits Value  
Access Name  
Description  
0x12  
[15:0]  
0x0028  
R/W  
FSAMPLE  
Sampling frequency: fSAMPLE = 32 kHz/(Register 0x12, Bits[15:0] × 4).  
For example, 100 Hz = 0x0050; 200 Hz = 0x0028.  
Write 0x0.  
0x15  
[15:11]  
[10:8]  
0x00  
0x6  
R/W  
R/W  
Reserved  
SLOTB_NUM_AVG  
Sample sum/average for Time Slot B. Specifies the averaging factor,  
NB, which is the number of consecutive samples that is summed and  
averaged after the ADC. Register 0x70 to Register 0x7F hold the data  
sum. Register 0x64 to Register 0x6B and the data buffer in Register 0x60  
hold the data average, which can be used to increase SNR without  
clipping, in 16-bit registers. The data rate is decimated by the value  
of the SLOTB_NUMB_AVG bits.  
0: 1.  
1: 2.  
2: 4.  
3: 8.  
4: 16.  
5: 32.  
6: 64.  
7: 128.  
Write 0x0.  
7
0x0  
0x0  
R/W  
R/W  
Reserved  
[6:4]  
SLOTA_NUM_AVG  
Sample sum/average for Time Slot A. NA: same as Bits[10:8] but for  
Time Slot A. See description in Register 0x15, Bits[10:8].  
[3:0]  
0x0  
R/W  
R/W  
Reserved  
Write 0x0.  
0x18  
0x19  
0x1A  
0x1B  
0x1E  
0x1F  
0x20  
0x21  
[15:0]  
0x2000  
SLOTA_CH1_OFFSET Time Slot A Channel 1 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
0x2000  
0x2000  
0x2000  
0x2000  
0x2000  
0x2000  
0x2000  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
R/W  
SLOTA_CH2_OFFSET Time Slot A Channel 2 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTA_CH3_OFFSET Time Slot A Channel 3 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTA_CH4_OFFSET Time Slot A Channel 4 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTB_CH1_OFFSET Time Slot B Channel 1 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTB_CH2_OFFSET Time Slot B Channel 2 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTB_CH3_OFFSET Time Slot B Channel 3 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
SLOTB_CH4_OFFSET Time Slot B Channel 4 ADC offset. The value to subtract from the  
raw ADC value. A value of 0x2000 is typical.  
Rev. C | Page 71 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
DATA REGISTERS  
Table 44. Data Registers  
Address  
0x60  
0x64  
0x65  
0x66  
0x67  
0x68  
0x69  
0x6A  
0x6B  
0x70  
0x71  
0x72  
0x73  
0x74  
0x75  
0x76  
0x77  
0x78  
0x79  
0x7A  
0x7B  
0x7C  
0x7D  
0x7E  
0x7F  
Data Bits  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
[15:0]  
Access  
Name  
Description  
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
FIFO_DATA  
Next available word in FIFO.  
SLOTA_CH1_16BIT  
SLOTA_CH2_16BIT  
SLOTA_CH3_16BIT  
SLOTA_CH4_16BIT  
SLOTB_CH1_16BIT  
SLOTB_CH2_16BIT  
SLOTB_CH3_16BIT  
SLOTB_CH4_16BIT  
SLOTA_CH1_LOW  
SLOTA_CH2_LOW  
SLOTA_CH3_LOW  
SLOTA_CH4_LOW  
SLOTA_CH1_HIGH  
SLOTA_CH2_HIGH  
SLOTA_CH3_HIGH  
SLOTA_CH4_HIGH  
SLOTB_CH1_LOW  
SLOTB_CH2_LOW  
SLOTB_CH3_LOW  
SLOTB_CH4_LOW  
SLOTB_CH1_HIGH  
SLOTB_CH2_HIGH  
SLOTB_CH3_HIGH  
SLOTB_CH4_HIGH  
16-bit value of Channel1 in Time Slot A.  
16-bit value of Channel 2 in Time Slot A.  
16-bit value of Channel 3 in Time Slot A.  
16-bit value of Channel 4 in Time Slot A.  
16-bit value of Channel 1 in Time Slot B.  
16-bit value of Channel 2 in Time Slot B.  
16-bit value of Channel 3 in Time Slot B.  
16-bit value of Channel 4 in Time Slot B.  
Low data-word for Channel 1 in Time Slot A.  
Low data-word for Channel 2 in Time Slot A.  
Low data-word for Channel 3 in Time Slot A.  
Low data-word for Channel 4 in Time Slot A.  
High data-word for Channel 1 in Time Slot A.  
High data-word for Channel 2 in Time Slot A.  
High data-word for Channel 3 in Time Slot A.  
High data-word for Channel 4 in Time Slot A.  
Low data-word for Channel 1 in Time Slot B.  
Low data-word for Channel 2 in Time Slot B.  
Low data-word for Channel 3 in Time Slot B.  
Low data-word for Channel 4 in Time Slot B.  
High data-word for Channel 1 in Time Slot B.  
High data-word for Channel 2 in Time Slot B.  
High data-word for Channel 3 in Time Slot B.  
High data-word for Channel 4 in Time Slot B.  
REQUIRED START-UP LOAD PROCEDURE  
The required start-up load procedure is as follows:  
1. Write to 0x1 to Register 0x4B, Bit 7 to enable the clock that  
drives the state machine.  
2. Write 0x0001 to Register 0x10 to enter program mode.  
3. Write to the other registers; the register order is not  
important while the device is in program mode.  
4. Write 0x0002 to Register 0x10 to start normal sampling  
operation.  
Rev. C | Page 72 of 74  
 
 
Data Sheet  
ADPD1080/ADPD1081  
OUTLINE DIMENSIONS  
DETAIL A  
(JEDEC 95)  
0.25  
0.20  
0.15  
4.10  
4.00 SQ  
3.90  
PIN 1  
INDICATOR  
AREA  
PIN 1  
22  
28  
IONS  
INDICATOR AR EA OP T  
(SEE DETAIL A)  
1
21  
0.40  
BSC  
2.70  
2.60 SQ  
2.50  
EXPOSED  
PAD  
15  
7
14  
8
0.45  
0.40  
0.35  
0.20 MIN  
TOP VIEW  
SIDE VIEW  
BOTTOM VIEW  
FOR PROPER CONNECTION OF  
THE EXPOSED PAD, REFER TO  
THE PIN CONFIGURATION AND  
FUNCTION DESCRIPTIONS  
0.80  
0.75  
0.70  
0.05 MAX  
0.02 NOM  
COPLANARITY  
0.08  
SECTION OF THIS DATA SHEET.  
SEATING  
PLANE  
0.20 REF  
COMPLIANT TO JEDEC STANDARDS MO-220-WGGE  
Figure 56. 28-Lead Lead Frame Chip Scale Package [LFCSP]  
4 mm × 4 mm Body and 0.75 mm Package Height  
(CP-28-5)  
Dimensions shown in millimeters  
1.44  
1.40  
1.36  
3
2
1
0.225  
A
B
C
D
E
F
BALL A1  
IDENTIFIER  
2.00  
REF  
2.50  
2.46  
2.42  
0.40  
BSC  
BOTTOM VIEW  
(BALL SIDE UP)  
TOP VIEW  
(BALL SIDE DOWN)  
0.235  
0.300  
0.330  
0.300  
0.270  
0.560  
0.500  
0.440  
END VIEW  
COPLANARITY  
0.05  
SEATING  
PLANE  
0.230  
0.200  
0.170  
0.300  
0.260  
0.220  
Figure 57. 16-Ball Wafer Level Chip Scale Package [WLCSP]  
(CB-16-18)  
Dimensions shown in millimeters  
Rev. C | Page 73 of 74  
 
ADPD1080/ADPD1081  
Data Sheet  
1.44  
1.40  
1.36  
3
2
1
A
B
C
D
E
F
BALL A1  
IDENTIFIER  
2.00  
REF  
2.50  
2.46  
2.42  
0.40  
BSC  
BOTTOM VIEW  
(BALL SIDE UP)  
TOP VIEW  
(BALL SIDE DOWN)  
0.80 REF  
0.330  
0.300  
0.270  
0.560  
0.500  
0.440  
END VIEW  
COPLANARITY  
0.05  
SEATING  
PLANE  
0.230  
0.200  
0.170  
0.300  
0.260  
0.220  
Figure 58. 17-Ball Wafer Level Chip Scale Package [WLCSP]  
(CB-17-1)  
Dimensions shown in millimeters  
ORDERING GUIDE  
Model1, 2, 3  
Temperature Range  
Package Description  
Package Option  
CP-28-5  
CP-28-5  
CP-28-5  
CB-16-18  
CB-17-1  
ADPD1080BCPZ  
−40°C to +85°C  
−40°C to +85°C  
−40°C to +105°C  
−40°C to +85°C  
−40°C to +85°C  
28-Lead Lead Frame Chip Scale Package [LFCSP]  
28-Lead Lead Frame Chip Scale Package [LFCSP]  
28-Lead Lead Frame Chip Scale Package [LFCSP]  
16-Ball Wafer Level Chip Scale Package [WLCSP]  
17-Ball Wafer Level Chip Scale Package [WLCSP]  
ADPD1080/ADPD1081 Sensor Board  
ADPD1080BCPZR7  
ADPD1080WBCPZR7  
ADPD1080BCBZR7  
ADPD1081BCBZR7  
EVAL-ADPD1081Z-PPG  
1 Z = RoHS Compliant Part.  
2 The EVAL-ADPD1081Z-PPG evaluation board is used for both the ADPD1080 and ADPD1081.  
3 To interface with the EVAL-ADPD1081Z-PPG evaluation board, customers must order separately the EVAL-ADPDUCZ microcontroller board.  
AUTOMOTIVE PRODUCTS  
The AD1080WBCPZR7 model is available with controlled manufacturing to support the quality and reliability requirements of  
automotive applications. Note that this automotive model may have specifications that differ from the commercial models; therefore  
designers should review the Specifications section of this data sheet carefully. Only the automotive grade products shown are available  
for use in automotive applications. Contact your local Analog Devices account representative for specific product ordering information  
and to obtain the specific Automotive Reliability reports for this model.  
I2C refers to a communications protocol originally developed by Philips Semiconductors (now NXP Semiconductors).  
©2018–2020 Analog Devices, Inc. All rights reserved. Trademarks and  
registered trademarks are the property of their respective owners.  
D16110-5/20(C)  
Rev. C | Page 74 of 74  
 
 
 
 
 

相关型号:

SI9130DB

5- and 3.3-V Step-Down Synchronous Converters

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135LG-T1

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135LG-T1-E3

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9135_11

SMBus Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9136_11

Multi-Output Power-Supply Controller

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130CG-T1-E3

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130LG-T1-E3

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9130_11

Pin-Programmable Dual Controller - Portable PCs

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137DB

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9137LG

Multi-Output, Sequence Selectable Power-Supply Controller for Mobile Applications

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY

SI9122E

500-kHz Half-Bridge DC/DC Controller with Integrated Secondary Synchronous Rectification Drivers

Warning: Undefined variable $rtag in /www/wwwroot/website_ic37/www.icpdf.com/pdf/pdf/index.php on line 217
-
VISHAY