0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
MAX30101EFD+

MAX30101EFD+

  • 厂商:

    AD(亚德诺)

  • 封装:

    -

  • 描述:

    Oximeter/Heart Rate Sensor I²C Output

  • 数据手册
  • 价格&库存
MAX30101EFD+ 数据手册
Click here to ask about the production status of specific part numbers. MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health General Description Benefits and Features The MAX30101 is an integrated pulse oximetry and heartrate monitor module. It includes internal LEDs, photodetectors, optical elements, and low-noise electronics ● Heart-Rate Monitor and Pulse Oximeter Sensor in LED Reflective Solution ● Tiny 5.6mm x 3.3mm x 1.55mm 14-Pin Optical Module • Integrated Cover Glass for Optimal, Robust Performance with ambient light rejection. The MAX30101 provides a complete system solution to ease the design-in process for mobile and wearable devices. The MAX30101 operates on a single 1.8V power supply and a separate 5.0V power supply for the internal LEDs. Communication is through a standard I2C-compatible interface. The module can be shut down through software with zero standby current, allowing the power rails to remain powered at all times. ● Fast Data Output Capability • High Sample Rates ● Robust Motion Artifact Resilience • High SNR Applications ● ● ● ● ● Ultra-Low-Power Operation for Mobile Devices • Programmable Sample Rate and LED Current for Power Savings • Low-Power Heart-Rate Monitor (< 1mW) • Ultra-Low Shutdown Current (0.7μA, typ) ● -40°C to +85°C Operating Temperature Range Wearable Devices Fitness Assistant Devices Smartphones Tablets Ordering Information appears at end of data sheet. System Diagram APPLICATIONS HOST (AP) ELECTRICAL MAX30101 HARDWARE FRAMEWORK DRIVER OPTICAL I2 C LED DRIVERS HUMAN SUBJECT RED/IR/GREEN LED DIGITAL NOISE CANCELLATION DATA FIFO 18-BIT CURRENT ADC AMBIENT LIGHT CANCELLATION 19-8453; Rev 3; 6/20 PHOTO DIODE PACKAGING COVER GLASS AMBIENT LIGHT MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Absolute Maximum Ratings VDD to GND........................................................... -0.3V to +2.2V GND to PGND ....................................................... -0.3V to +0.3V VLED+ to PGND .................................................... -0.3V to +6.0V All Other Pins to GND ........................................... -0.3V to +6.0V Output Short-Circuit Current Duration ........................ Continuous Continuous Input Current into Any Terminal ..................... ±20mA Continuous Power Dissipation (TA = +70°C) OESIP (derate 5.5mW/°C above +70°C) ..................................................440mW Operating Temperature Range .............................-40°C to +85°C Junction Temperature ......................................................... +90°C Soldering Temperature (reflow) ........................................ +260ºC Storage Temperature Range .............................. -40ºC to +105ºC Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. Package Information 14 OESIP Package Code F143A5+1 Outline Number 21-1048 Land Pattern Number 90-0602 THERMAL RESISTANCE, FOUR-LAYER BOARD Junction-to-Ambient (θJA) 180°C/W Junction-to-Case Thermal Resistance (θJC) 150°C/W For the latest package outline information and land patterns (footprints), go to www.maximintegrated.com/packages. Note that a “+”, “#”, or “-” in the package code indicates RoHS status only. Package drawings may show a different suffix character, but the drawing pertains to the package regardless of RoHS status. Package thermal resistances were obtained using the method described in JEDEC specification JESD51-7, using a four-layer board. For detailed information on package thermal considerations, refer to www.maximintegrated.com/ thermal-tutorial. Electrical Characteristics (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, min/max are from TA = -40°C to +85°C, unless otherwise noted. Typical values are at TA = 25°C.) (Note 1) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS Guaranteed by RED and IR count tolerance 1.7 1.8 2.0 V Guaranteed by PSRR of LED driver (RED and IR LED only) 3.1 3.3 5.0 Guaranteed by PSRR of LED driver (GREEN LED only). TA = 25°C 4.5 5.0 5.5 SpO2 and HR mode, PW = 215µs, 50sps 600 1100 IR only mode, PW = 215µS, 50sps 600 1100 TA = +25°C, MODE = 0x80 0.7 2.5 POWER SUPPLY Power-Supply Voltage LED Supply Voltage VLED+ to PGND Supply Current Supply Current in Shutdown VDD VLED+ IDD ISHDN V µA µA PULSE OXIMETRY/HEART-RATE SENSOR CHARACTERISTICS ADC Resolution www.maximintegrated.com 18 19-8453 bits Maxim Integrated | 2 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Electrical Characteristics (continued) (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, min/max are from TA = -40°C to +85°C, unless otherwise noted. Typical values are at TA = 25°C.) (Note 1) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS Red ADC Count (Note 2) REDC LED1_PA = 0x0C, LED_PW = 0x01, SPO2_SR = 0x05, ADC_RGE = 0x00 IR ADC Count (Note 2) IRC LED2_PA = 0x0C, LED_PW = 0x01, SPO2_SR = 0x05 ADC_RGE = 0x00 65536 Counts LED3_PA = LED4_PA = 0x24, LED_PW = 0x01, SPO2_SR = 0x05, ADC_RGE = 0x00 65536 Counts LED1_PA = LED2_PA = 0x00, LED_PW = 0x03, SPO2_SR = 0x01 ADC_RGE = 0x02 30 128 Counts LED1_PA = LED2_PA = 0x00, LED_PW = 0x03, SPO2_SR = 0x01 ADC_RGE = 0x03 0.01 0.05 % of FS Green ADC Count (Note 2) Dark Current Count DC Ambient Light Rejection (Note 3) ADC Count—PSRR (VDD) GRNC LED_DCC ALR PSRRVDD ADC counts with finger on sensor under direct sunlight (100K lux), ADC_RGE = 0x3, LED_PW = 0x03, SPO2_SR = 0x01 Red LED ADC counts with finger on sensor under direct sunlight (100K lux), ADC_RGE = 0x3, LED_PW = 0x03, SPO2_SR = 0x02 IR LED PSRRLED ADC Clock Frequency CLK Counts 2 1.7V < VDD < 2.0V, LED_PW = 0x00, SPO2_SR = 0x05 0.25 www.maximintegrated.com INT 3.1V < VLED+ < 5.0V, LED1_PA = LED2_PA = 0x0C, LED_PW = 0x01, SPO2_SR = 0x05 0.05 4.5V < VLED+ < 5.5V, TA = 25°C LED3_PA = LED4_PA = 0x24, LED_PW = 0x01, SPO2_SR = 0x05 0.05 % of FS LSB 1 % of FS 1 10 10.2 10.48 LED_PW = 0x00 69 LED_PW = 0x01 118 LED_PW = 0x02 215 LED_PW = 0x03 411 19-8453 1 10 Frequency = DC to 100kHz, 100mVP-P ADC Integration Time (Note 3) Counts 2 Frequency = DC to 100kHz, 100mVP-P ADC Count—PSRR (LED Driver Outputs) 65536 LSB 10.8 MHz µs Maxim Integrated | 3 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Electrical Characteristics (continued) (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, min/max are from TA = -40°C to +85°C, unless otherwise noted. Typical values are at TA = 25°C.) (Note 1) PARAMETER Slot Timing (Timing Between Sequential Channel Samples; e.g., Red Pulse Rising Edge To IR Pulse Rising Edge) SYMBOL INT CONDITIONS MIN TYP LED_PW = 0x00 427 LED_PW = 0x01 525 LED_PW = 0x02 720 LED_PW = 0x03 1107 MAX UNITS µs COVER GLASS CHARACTERISTICS (Note 3) Hydrolytic Resistance Class Per DIN ISO 719 HGB 1 IR LED CHARACTERISTICS (Note 3) LED Peak Wavelength λP ILED = 20mA, TA = +25°C Full Width at Half Max Δλ ILED = 20mA, TA = +25°C 870 880 30 900 nm Forward Voltage VF ILED = 20mA, TA = +25°C 1.4 V Radiant Power PO ILED = 20mA, TA = +25°C 6.5 mW nm RED LED CHARACTERISTICS (Note 3) LED Peak Wavelength λP ILED = 20mA, TA = +25°C 650 660 670 nm Full Width at Half Max Δλ ILED = 20mA, TA = +25°C 20 nm Forward Voltage VF ILED = 20mA, TA = +25°C 2.1 V Radiant Power PO ILED = 20mA, TA = +25°C 9.8 mW GREEN LED CHARACTERISTICS (Note 3) LED Peak Wavelength λP ILED = 50mA, TA = +25°C Full Width at Half Max Δλ ILED = 50mA, TA = +25°C 530 537 545 Forward Voltage VF ILED = 50mA, TA = +25°C 3.3 V Radiant Power PO ILED = 50mA, TA = +25°C 17.2 mW 35 nm nm PHOTODETECTOR CHARACTERISTICS (Note 3) Spectral Range of Sensitivity Radiant Sensitive Area Dimensions of Radiant Sensitive Area Λ > 30% QE QE: Quantum Efficiency 640 980 nm A 1.36 mm2 LxW 1.38 x 0.98 mm x mm INTERNAL DIE TEMPERATURE SENSOR Temperature ADC Acquisition Time TT TA = +25°C 29 ms Temperature Sensor Accuracy TA TA = +25°C ±1 °C Temperature Sensor Minimum Range TMIN -40 °C Temperature Sensor Maximum Range TMAX 85 °C www.maximintegrated.com 19-8453 Maxim Integrated | 4 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Electrical Characteristics (continued) (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, min/max are from TA = -40°C to +85°C, unless otherwise noted. Typical values are at TA = 25°C.) (Note 1) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS 0.3 x VDD V DIGITAL INPUTS (SCL, SDA) Input Logic-Low Voltage VIL Input Logic-High Voltage VIH 0.7 x VDD V VHYS 0.5 x VDD Input Leakage Current IIN ±0.1 Input Capacitance CIN 10 Input Hysteresis V ±1 µA pF DIGITAL OUTPUTS (SDA, INT) Output Low Voltage VOL ISINK = 3mA 0.4 V I2C TIMING CHARACTERISTICS I2C Write Address AE Hex I2C Read Address AF Hex SCL Clock Frequency fSCL Bus Free Time Between STOP and START Condition tBUF 1.3 µs tHD,STA 0.6 µs SCL Pulse-Width Low tLOW 1.3 µs SCL Pulse-Width High tHIGH 0.6 µs Setup Time for a Repeated START Condition tSU,STA 0.6 µs Data Hold Time tHD;DAT 0 Data Setup Time tSU;DAT 100 ns Setup Time for STOP Condition tSU;STO 0.6 µs Hold Time (Repeated) START Condition Lower limit not tested 0 400 0.9 kHz µs Pulse Width of Suppressed Spike tSP 50 ns Bus Capacitance Cb 400 pF SDA and SCL Receiving Rise Time Tr (Note 4) 20 300 ns SDA and SCL Receiving Fall Time tRf (Note 4) 20 x VDD/5.5 300 ns SDA Transmitting Fall Time tof 20 x VDD/5.5 250 ns Note 1: All devices are 100% production tested at TA = +25°C. Specifications over temperature limits are guaranteed by Maxim Integrated’s bench or proprietary automated test equipment (ATE) characterization. Note 2: Specifications are guaranteed by Maxim Integrated’s bench characterization and by 100% production test using proprietary ATE setup and conditions. www.maximintegrated.com 19-8453 Maxim Integrated | 5 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Note 3: For design guidance only. Not production tested. Note 4: These specifications are guaranteed by design, characterization, or I2C protocol. SDA tSU,STA tSU,DAT tLOW tHD,DAT tHD,STA tBUF tSP tSU,STO tHIGH SCL tHD,STA tR tF START CONDITION REPEATED START CONDITION STOP CONDITION START CONDITION Figure 1. I2C-Compatible Interface Timing Diagram www.maximintegrated.com 19-8453 Maxim Integrated | 6 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Typical Operating Characteristics (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, RST, unless otherwise noted.) RED LED SUPPLY HEADROOM toc02 60 40 30 ILED = 20mA 10 40 30 ILED = 20mA 20 2 3 4 5 0 1 2 VLED VOLTAGE (V) 50000 0.8 45000 COUNTS (SUM) 0.7 0.6 0.5 0.4 2 25000 20000 RED 2 IR GREEN 0 1.5 2.5 5 10 DISTANCE (mm) 4 5 15 20 toc06 VDD 2.2V 2.0V 1.8V 1.7V 5.0 4.0 3.0 2.0 1.0 0.0 -50 0 50 100 150 TEMPERATURE (°C) SUPPLY VOLTAGE (V) VLED SHUTDOWN CURRENT vs. TEMPERATURE 3 6.0 30000 0 0.14 1 VDD SHUTDOWN CURRENT vs. TEMPERATURE 7.0 35000 5000 0.0 1 0 VLED VOLTAGE (V) 10000 SHUTDOWN MODE 0.5 ILED = 20mA 20 5 MODE = LED SPO2 and HR ADC RES = 18 BITs ADC SR = 100 SPS ADC FULL SCALE = 16384nA 15000 0.3 0 30 toc05 40000 0.1 4 DC COUNTS vs. DISTANCE FOR WHITE HIGH IMPACT STYRENE CARD toc04 0.9 0.2 40 VLED VOLTAGE (V) VDD SUPPLY CURRENT vs vs.. SUPPLY VOLTAGE 1.0 3 VDD SHUTDOWN CURRENT (µA) 1 50 0 0 0 ILED = 50mA 10 10 0 SUPPLY CURRENT (mA) VLED = VX_DRV ILED = 50mA 50 toc03 60 GREEN LED CURRENT (mA) 50 IR LED CURRENT (mA) RED LED CURRENT (mA) ILED = 50mA 20 GREEN LED SUPPLY HEADROOM IR LED SUPPLY HEADROOM toc01 60 toc07 VLED SHUTDOWN CURRENT (µA) 0.13 0.12 0.11 0.10 VLED = 5.25V 0.09 0.08 VLED = 4.75V 0.07 0.06 -50 0 50 100 150 TEMPERATURE (°C) www.maximintegrated.com 19-8453 Maxim Integrated | 7 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Typical Operating Characteristics (continued) (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, RST, unless otherwise noted.) GREEN LED FORWARD VOLTAGE vs. FORWARD CURRENT at 25 25°°C toc15 60 MODE = FLEX LED ADC RES = 18 BITs ADC SR = 200 SPS ADC FULL SCALE = 2048nA FORWARD CURRENT (mA) 50 40 30 20 10 0 2.7 2.8 2.9 3 3.1 FORWARD VOLTAGE (V) www.maximintegrated.com 19-8453 Maxim Integrated | 8 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Typical Operating Characteristics (continued) (VDD = 1.8V, VLED+ = 5.0V, TA = +25°C, RST, unless otherwise noted.) Pin Configuration N.C. 1 14 N.C. SCL 2 13 INT SDA 3 12 GND PGND 4 11 VDD N.C. 5 10 VLED+ N.C. 6 9 VLED+ N.C. 7 8 N.C. SENSOR MAX30101 LED Pin Description PIN NAME FUNCTION 1, 5, 6, 7, 8, 14 N.C. No Connection. Connect to PCB pad for mechanical stability. 2 SCL I2C Clock Input 3 SDA I2C Clock Data, Bidirectional (Open-Drain) 4 PGND Power Ground of the LED Driver Blocks 9, 10 VLED+ LED Power Supply (anode connection). Use a bypass capacitor to PGND for best performance. 11 VDD Analog Power Supply Input. Use a bypass capacitor to GND for best performance. 12 GND Analog Ground 13 INT www.maximintegrated.com Active-Low Interrupt (Open-Drain). Connect to an external voltage with a pullup resistor. 19-8453 Maxim Integrated | 9 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Functional Diagrams VDD VLED+ RED IR AMBIENT LIGHT CANCELLATION GREEN ANALOG VISIBLE+IR ADC 660nm 880nm 527nm DIE TEMP DIGITAL DIGITAL FILTER SCL DATA REGISTER I2 C COMMUNICATION SDA INT ADC OSCILLATOR LED DRIVERS MAX30101 N.C. N.C. www.maximintegrated.com N.C. GND PGND 19-8453 Maxim Integrated | 10 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Detailed Description The MAX30101 is a complete pulse oximetry and heart- rate sensor system solution module designed for the demanding requirements of wearable devices. The MAX30101 maintains a very small solution size without sacrificing optical or electrical performance. Minimal external hardware components are required for integra- tion into a wearable system. The MAX30101 is fully adjustable through software regis- ters, and the digital output data can be stored in a 32-deep FIFO within the IC. The FIFO allows the MAX30101 to be connected to a microcontroller or processor on a shared bus, where the data is not being read continuously from the MAX30101’s registers. SpO2 Subsystem The SpO2 subsystem contains ambient light cancellation (ALC), a continuous-time sigma-delta ADC, and propri- etary discrete time filter. The ALC has an internal Track/ Hold circuit to cancel ambient light and increase the effec- tive dynamic range. The SpO2 ADC has a programmable full-scale ranges from 2µA to 16µA. The ALC can cancel up to 200µA of ambient current. The internal ADC is a continuous time oversampling sigma-delta converter with 18-bit resolution. The ADC sampling rate is 10.24MHz. The ADC output data rate can be programmed from 50sps (samples per second) to 3200sps. Temperature Sensor The MAX30101 has an on-chip temperature sensor for calibrating the temperature dependence of the SpO2 subsystem. The temperature sensor has an inherent resolution 0.0625°C. The device output data is relatively insensitive to the wavelength of the IR LED, where the red LED’s wave- length is critical to correct interpretation of the data. An SpO2 algorithm used with the MAX30101 output signal can compensate for the associated SpO2 error with ambient temperature changes. LED Driver The MAX30101 integrates red, green, and IR LED drivers to modulate LED pulses for SpO2 and HR measurements. The LED current can be programmed from 0 to 50mA with proper supply voltage. The LED pulse width can be programmed from 69µs to 411µs to allow the algorithm to optimize SpO2 and HR accuracy and power consumption based on use cases. www.maximintegrated.com 19-8453 Maxim Integrated | 11 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Register Maps and Descriptions REGISTER B7 B6 B5 PPG_ RDY ALC_ OVF B4 B3 B2 B1 B0 REG ADDR POR STATE R/ W PWR_ RDY 0x00 0X00 R 0x00 R 0x02 0X00 R/ W 0x03 0x00 R/ W STATUS Interrupt Status 1 A_FULL Interrupt Status 2 Interrupt Enable 1 DIE_TEMP _RDY A_FULL_ EN PPG_ RDY_EN ALC_ OVF_EN Interrupt Enable 2 DIE_TEMP _RDY_EN 0x01 FIFO FIFO Write Pointer FIFO_WR_PTR[4:0] 0x04 0x00 R/ W Overflow Counter OVF_COUNTER[4:0] 0x05 0x00 R/ W FIFO Read Pointer FIFO_RD_PTR[4:0] 0x06 0x00 R/ W 0x07 0x00 R/ W 0x00 R/ W 0x09 0x00 R/ W 0x0A 0x00 R/ W 0x0B 0x00 R/ W LED1_PA[7:0] 0x0C 0x00 R/ W LED2_PA[7:0] 0x0D 0x00 R/ W LED3_PA[7:0] 0x0E 0x00 R/ W LED4_PA[7:0] 0x0F 0x00 R/ W FIFO Data Register FIFO_DATA[7:0] CONFIGURATION FIFO Configuration SMP_AVE[2:0] Mode Configuration SHDN SpO2 Configuration 0 SPO2_ADC_RGE (Reserved) [1:0] FIFO_ ROLL OVER_EN RESET FIFO_A_FULL[3:0] 0x08 MODE[2:0] SPO2_SR[2:0] LED_PW[1:0] RESERVED LED Pulse Amplitude Multi-LED Mode Control Registers SLOT2[2:0] SLOT1[2:0] 0x11 0x00 R/ W SLOT4[2:0] SLOT3[2:0] 0x12 0x00 R/ W RESERVED 0x13– 0x17 0xFF R/ W RESERVED 0x180x1E 0x00 R DIE TEMPERATURE www.maximintegrated.com 19-8453 Maxim Integrated | 12 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health REGISTER B7 Die Temp Integer B6 B5 B4 B3 B2 B1 B0 TINT[7:0] Die Temp Fraction TFRAC[3:0] Die Temperature Config TEMP _EN RESERVED REG ADDR POR STATE R/ W 0x1F 0x00 R 0x20 0x00 R 0x00 R/ W 0x22– 0x2F 0x00 R/ W 0x21 PART ID Revision ID REV_ID[7:0] 0xFE 0xXX* R Part ID PART_ID[7] 0xFF 0x15 R *XX denotes a 2-digit hexadecimal number (00 to FF) for part revision identification. Contact Maxim Integrated for the revision ID number assigned for your product. Interrupt Status (0x00–0x01) REGISTER B7 B6 B5 Interrupt Status 1 A_FULL PPG_RDY ALC_OVF B4 B3 B2 Interrupt Status 2 B1 DIE_ TEMP_RDY B0 REG ADDR POR STATE R/ W PWR_ RDY 0x00 0X00 R 0x01 0x00 R Whenever an interrupt is triggered, the MAX30101 pulls the active-low interrupt pin into its low state until the interrupt is cleared. A_FULL: FIFO Almost Full Flag In SpO2 and HR modes, this interrupt triggers when the FIFO write pointer has a certain number of free spaces remaining. The trigger number can be set by the FIFO_A_FULL[3:0] register. The interrupt is cleared by reading the Interrupt Status 1 register (0x00). PPG_RDY: New FIFO Data Ready In SpO2 and HR modes, this interrupt triggers when there is a new sample in the data FIFO. The interrupt is cleared by reading the Interrupt Status 1 register (0x00), or by reading the FIFO_DATA register. ALC_OVF: Ambient Light Cancellation Overflow This interrupt triggers when the ambient light cancellation function of the SpO2/HR photodiode has reached its maximum limit, and therefore, ambient light is affecting the output of the ADC. The interrupt is cleared by reading the Interrupt Status 1 register (0x00). PWR_RDY: Power Ready Flag On power-up or after a brownout condition, when the supply voltage VDD transitions from below the undervoltage lockout (UVLO) voltage to above the UVLO voltage, a power-ready interrupt is triggered to signal that the module is powered-up and ready to collect data. DIE_TEMP_RDY: Internal Temperature Ready Flag When an internal die temperature conversion is finished, this interrupt is triggered so the processor can read the temperature data registers. The interrupt is cleared by reading either the Interrupt Status 2 register (0x01) or the TFRAC register (0x20). www.maximintegrated.com 19-8453 Maxim Integrated | 13 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health The interrupts are cleared whenever the interrupt status register is read, or when the register that triggered the interrupt is read. For example, if the SpO2 sensor triggers an interrupt due to finishing a conversion, reading either the FIFO data register or the interrupt register clears the interrupt pin (which returns to its normal HIGH state). This also clears all the bits in the interrupt status register to zero. Interrupt Enable (0x02-0x03) REGISTER B7 B6 B5 B4 B3 B2 Interrupt Enable 1 A_ FULL_ EN PPG_ RDY_EN ALC_ OVF_EN Interrupt Enable 2 B1 B0 DIE_TEMP_ RDY_EN REG ADDR POR STATE R/ W 0x02 0X00 R/ W 0x03 0x00 R/ W Each source of hardware interrupt, with the exception of power ready, can be disabled in a software register within the MAX30101 IC. The power-ready interrupt cannot be disabled because the digital state of the module is reset upon a brownout condition (low power supply voltage), and the default condition is that all the interrupts are disabled. Also, it is important for the system to know that a brownout condition has occurred, and the data within the module is reset as a result. The unused bits should always be set to zero for normal operation. FIFO (0x04–0x07) REGISTER B7 B6 B5 B4 B3 B2 B1 B0 REG ADDR POR STATE R/W FIFO Write Pointer FIFO_WR_PTR[4:0] 0x04 0x00 R/W Over Flow Counter OVF_COUNTER[4:0] 0x05 0x00 R/W FIFO_RD_PTR[4:0] 0x06 0x00 R/W 0x07 0x00 R/W FIFO Read Pointer FIFO Data Register FIFO_DATA[7:0] FIFO Write Pointer The FIFO Write Pointer points to the location where the MAX30101 writes the next sample. This pointer advances for each sample pushed on to the FIFO. It can also be changed through the I2C interface when MODE[2:0] is 010, 011, or 111. FIFO Overflow Counter When the FIFO is full, samples are not pushed on to the FIFO, samples are lost. OVF_COUNTER counts the number of samples lost. It saturates at 0x1F. When a complete sample is “popped” (i.e., removal of old FIFO data and shifting the samples down) from the FIFO (when the read pointer advances), OVF_COUNTER is reset to zero. FIFO Read Pointer The FIFO Read Pointer points to the location from where the processor gets the next sample from the FIFO through the I2C interface. This advances each time a sample is popped from the FIFO. The processor can also write to this pointer after reading the samples to allow rereading samples from the FIFO if there is a data communication error. FIFO Data Register The circular FIFO depth is 32 and can hold up to 32 samples of data. The sample size depends on the number of LED channels (a.k.a. channels) configured as active. As each channel signal is stored as a 3-byte data signal, the FIFO width can be 3 bytes, 6 bytes, 9 bytes, or 12 bytes in size. The FIFO_DATA register in the I2C register map points to the next sample to be read from the FIFO. FIFO_RD_PTR points to this sample. Reading FIFO_DATA register, does not automatically increment the I2C register address. Burst reading this register, reads the same address over and over. www.maximintegrated.com 19-8453 Maxim Integrated | 14 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Each sample is 3 bytes of data per channel (i.e., 3 bytes for RED, 3 bytes for IR, etc.). The FIFO registers (0x04–0x07) can all be written and read, but in practice only the FIFO_RD_PTR register should be written to in operation. The others are automatically incremented or filled with data by the MAX30101. When starting a new SpO2 or heart rate conversion, it is recommended to first clear the FIFO_WR_PTR, OVF_COUNTER, and FIFO_RD_PTR registers to all zeroes (0x00) to ensure the FIFO is empty and in a known state. When reading the MAX30101 registers in one burst-read I2C transaction, the register address pointer typically increments so that the next byte of data sent is from the next register, etc. The exception to this is the FIFO data register, register 0x07. When reading this register, the address pointer does not increment, but the FIFO_RD_PTR does. So the next byte of data sent represents the next byte of data available in the FIFO. Reading from the FIFO Normally, reading registers from the I2C interface autoincrements the register address pointer, so that all the registers can be read in a burst read without an I2C start event. In the MAX30101, this holds true for all registers except for the FIFO_DATA register (register 0x07). Reading the FIFO_DATA register does not automatically increment the register address. Burst reading this register reads data from the same address over and over. Each sample comprises multiple bytes of data, so multiple bytes should be read from this register (in the same transaction) to get one full sample. The other exception is 0xFF. Reading more bytes after the 0xFF register does not advance the address pointer back to 0x00, and the data read is not meaningful. FIFO Data Structure The data FIFO consists of a 32-sample memory bank that can store GREEN, IR, and RED ADC data. Since each sample consists of three channels of data, there are 9 bytes of data for each sample, and therefore 288 total bytes of data can be stored in the FIFO. The FIFO data is left-justified, as shown in Table 1; in other words, the MSB bit is always in the bit 17 data position, regardless of ADC resolution setting. See Table 2 for a visual presentation of the FIFO data structure. FIFO_DATA[0] FIFO_DATA[1] FIFO_DATA[2] FIFO_DATA[3] FIFO_DATA[4] FIFO_DATA[5] FIFO_DATA[6] FIFO_DATA[7] FIFO_DATA[8] FIFO_DATA[9] FIFO_DATA[10] FIFO_DATA[11] … FIFO_DATA[12] Resolution FIFO_DATA[16] ADC FIFO_DATA[17] Table 1. FIFO Data is Left-Justified 18-bit 17-bit 16-bit 15-bit FIFO Data Contains 3 Bytes per Channel The FIFO data is left-justified, meaning that the MSB is always in the same location regardless of the ADC resolution setting. FIFO DATA[18] – [23] are not used. Table 2 shows the structure of each triplet of bytes (containing the 18-bit ADC data output of each channel). Each data sample in SpO2 mode comprises two data triplets (3 bytes each), To read one sample, requires an I2C read command for each byte. Thus, to read one sample in SpO2 mode, requires 6 I2C byte reads. To read one sample with three LED channels requires 9 I2C byte reads. The FIFO read pointer is automatically incremented after the first byte of each sample is read. Write/Read Pointers Write/Read pointers are used to control the flow of data in the FIFO. The write pointer increments every time a new sample is added to the FIFO. The read pointer is incremented every time a sample is read from the FIFO. To reread a sample from the FIFO, decrement its value by one and read the data register again. www.maximintegrated.com 19-8453 Maxim Integrated | 15 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health The FIFO write/read pointers should be cleared (back to 0x00) upon entering SpO2 mode or HR mode, so that there is no old data represented in the FIFO. The pointers are automatically cleared if VDD is power-cycled or VDD drops below its UVLO voltage. Table 2. FIFO Data (3 Bytes per Channel) BYTE 1 FIFO_ DATA[17] FIFO_ DATA[16] BYTE 2 FIFO_ DATA[15] FIFO_ DATA[14] FIFO_ DATA[13] FIFO_ DATA[12] FIFO_ DATA[11] FIFO_ DATA[10] FIFO_ DATA[9] FIFO_ DATA[8] BYTE 3 FIFO_ DATA[7] FIFO_ DATA[6] FIFO_ DATA[5] FIFO_ DATA[4] FIFO_ DATA[3] FIFO_ DATA[2] FIFO_ DATA[1] FIFO_ DATA[0] Sample 2: LED Channel 3 (Byte 1-3) Sample 2: LED Channel 2 (Byte 1-3) NEWER SAMPLES Sample 2: LED Channel 1 (Byte 1-3) Sample 2: RED Channel (Byte 1-3) Sample 1: LED Channel 3 (Byte 1-3) Sample 1: IR Channel (Byte 1-3) Sample 1: LED Channel 2 (Byte 1-3) Sample 1: LED Channel 1 (Byte 1-3) NEWER SAMPLES Sample 2: IR Channel (Byte 1-3) Sample 1: RED Channel (Byte 1-3) OLDER SAMPLES OLDER SAMPLES 2(a) 2(b) Figure 2.a and 2b. Graphical Representation of the FIFO Data Register. The left shows three LEDs in multi-LED mode, and the right shows IR and Red only in SpO2 Mode. Pseudo-Code Example of Reading Data from FIFO First transaction:Get the FIFO_WR_PTR: START; end device address + write mode Send address of FIFO_WR_PTR; REPEATED_START; Send device address + read mode Read FIFO_WR_PTR; STOP; The central processor evaluates the number of samples to be read from the FIFO: NUM_AVAILABLE_SAMPLES = FIFO_WR_PTR – FIFO_RD_PTR (Note: pointer wrap around should be taken into account) NUM_SAMPLES_TO_READ = < less than or equal to NUM_AVAILABLE_SAMPLES > Second transaction: Read NUM_SAMPLES_TO_READ samples from the FIFO: www.maximintegrated.com 19-8453 Maxim Integrated | 16 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health START; Send device address + write mode Send address of FIFO_DATA; REPEATED_START; Send device address + read mode for (i = 0; i < NUM_SAMPLES_TO_READ; i++) { Read FIFO_DATA; Save LED1[23:16]; Read FIFO_DATA; Save LED1[15:8]; Read FIFO_DATA; Save LED1[7:0]; Read FIFO_DATA; Save LED2[23:16]; Read FIFO_DATA; Save LED2[15:8]; Read FIFO_DATA; Save LED2[7:0]; Read FIFO_DATA; Save LED3[23:16]; Read FIFO_DATA; Save LED3[15:8]; Read FIFO_DATA; Save LED3[7:0]; Read FIFO_DATA; } STOP; START; Send device address + write mode Send address of FIFO_RD_PTR; Write FIFO_RD_PTR; STOP; Third transaction: Write to FIFO_RD_PTR register. If the second transaction was successful, FIFO_RD_PTR points to the next sample in the FIFO, and this third transaction is not necessary. Otherwise, the processor updates the FIFO_RD_PTR appropriately, so that the samples are reread. FIFO Configuration (0x08) REGISTER FIFO Configuration B7 B6 B5 SMP_AVE[2:0] www.maximintegrated.com B4 B3 FIFO_ROL LOVER_EN B2 B1 B0 FIFO_A_FULL[3:0] 19-8453 REG ADDR POR STATE R/W 0x08 0x00 R/W Maxim Integrated | 17 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Bits 7:5: Sample Averaging (SMP_AVE) To reduce the amount of data throughput, adjacent samples (in each individual channel) can be averaged and decimated on the chip by setting this register. Table 3. Sample Averaging SMP_AVE[2:0] NO. OF SAMPLES AVERAGED PER FIFO SAMPLE 000 1 (no averaging) 001 2 010 4 011 8 100 16 101 32 110 32 111 32 Bit 4: FIFO Rolls on Full (FIFO_ROLLOVER_EN) This bit controls the behavior of the FIFO when the FIFO becomes completely filled with data. If FIFO_ROLLOVER_EN is set (1), the FIFO Address rolls over to zero and the FIFO continues to fill with new data. If the bit is not set (0), then the FIFO is not updated until FIFO_DATA is read or the WRITE/READ pointer positions are changed. Bits 3:0: FIFO Almost Full Value (FIFO_A_FULL) This register sets the number of data samples (3 bytes/sample) remaining in the FIFO when the interrupt is issued. For example, if this field is set to 0x0, the interrupt is issued when there is 0 data samples remaining in the FIFO (all 32 FIFO words have unread data). Furthermore, if this field is set to 0xF, the interrupt is issued when 15 data samples are remaining in the FIFO (17 FIFO data samples have unread data). FIFO_A_FULL[3:0] EMPTY DATA SAMPLES IN FIFO WHEN INTERRUPT IS ISSUED UNREAD DATA SAMPLES IN FIFO WHEN INTERRUPT IS ISSUED 0x0h 0 32 0x1h 1 31 0x2h 2 30 0x3h 3 29 … … ... 0xFh 15 17 Mode Configuration (0x09) REGISTER B7 B6 Mode Configuration SHDN RESET B5 B4 B3 B2 B1 B0 MODE[2:0] REG ADDR POR STATE R/W 0x09 0x00 R/W Bit 7: Shutdown Control (SHDN) The part can be put into a power-save mode by setting this bit to one. While in power-save mode, all registers retain their values, and write/read operations function as normal. All interrupts are cleared to zero in this mode. Bit 6: Reset Control (RESET) When the RESET bit is set to one, all configuration, threshold, and data registers are reset to their power-on-state through a power-on reset. The RESET bit is cleared automatically back to zero after the reset sequence is completed. Note: Setting the RESET bit does not trigger a PWR_RDY interrupt event. www.maximintegrated.com 19-8453 Maxim Integrated | 18 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Bits 2:0: Mode Control These bits set the operating state of the MAX30101. Changing modes does not change any other setting, nor does it erase any previously stored data inside the data registers. Table 4. Mode Control MODE[2:0] MODE ACTIVE LED CHANNELS 000 Do not use 001 Do not use 010 Heart Rate mode 011 SpO2 mode Red only Red and IR 100–110 Do not use 111 Multi-LED mode Green, Red, and/or IR SpO2 Configuration (0x0A) REGISTER B7 B6 SpO2 Configuration B5 B4 SPO2_ADC_RGE[1:0] B3 B2 SPO2_SR[2:0] B1 B0 REG ADDR POR STATE R/W 0x0A 0x00 R/W LED_PW[1:0] Bits 6:5: SpO2 ADC Range Control This register sets the SpO2 sensor ADC’s full-scale range as shown in Table 5. Table 5. SpO2 ADC Range Control (18-Bit Resolution) SPO2_ADC_RGE[1:0] LSB SIZE (pA) FULL SCALE (nA) 00 7.81 2048 01 15.63 4096 02 31.25 8192 03 62.5 16384 Bits 4:2: SpO2 Sample Rate Control These bits define the effective sampling rate with one sample consisting of one IR pulse/conversion, one RED pulse/ conversion, and one GREEN pulse/conversion. The sample rate and pulse-width are related in that the sample rate sets an upper bound on the pulse-width time. If the user selects a sample rate that is too high for the selected LED_PW setting, the highest possible sample rate is programmed instead into the register. Table 6. SpO2 Sample Rate Control SPO2_SR[2:0] SAMPLES PER SECOND 000 50 001 100 010 200 011 400 100 800 101 1000 110 1600 111 3200 See Table 15 and Table 16 for Pulse-Width vs. Sample Rate information. www.maximintegrated.com 19-8453 Maxim Integrated | 19 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Bits 1:0: LED Pulse Width Control and ADC Resolution These bits set the LED pulse width (the IR, Red, and Green have the same pulse width), and, therefore, indirectly sets the integration time of the ADC in each sample. The ADC resolution is directly related to the integration time. Table 7. LED Pulse Width Control LED_PW[1:0] PULSE WIDTH (µs) ADC RESOLUTION (bits) 00 69 (68.95) 15 01 118 (117.78) 16 10 215 (215.44) 17 11 411 (410.75) 18 LED Pulse Amplitude (0x0C–0x0F) REGISTER B7 B6 B5 LED Pulse Amplitude B4 B3 B2 B1 B0 REG ADDR POR STATE R/W LED1_PA[7:0] 0x0C 0x00 R/W LED2_PA[7:0] 0x0D 0x00 R/W LED3_PA[7:0] 0x0E 0x00 R/W LED4_PA[7:0] 0x0F 0x00 R/W These bits set the current level of each LED as shown in Table 8 Table 8. LED Current Control LEDx_PA [7:0] TYPICAL LED CURRENT (mA)* 0x00h 0.0 0x01h 0.2 0x02h 0.4 … … 0x0Fh 3.0 … … 0x1Fh 6.2 … … 0x3Fh 12.6 … … 0x7Fh 25.4 … … 0xFFh 51.0 .*Actual measured LED current for each part can vary significantly due to the trimming methodology. Multi-LED Mode Control Registers (0x11–0x12) REGISTER Multi-LED Mode Control Registers B7 B6 B5 B4 B3 B2 B1 B0 REG ADDR POR STATE R/W SLOT2[2:0] SLOT1[2:0] 0x11 0x00 R/W SLOT4[2:0] SLOT3[2:0] 0x12 0x00 R/W In multi-LED mode, each sample is split into up to four time slots, SLOT1 through SLOT4. These control registers determine which LED is active in each time slot, making for a very flexible configuration. www.maximintegrated.com 19-8453 Maxim Integrated | 20 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Table 9. Multi-LED Mode Control Registers SLOTx[2:0] Setting WHICH LED IS ACTIVE LED PULSE AMPLITUDE SETTING 000 None (time slot is disabled) N/A (Off) 001 LED1 (RED) LED1_PA[7:0] 010 LED2 (IR) LED2_PA[7:0] 011* LED3 (GREEN) LED3_PA[7:0] LED4 (GREEN) LED4_PA[7:0] 100 None N/A (Off) 101 RESERVED RESERVED 110 RESERVED RESERVED 111 RESERVED RESERVED Each slot generates a 3-byte output into the FIFO. One sample comprises all active slots, for example if SLOT1 and SLOT2 are non-zero, then one sample is 2 x 3 = 6 bytes. If SLOT1 through SLOT3 are all non-zero, then one sample is 3 x 3 = 9 bytes. The slots should be enabled in order (i.e., SLOT1 should not be disabled if SLOT2 or SLOT3 are enabled). *Both LED3 and LED4 are wired to Green LED. Green LED sinks current out of LED3_PA[7:0] and LED4_PA[7:0] configurationin Multi-LED Mode and SLOTx[2:0] = 011. Temperature Data (0x1F–0x21) REGISTER B7 B6 B5 B4 Temp_Integer B3 B2 B1 B0 TINT[7] Temp_Fraction TFRAC[3:0] Die Temperature Config TEMP_EN REG ADDR POR STATE R/W 0x1F 0x00 R/W 0x20 0x00 R/W 0x21 0x00 R/W Temperature Integer The on-board temperature ADC output is split into two registers, one to store the integer temperature and one to store the fraction. Both should be read when reading the temperature data, and the equation below shows how to add the two registers together: TMEASURED = TINTEGER + TFRACTION This register stores the integer temperature data in 2’s complement format, where each bit corresponds to 1°C. Table 10. Temperature Integer REGISTER VALUE (hex) www.maximintegrated.com TEMPERATURE (°C) 0x00 0 0x00 +1 ... ... 0x7E +126 0x7F +127 0x80 -128 0x81 -127 ... ... 0xFE -2 0xFF -1 19-8453 Maxim Integrated | 21 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Temperature Fraction This register stores the fractional temperature data in increments of 0.0625°C. If this fractional temperature is paired with a negative integer, it still adds as a positive fractional value (e.g., -128°C + 0.5°C = -127.5°C). Temperature Enable (TEMP_EN) This is a self-clearing bit which, when set, initiates a single temperature reading from the temperature sensor. This bit clears automatically back to zero at the conclusion of the temperature reading when the bit is set to one. Timing for Measurements and Data Collection Slot Timing in Multi-LED Modes The MAX30101 can support up to three LED channels of sequential processing (Red, IR, and Green). In multi-LED modes, a time slot or period exists between active sequential channels. Table 11 displays the four possible channel slot times associated with each pulse width setting. [[Figure 3. Channel Slot Timing for the SpO2 Mode with a 1kHz Sample Rate]] shows an example of channel slot timing for a SpO2 mode application with a 1kHz sample rate. Table 11. Slot Timing PULSE-WIDTH SETTING (µs) CHANNEL SLOT TIMING (TIMING PERIOD BETWEEN PULSES) (µs) CHANNEL-CHANNEL TIMING (RISING EDGE-TO-RISING EDGE) (µs) 69 358 427 118 407 525 215 505 720 411 696 1107 Red On 69μs Red Off 931μs RED LED 660nm IR On 69μs IR Off 931μs 358μs INFRARED LED 880nm Figure 3. Channel Slot Timing for the SpO2 Mode with a 1kHz Sample Rate www.maximintegrated.com 19-8453 Maxim Integrated | 22 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Timing in SpO2 Mode The internal FIFO stores up to 32 samples, so that the system processor does not need to read the data after every sample. SpO2 can be calibrated using temperature data. In this case, the temperature does not need to be sampled very often – once a second or every few seconds should be sufficient. 15ms TO 300ms SAMPLE #1 LED OUTPUTS RED SAMPLE #2 IR RED IR SAMPLE #3 RED IR SAMPLE #16 SAMPLE #17 ~ RED IR RED IR RED IR RED IR ~ INT 29ms TEMP SENSOR TEMPERATURE SAMPLE I2C BUS ~ 1 2 3 4 5 6 Figure 4. Timing for Data Acquisition and Communication When in SpO2 Mode Table 12. Events Sequence for Figure 4 in SpO2 Mode EVENT DESCRIPTION 1 Enter into SpO2 Mode. Initiate a Temperature measurement. I2C Write Command sets MODE[2:0] = 0x03 and set A_FULL_EN. Then, to enable and initiate a single temperature measurement, set TEMP_EN and DIE_TEMP_RDY_EN. 2 Temperature Measurement Complete, Interrupt Generated DIE_TEMP_RDY interrupt triggers, alerting the central processor to read the data. 3 Temp Data is Read, Interrupt Cleared 4 FIFO is Almost Full, Interrupt Generated 5 FIFO Data is Read, Interrupt Cleared 6 Next Sample is Stored www.maximintegrated.com COMMENTS Interrupt is generated when the FIFO almost full threshold is reached. New Sample is stored at the new read pointer location. Effectively, it is now the first sample in the FIFO. 19-8453 Maxim Integrated | 23 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Timing in HR Mode The internal FIFO stores up to 32 samples, so that the system processor does not need to read the data after every sample. In HR mode (Figure 5), unlike in SpO2 mode, temperature information is not necessary to interpret the data. The user can select either the Red, IR, or Green LED channel for heart rate. 15ms TO 300ms LED OUTPUTS SAMPLE #1 SAMPLE #2 SAMPLE #3 IR IR IR SAMPLE #30 SAMPLE #31 IR IR ~ INT ~ I2C Bus ~ 1 2 IR 3 IR 4 Figure 5. Timing for Data Acquisition and Communication When in HR Mode Table 13. Events Sequence for Figure 5 in HR Mode EVENT DESCRIPTION COMMENTS 1 Enter into Mode I2C Write Command sets MODE[2:0] = 0x02. Mask the A_FULL_EN Interrupt. 2 FIFO is Almost Full, Interrupt Generated Interrupt is generated when the FIFO has only one empty space left. 3 FIFO Data is Read, Interrupt Cleared 4 Next Sample is Stored New sample is stored at the new read pointer location. Effectively, it is now the first sample in the FIFO. Power Sequencing and Requirements Power-Up Sequencing Figure 6 shows the recommended power-up sequence for the MAX30101. It is recommended to power the VDD supply first, before the LED power supplies (VLED+). The interrupt and I2C pins can be pulled up to an external voltage even when the power supplies are not powered up. After the power is established, an interrupt occurs to alert the system that the MAX30101 is ready for operation. Reading the I2C interrupt register clears the interrupt, as shown in the Figure 6. Power-Down Sequencing The MAX30101 is designed to be tolerant of any power supply sequencing on power-down. www.maximintegrated.com 19-8453 Maxim Integrated | 24 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health I2C Interface The MAX30101 features an I2C/SMBus-compatible, 2-wire serial interface consisting of a serial data line (SDA) and a serial clock line (SCL). SDA and SCL facilitate communication between the MAX30101 and the master at clock rates up to 400kHz. Figure 1 shows the 2-wire interface timing diagram. The master generates SCL and initiates data transfer on the bus. The master device writes data to the MAX30101 by transmitting the proper slave address followed by data. Each transmit sequence is framed by a START (S) or REPEATED START (Sr) condition and a STOP (P) condition. Each word transmitted to the MAX30101 is 8 bits long and is followed by an acknowledge clock pulse. A master reading data from the MAX30101 transmits the proper slave address followed by a series of nine SCL pulses. The MAX30101 transmits data on SDA in sync with the master-generated SCL pulses. The master acknowledges receipt of each byte of data. Each read sequence is framed by a START (S) or REPEATED START (Sr) condition, a not acknowledge, and a STOP (P) condition. SDA operates as both an input and an open-drain output. A pullup resistor, typically greater than 500Ω, is required on SDA. SCL operates only as an input. A pullup resistor, typically greater than 500Ω, is required on SCL if there are multiple masters on the bus, or if the single master has an open-drain SCL output. Series resistors in line with SDA and SCL are optional. Series resistors protect the digital inputs of the MAX30101 from high voltage spikes on the bus lines and minimize crosstalk and undershoot of the bus signals. VDD VLED+ PWR_RDY INTERRUPT INT HIGH (I/O PULLUP ) SDA, SCL HIGH (I/O PULLUP ) READ TO CLEAR INTERRUPT Figure 6. Power-Up Sequence of the Power Supply Rails Bit Transfer One data bit is transferred during each SCL cycle. The data on SDA must remain stable during the high period of the SCL pulse. Changes in SDA while SCL is high are control signals. See the START and STOP Conditions section. START and STOP Conditions SDA and SCL idle high when the bus is not in use. A master initiates communication by issuing a START condition. A START condition is a high-to-low transition on SDA with SCL high. A STOP condition is a low-to-high transition on SDA while SCL is high (Figure 7). A START condition from the master signals the beginning of a transmission to the MAX30101. The master terminates transmission, and frees the bus, by issuing a STOP condition. The bus remains active if a REPEATED START condition is generated instead of a STOP condition. Early STOP Conditions The MAX30101 recognizes a STOP condition at any point during data transmission except if the STOP condition occurs in the same high pulse as a START condition. For proper operation, do not send a STOP condition during the same SCL high pulse as the START condition. Slave Address A bus master initiates communication with a slave device by issuing a START condition followed by the 7-bit slave ID. When idle, the MAX30101 waits for a START condition followed by its slave ID. The serial interface compares each slave ID bit by bit, allowing the interface to power down and disconnect from SCL immediately if an incorrect slave ID is detected. After recognizing a START condition followed by the correct slave ID, the MAX30101 is programmed to accept or send data. The LSB of the slave ID word is the read/write (R/W) bit. R/W indicates whether the master is writing to or reading data from the MAX30101 (R/W = 0 selects a write condition, R/W = 1 selects a read condition). After receiving www.maximintegrated.com 19-8453 Maxim Integrated | 25 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health the proper slave ID, the MAX30101 issues an ACK by pulling SDA low for one clock cycle. The MAX30101 slave ID consists of seven fixed bits, B7–B1 (set to 0b1010111). The most significant slave ID bit (B7) is transmitted first, followed by the remaining bits. Table 14 shows the possible slave IDs of the device. Acknowledge The acknowledge bit (ACK) is a clocked 9th bit that the MAX30101 uses to handshake receipt each byte of data when in write mode (Figure 8). The MAX30101 pulls down SDA during the entire master-generated 9th clock pulse if the previous byte is successfully received. Monitoring ACK allows for detection of unsuccessful data transfers. An unsuccessful data transfer occurs if a receiving device is busy or if a system fault has occurred. In the event of an unsuccessful data transfer, the bus master retries communication. The master pulls down SDA during the 9th clock cycle to acknowledge receipt of data when the MAX30101 is in read mode. An acknowledge is sent by the master after each read byte to allow data transfer to continue. A not-acknowledge is sent when the master reads the final byte of data from the MAX30101, followed by a STOP condition. Write Data Format For the write operation, send the slave ID as the first byte followed by the register address byte and then one or more data bytes. The register address pointer increments automatically after each byte of data received, so for example the entire register bank can be written by at one time. Terminate the data transfer with a STOP condition. The write operation is shown in Figure 9. The internal register address pointer increments automatically, so writing additional data bytes fill the data registers in order. Table 14. Slave ID Description B7 B6 B5 B4 B3 B2 B1 B0 WRITE ADDRESS READ ADDRESS 1 0 1 0 1 1 1 RW 0xAE 0xAF S Sr P SCL1 SDA1 Figure 7. START, STOP, and REPEATED START Conditions www.maximintegrated.com 19-8453 Maxim Integrated | 26 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health CLOCK PULSE FOR ACKNOWLEDGMENT START CONDITION 1 SCL1 2 8 9 NOT ACKNOWLEDGE SDA1 ACKNOWLEDGE Figure 8. Acknowledge S 1 0 1 0 1 1 1 R/W =0 ACK A7 SLAVE ID D7 D6 D5 D4 D3 A6 A5 A4 A3 A2 A1 A0 ACK REGISTER ADDRESS D2 D1 D0 ACK P DATA BYTE S = START CONDITION P = STOP CONDITION ACK = ACKNOWLEDGE BY THE RECEIVER INTERNAL ADDRESS POINTER AUTO -INCREMENT (FOR WRITING MULTIPLE BYTES Figure 9. Writing One Data Byte to the MAX30101 Read Data Format For the read operation, two I2C operations must be performed. First, the slave ID byte is sent followed by the I2C register that you wish to read. Then a REPEAT START (Sr) condition is sent, followed by the read slave ID. The MAX30101 then begins sending data beginning with the register selected in the first operation. The read pointer increments automatically, so the MAX30101 continues sending data from additional registers in sequential order until a STOP (P) condition is received. The exception to this is the FIFO_DATA register, at which the read pointer no longer increments when reading additional bytes. To read the next register after FIFO_DATA, an I2C write command is necessary to change the location of the read pointer. Figure 10 show the process of reading one byte or multiple bytes of data. An initial write operation is required to send the read register address. Data is sent from registers in sequential order, starting from the register selected in the initial I2C write operation. If the FIFO_DATA register is read, the read pointer will not automatically increment, and subsequent bytes of data will contain the contents of the FIFO. www.maximintegrated.com 19-8453 Maxim Integrated | 27 MAX30101 S 1 0 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health 1 0 1 1 1 R/W =0 ACK A7 A6 A5 SLAVE ID Sr 1 0 1 0 1 A4 A3 A2 A1 A0 ACK D2 D1 D0 NACK A2 A1 A0 ACK D2 D1 D0 AM D2 D1 D0 NACK REGISTER ADDRESS 1 1 R/W =1 ACK D7 D6 D5 SLAVE ID D4 D3 P DATA BYTE S = START CONDITION Sr = REPEATED START CONDITION P = STOP CONDITION ACK = ACKNOWLEDGE BY THE RECEIVER NACK = NOT ACKNOWLEDGE Figure 10. Reading one byte of data from MAX30101 S 1 0 1 0 1 1 1 R/W =0 ACK A7 A6 A5 SLAVE ID Sr 1 0 1 0 1 D6 D5 D4 D3 A3 REGISTER ADDRESS 1 1 R/W =1 ACK D7 D6 D5 SLAVE ID D7 A4 D4 D3 DATA 1 D2 D1 D0 AM D7 DATA n-1 S = START CONDITION Sr = REPEATED START CONDITION P = STOP CONDITION D6 D5 D4 D3 P DATA n ACK = ACKNOWLEDGE BY THE RECEIVER AM = ACKNOWLEDGE BY THE MASTER NACK = NOT ACKNOWLEDGE Figure 11. Reading multiple bytes of data from the MAX30101 www.maximintegrated.com 19-8453 Maxim Integrated | 28 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Applications Information Soldering and Cleaning Recommendations The MAX30101 comes in an OLGA package that is not sealed from dust or liquid. Because of this, the MAX30101 requires special care to install on a board. If possible, the MAX30101 should be the last component installed on the board. Install the MAX30101 after the board ultrasonic cleaning is completed. When soldering the MAX30101, use a low-residue, no-clean solder paste. The MAX30101 should not be cleaned with a liquid solution, baked, or coated with anything. The Application Note 6381 serves as a guide for handling the OLGA package when manufacturing a board. Sampling Rate and Performance The maximum sample rate for the ADC depends on the selected pulse-width, which in turn, determines the ADC resolution. For instance, if the pulse-width is set to 69μs then the ADC resolution is 15 bits, and all sample rates are selectable. However, if the pulse-width is set to 411μs, then the samples rates are limited. The allowed sample rates for both SpO2 and HR Modes are summarized in the Table 15 and Table 16: Power Considerations The LED waveforms and their implication for power supply design are discussed in this section. The LEDs in the MAX30101 are pulsed with a low duty cycle for power savings, and the pulsed currents can cause ripples in the VLED+ power supply. To ensure these pulses do not translate into optical noise at the LED outputs, the power supply must be designed to handle these. Ensure that the resistance and inductance from the power supply (battery, DC-DC converter, or LDO) to the pin is much smaller than 1Ω, and that there is at least 1μF of power-supply bypass capacitance to a good ground plane. The capacitance should be located as close as physically possible to the IC. Table 15. SpO2 Mode (Allowed Settings) SAMPLES PER SECOND PULSE WIDTH (µs) 69 118 215 411 50 O O O O 100 O O O O 200 O O O O 400 O O O O 800 O O O 1000 O O 1600 O 3200 Resolution (bits) www.maximintegrated.com 15 19-8453 16 17 18 Maxim Integrated | 29 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Table 16. HR Mode (Allowed Settings) PULSE WIDTH (µs) SAMPLES PER SECOND 69 118 215 411 50 O O O O 100 O O O O 200 O O O O 400 O O O O 800 O O O O 1000 O O O O 1600 O O O 16 17 3200 O Resolution (bits) 15 18 SpO2 Temperature Compensation The MAX30101 has an accurate on-board temperature sensor that digitizes the IC’s internal temperature upon command from the I2C master. The temperature has an effect on the wavelength of the red and IR LEDs. While the device output data is relatively insensitive to the wavelength of the IR LED, the red LED’s wavelength is critical to correct interpretation of the data. Table 17 shows the correlation of red LED wavelength versus the temperature of the LED. Since the LED die heats up with a very short thermal time constant (tens of microseconds), the LED wavelength should be calculated according to the current level of the LED and the temperature of the IC. Use Table 17 to estimate the temperature. Table 17. RED LED Current Settings vs. LED Temperature Rise RED LED CURRENT SETTING RED LED DUTY CYCLE (% OF LED PULSEWIDTH TO SAMPLE TIME) ESTIMATED TEMPERATURE RISE (ADD TO TEMP SENSOR MEASUREMENT) (°C) 00000001 (0.2mA) 8 0.1 11111010 (50mA) 8 2 00000001 (0.2mA) 16 0.3 11111010 (50mA) 16 4 00000001 (0.2mA) 32 0.6 11111010 (50mA) 32 8 Red LED Current Settings vs. LED Temperature Rise Add this to the module temperature reading to estimate the LED temperature and output wavelength. The LED temperature estimate is valid even with very short pulse-widths, due to the fast thermal time constant of the LED. Interrupt Pin Functionality The active-low interrupt pin pulls low when an interrupt is triggered. The pin is open-drain, which means it normally requires a pullup resistor or current source to an external voltage supply (up to +5V from GND). The interrupt pin is not designed to sink large currents, so the pullup resistor value should be large, such as 4.7kΩ. www.maximintegrated.com 19-8453 Maxim Integrated | 30 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Typical Application Circuits +1.8V 20mA +5.0V 200mA MAX 0.1µF 10µF 4.7µF VLED+ 0.1µF VDD 1kΩ RED IR AMBIENT LIGHT CANCELLATION GREEN ANALOG VISIBLE+IR ADC 660nm 880nm 527nm DIE TEMP DIGITAL DIGITAL FILTER VDDIO SCL DATA REGISTER I2 C SDA COMMUNICATION HOST PROCESSOR INT ADC OSCILLATOR LED DRIVERS MAX30101 N.C. N.C. N.C. GND PGND (NOT CONNECTED ) Ordering Information PART TEMP RANGE PIN-PACKAGE MAX30101EFD+T -40°C to +85°C 14 OESIP (0.8mm Pin Pitch) +Denotes lead(Pb)-free/RoHS-compliant package. T = Tape and reel. www.maximintegrated.com 19-8453 Maxim Integrated | 31 MAX30101 High-Sensitivity Pulse Oximeter and Heart-Rate Sensor for Wearable Health Revision History REVISION NUMBER REVISION DATE 0 3/16 Initial release 6/18 Changed register descriptions, updated tables 8,9,13,15,16, removed Proximity function, updated FIFO_A_FULL description table 10–15, 18, 21–25, 27, 28 2 9/18 Updated the Applications, Absolute Maximum Ratings, Electrical Characteristics, Pin Description, and Power-Up Sequencing sections; updated the System Diagram, Pin Configuration, Functional Diagram, and Typical Application Circuit; updated the Register Maps and Descriptions, Mode Configuration (0x09), SpO2 Configuration (0x0A), LED Pulse Amplitude (0x0C–0x0F), Table 8, and Table 9. 1–5, 9–11,19, 21–22, 29, 32 3 6/20 Updated SpO2 Sample Rate Control[2:4] (0x0A) and Applications Information section 1 PAGES CHANGED DESCRIPTION — 24, 34 For pricing, delivery, and ordering information, please visit Maxim Integrated’s online storefront at https://www.maximintegrated.com/en/storefront/storefront.html. Maxim Integrated cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim Integrated product. No circuit patent licenses are implied. Maxim Integrated reserves the right to change the circuitry and specifications without notice at any time. The parametric values (min and max limits) shown in the Electrical Characteristics table are guaranteed. Other parametric values quoted in this data sheet are provided for guidance. Maxim Integrated and the Maxim Integrated logo are trademarks of Maxim Integrated Products, Inc. © 2020 Maxim Integrated Products, Inc.
MAX30101EFD+ 价格&库存

很抱歉,暂时无法提供与“MAX30101EFD+”相匹配的价格&库存,您可以联系我们找货

免费人工找货