NOA1305 Ambient Light Sensor with I2C Interface and Dark Current Compensation Description The NOA1305 ambient light sensor (ALS) is designed for handheld applications and integrates a 16−bit ADC, a 2−wire I2C digital interface, internal clock oscillator and a power down mode. The built in dynamic dark current compensation and precision calibration capability coupled with excellent IR and 50/60 Hz flicker rejection enables highly accurate measurements from very low light levels to full sunlight. The device can support simple count equals lux readings in interrupt−driven or polling modes. The NOA1305 employs proprietary CMOS image sensing technology from ON Semiconductor to provide large signal to noise ratio (SNR) and wide dynamic range (DR) over the entire operating temperature range. The optical filter used with this chip provides a light response similar to that of the human eye. Features • Senses Ambient Light and Provides an Output Count Proportional to • • • • • • • • • • • • • • • • the Ambient Light Intensity Photopic Spectral Response Dynamic Dark Current Compensation IR Rejection Eliminates Need for Additional IR Photodiode Less than 120 mA Active Power Consumption in Normal Operation Less than 2 mA Power Dissipation in Power Down Mode Interrupt Signal Notifies Host of Significant Intensity Changes Wide Operating Voltage Range (2.4 V to 3.6 V) Wide Operating Temperature Range (−40°C to 85°C) Linear Response Over the Full Operating Range Senses Intensity of Ambient Light from 0.165 Lux to Over 100K Lux 8 Selectable Integration Times Ranging from 6.25 ms to 800 ms No External Components Required Built−in 16−bit ADC I2C Serial Communication Port Supports Standard and Fast Modes Metal Mask Programmable I2C Slave Address Option Available These Devices are Pb−Free and are RoHS Compliant http://onsemi.com CUDFN6 CU SUFFIX CASE 505AD PIN ASSIGNMENT VSS NC SCL 1 6 2 5 3 4 VDD INT SDA (Top View) ORDERING INFORMATION Device Package Shipping† NOA1305CUTAG CUDFN6 (Pb−Free) 2500 / Tape & Reel Temperature Range −40°C to 85°C †For information on tape and reel specifications, including part orientation and tape sizes, please refer to our Tape and Reel Packaging Specification Brochure, BRD8011/D. Applications • Saves Display Power In Applications Such As: ♦ ♦ ♦ Cell Phones, PDAs, MP3 Players, GPS Cameras, Video Recorders Mobile Devices with Displays or Backlit Keypads © Semiconductor Components Industries, LLC, 2012 October, 2012 − Rev. 0 1 Publication Order Number: NOA1305/D NOA1305 Vin = 2.0 to 3.6 V R1 1k hn 6 VDD R2 1k R3 1k MCU 4 SDA 3 SCL 5 INT SDA SCL INT C2 1 VSS 10 m IC1 NOA1305 C1 10 m Cb not to exceed 400 pF including all parasitic capacitances Figure 1. Typical Application Circuit 2C Interface II2C Interface & Control Control ADC hn Reference Diode Photo Diode SDA SCL INT Osc Figure 2. Simplified Block Diagram Table 1. PIN FUNCTION DESCRIPTION Pin Pin Name 1 VSS Ground pin. Description 2 NC No connection. 3 SCL External I2C clock supplied by the I2C master. Requires a 1 kW pull−up resistor. 4 SDA Bi−directional data signal for communications between this device and the I2C master. Requires a 1 kW pull−up resistor. 5 INT Interrupt request to the host. Programmable active state, open−drain output and requires an external 1 kW pull−up resistor. 6 VDD Power pin. Table 2. ABSOLUTE MAXIMUM RATINGS Rating Symbol Value Unit Input power supply VDD 4.0 V Input voltage range Vin −0.3 to VDD + 0.2 V Output voltage range Vout −0.3 to VDD + 0.2 V TJ(max) 85 °C TSTG −40 to 85 °C ESD Capability, Human Body Model (Note 1) ESDHBM 2 kV ESD Capability, Charged Device Model (Note 1) ESDCDM 750 (corner pins), 500 (center pins) V ESD Capability, Machine Model (Note 1) ESDMM 200 V Moisture Sensitivity Level MSL 5 − Lead Temperature Soldering (Note 2) TSLD 260 °C Maximum Junction Temperature Storage Temperature Stresses exceeding Maximum Ratings may damage the device. Maximum Ratings are stress ratings only. Functional operation above the Recommended Operating Conditions is not implied. Extended exposure to stresses above the Recommended Operating Conditions may affect device reliability. 1. This device incorporates ESD protection and is tested by the following methods: ESD Human Body Model tested per EIA/JESD22−A114 ESD Charged Device Model tested per ESD−STM5.3.1−1999 ESD Machine Model tested per EIA/JESD22−A115 Latchup Current Maximum Rating: ≤ 100 mA per JEDEC standard: JESD78 2. For information, please refer to our Soldering and Mounting Techniques Reference Manual, SOLDERRM/D http://onsemi.com 2 NOA1305 Table 3. OPERATING RANGES Standard Mode Fast Mode Symbol Min Max Min Max Unit Power supply voltage VDD 2.4 3.6 2.4 3.6 V Power supply current IDD 120 mA Rating Quiescent supply current (Note 3) 120 2.0 mA Low level input voltage (VDD related input levels) IDD_qe VIL −0.5 0.3 VDD 2.0 −0.5 0.3 VDD V High level input voltage (VDD related input levels) (Note 4) VIH 0.7 VDD VDD + 0.5 0.7 VDD VDD + 0.5 V Hysteresis of Schmitt trigger inputs (VDD > 2 V) Vhys N/A N/A 0.05 VDD − V Low level output voltage (open drain) at 3 mA sink current (VDD > 2 V) VOL 0 0.4 0 0.4 V Output low current (VOl=0.4 V) IOL 3 N/A 3 N/A mA Output low current (VOl=0.6 V) IOL N/A N/A 6 N/A mA Output fall time from VIHmin to VILmax with a bus capacitance, Cb from 10 pF to 400 pF (Note 4) tof − 250 20+0.1Cb 250 ns Pulse width of spikes which must be suppressed by the input filter tSP N/A N/A 0 50 ns Input current of IO pin with an input voltage between 0.1 VDD and 0.9 VDD II −10 10 −10 10 mA Capacitance on IO pin CI − 10 − 10 pF Operating free−air temperature range TA −40 85 −40 85 °C 3. Current dissipation when a software Power Down command is sent to the device. 4. Cb = capacitance of one bus line, maximum value of which including all parasitic capacitances should be less than 400 pF. Table 4. ELECTRICAL CHARACTERISTICS (Unless otherwise specified, these specifications apply over VDD = 3.3 V, −40°C < TA < 85°C) (Note 5) Standard Mode Fast Mode Symbol Min Max Min Max Unit fSCL 0 100 0 400 kHz tHD;STA 4.0 − 0.6 − mS Low period of SCL clock tLOW 4.7 1.3 mS High period of SCL clock tHIGH 4.0 0.6 mS Parameter SCL clock frequency Hold time for START condition. After this period, the first clock pulse is generated. Set−up time for a repeated START condition tSU;STA 4.7 − 0.6 − mS tHD;DAT_d 0 3.45 0 0.9 mS tSU;DAT 250 − 100 − nS Rise time of both SDA and SCL (Note 6) tr − 1000 20 + 0.1Cb 300 nS Fall time of both SDA and SCL (Note 6) tf − 300 20 + 0.1Cb 300 nS tSU;STO 4.0 − 0.6 − mS Data hold time for I2C−bus devices Data set−up time Set−up time for STOP condition Bus free time between STOP and START condition tBUF 4.7 − 1.3 − mS Capacitive load for each bus line Cb − 400 − 400 pF Noise margin at the low level for each connected device (including hysteresis) VnL 0.1 VDD − 0.1 VDD − V Noise margin at the high level for each connected device (including hysteresis) VnH 0.2 VDD − 0.2 VDD − V Parameter Symbol Typ Typ Unit fosc 1 1 MHz Internal Oscillator Frequency 5. Refer to Figure 3 for more information on AC characteristics 6. The rise time and fall time are measured with a pull−up resistor Rp = 1 kW and Cb of 400 pF (including all parasitic capacitances). http://onsemi.com 3 NOA1305 Table 5. OPTICAL CHARACTERISTICS (Unless otherwise specified, these specifications are for VDD = 3.3 V, TA = 25°C, TINT = 200 ms) Parameter Irradiance responsivity Illuminance responsivity Dark responsivity Test Conditions Symbol Min Typ Max Unit Re 545 nM White LED Source: Ev = 100 lux (see Figure 6) Rvi100 154 Counts White LED source: Ev = 1000 lux (see Figure 6) Rvi1000 1543 Ev = 0 lux (see Figure 6) IDARK 0 lp (see Figure 5) Figure 3. AC Characteristics http://onsemi.com 4 Counts NOA1305 TYPICAL CHARACTERISTICS ALS Human Eye 0.9 Fluorescent (5000K) 0.8 0.7 White LED (5600K) 0.6 0.5 Fluorescent (2700K) 0.4 0.3 0.2 Incandescent (2850K) 200 300 400 500 600 700 800 900 1.5 2.0 Figure 4. Spectral Response Figure 5. Illumination Response to Various Light Sources OUTPUT COUNTS (Normalized to 20°C) 1600 1200 800 400 200 400 600 800 1000 1200 1.2 1.0 0.8 0.6 0.4 VDD = 3.3 V 0.2 0 −60 −40 −20 0 20 40 60 80 Ev (lux) TEMPERATURE (°C) Figure 6. Output Counts vs. Ev Figure 7. Output Counts vs. Temperature (100 lux) −50 −60 −70 −80 −90 10 20 30 −30 −40 −50 40 50 60 −60 70 −100 −140 −150 −160 130 140 −170 180 170 160 0.6 50 60 70 0.2 80 90 −90 0.0 90 100 −100 Q −110 o −90 150 1 6 2 5 3 120 −130 o 90 −140 −150 150 −160 160 −170 180 170 4 TOP VIEW Figure 8. Output Counts vs. Angle (End View, Normalized) Q 110 −120 END VIEW 130 140 SIDE VIEW o −90 TOP VIEW Figure 9. Output Counts vs. Angle (Side View, Normalized) http://onsemi.com 5 100 40 −80 120 −130 30 80 110 −120 0.8 10 20 0.4 −70 100 −110 −10 0 −20 1.0 4 −40 0 −10 1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 5 −20 3 −30 6 OUTPUT COUNTS 1.0 RATIO White LED (5600K) 0 0.5 WAVELENGTH (nm) 2000 0 0 1000 2 0.1 0 1 OUTPUT COUNTS (Normalized) 1.0 90o NOA1305 2.0 1.2 OUTPUT COUNTS (Normalized) 1.5 1.0 0.5 0 −0.5 VDD = 3.3 V −1.0 −1.5 −2.0 −60 −40 −20 0 20 40 60 80 0.8 0.6 0.4 0.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 TEMPERATURE (°C) VDD (V) Figure 10. Output Counts vs. Temperature (0 lux) Figure 11. Output Counts vs. Supply Voltage (100 lux) 100 100 90 90 80 80 70 70 60 60 50 40 50 40 30 30 20 20 VDD = 3.3 V 10 0 −60 −40 −20 0 20 40 60 80 10 0 100 2.4 2.6 2.8 3.0 3.2 3.4 3.6 TEMPERATURE (°C) VDD (V) Figure 12. Supply Current vs. Temperature (100 lux) Figure 13. Supply Current vs Supply Voltage (100 lux) 4 7.5 6.0 RP(max) (KW) 1.0 0 100 IDD (mA) IDD (mA) OUTPUT COUNTS (Normalized to 20°C) TYPICAL CHARACTERISTICS RP = 1 kW Cb = 400 pF (including all parasitic caps) tf = 75 ns 3 4.5 2 3.0 RS = 0 1.5 0 0 100 200 1 300 0 400 126.0u 126.5u 127.0u BUS CAPACITANCE (pF) TIME (s) Figure 14. Maximum Value of RP (in kW) as a function of Bus Capacitance (in pF) Figure 15. SDA Fall Time (tf) http://onsemi.com 6 127.5u NOA1305 DESCRIPTION OF OPERATION Ambient Light Sensor Architecture In the interrupt driven mode, once the NOA1305 is configured, no I2C activity is necessary until the ambient light intensity goes above the value programmed in the interrupt threshold register. When this occurs, the device signals an interrupt on the INT pin. Then it is up to the I2C master host to read the ALS count from the device. In polling mode, interrupts are typically disabled, but the NOA1305 continuously takes measurements and the I2C master host reads out the most recent count whenever it desires to do so, typically in a timed repeat loop. In power−down mode, the NOA1305 stops taking ambient light measurements and powers down most of the internal circuitry and the INT pin is deactivated. Power is maintained to preserve the register values (static memory) and a portion of the I2C remains active to monitor for a power−on command to the NOA1305. The NOA1305 employs a sensitive photo diode fabricated in ON Semiconductor’s standard CMOS process technology. The major components of this sensor are as shown in Figure 2. The photons which are to be detected pass through an ON Semiconductor proprietary color filter limiting extraneous photons and thus performing as a band pass filter on the incident wave front. The filter only transmits photons in the visible spectrum which are primarily detected by the human eye. The photo response of this sensor is as shown in Figure 5. The ambient light signal detected by the photo diode is converted to digital signal using a variable slope integrating ADC with a resolution of 16−bits, unsigned. The ADC value is provided to the control block connected to the I2C interface block. Equation 1 shows the relationship of output counts Cnt as a function of integration constant Ik, integration time Tint (in seconds) and the intensity of the ambient light, IL(in lux), at room temperature (25°C). I L + C ntń(I k T int ) I2C Interface The NOA1305 acts as an I2C slave device and supports single register read and write operations, in addition to block read and block write operations. All data transactions on the bus are 8 bits long. Each data byte transmitted is followed by an acknowledge bit. Data is transmitted with the MSB first. Figure 16 shows an I2C write operation. Write transactions begin with the master sending an I2C start sequence followed by the seven bit slave address (NOA1305 = 0x39) and the write(0) command bit. The NOA1305 will acknowledge this byte transfer with an appropriate ACK. Next the master will send the 8 bit register address to be written to. Again the NOA1305 will acknowledge reception with an ACK. Finally, the master will begin sending 8 bit data segment(s) to be written to the NOA1305 register bank. The NOA1305 will send an ACK after each byte and increment the address pointer by one in preparation for the next transfer. Write transactions are terminated with either an I2C STOP or with another I I2C START (repeated START). (eq. 1) Where: Ik ≈ 7.7 (for White LED Source) For example let: Cnt = 1000 Tint = 200 mS Intensity of ambient light, IL(in lux): I L + 1000ń(7.7 200 mS ) (eq. 2) IL = 649 lux Modes of Operation The NOA1305 can be placed in any of the following modes of operation by programming registers over the I2C bus: 1. Interrupt driven mode 2. Polling mode 3. Power−down mode Device Address A[6:0] WRITE ACK 011 1001 0 0x72 0 Register Address D[7:0] ACK 0000 0110 0 7 Start Condition 8 Figure 16. I2C Register Data D[7:0] ACK 00000000 0 8 Write Command http://onsemi.com 7 Stop Condition NOA1305 Figure 17 shows the most basic I2C read command sequence sent by the master to the slave device. The sequence consists of a complete I2C write command which sets the address pointer in preparation for the I2C read command since the read command itself does not include a Device Address A[6:0] WRITE ACK 011 1001 0 0x72 0 register address. When reading from a read only data register in the NOA1305 it is acceptable to write a 0 to the register in order to update the address pointer, but the 0 does not actually over−write the value in the data register. Register Address D[7:0] ACK 0000 0110 0 7 Register Data D[7:0] ACK 00000000 0 8 8 Stop Condition Start Condition Device Address Register Data [A] A[6:0] READ 011 1001 1 0x73 Register Data [A+1] D[7:0] NACK ACK D[7:0] ACK 0 bbbbbbbb 0 bbbbbbbb 1 7 8 8 Stop Condition Start Condition Figure 17. I2C Read Command Once the I2C write command is completed, the master sends an I2C start sequence followed by the seven bit slave address (NOA1305 = 0x39) and the read (1) command bit. The NOA1305 will acknowledge this byte transfer with an appropriate ACK. The NOA1305 will then begin shifting out data from the register just addressed. If the master wishes to receive more data (next register address), it will ACK the slave at the end of the 8 bit data transmission, and the slave will respond by sending the next byte, and so on. To signal the end of the read transaction, the master will send a NACK bit at the end of a transmission followed by an I2C STOP. LED Rise and Fall Time of SDA (Output) Proper operation of the I2C bus depends on keeping the bus capacitance low and selecting suitable pull−up resistor values. Figure 15 shows the fall time on SDA in output mode under maximum load conditions. The measurement set−up is shown in Figure 18. Figure 14 shows the maximum value of the pull−up resistor (RP) as a function of the I2C data bus capacitance. ADC ADC hn 16−bits Control Pulse Generator I2C Serial Interface NOA1305 Figure 18. Measurement Set−up http://onsemi.com 8 INT SCL SDA NOA1305 NOA1305 Data Registers NOA1305 operation is observed and controlled by internal data registers read from and written to via the external I2C interface. Registers are listed in Table 6. Default values are set on initial power up. Table 6. NOA1305 DATA REGISTERS (Note 7) Address Register Type Value (binary) Description 0x00 POWER_CONTROL RW 0000 0000 Power Down 0000 1000 Power On 0000 1001 Test Mode 1 (reserved) 0000 1010 Test Mode 2 (fixed output 0x5555) Default (binary) 0000 1000 0000 1011 Test Mode 3 (fixed output 0xAAAA) 0x01 RESET RW 0001 0000 Reset ALS data. Resets to 0000 0000 0000 0x02 INTEGRATION_TIME RW 0000 0000 800 ms continuous measurement 0000 0010 0000 0001 400 ms continuous measurement 0000 0010 200 ms continuous measurement 0000 0011 100 ms continuous measurement 0000 0100 50 ms continuous measurement 0000 0101 25 ms continuous measurement 0000 0110 12.5 ms continuous measurement 0000 0111 6.25 ms continuous measurement 0000 0001 L→H 0000 0010 H→L 0000 0011 Inactive, always H 0x03 INT_SELECT RW 0000 0011 0x04 INT_THRESH_LSB RW XXXX XXXX Interrupt threshold, least significant bits 0000 0000 0x05 INT_THRESH_MSB RW XXXX XXXX Interrupt threshold, most significant bits 0000 1000 0x06 ALS_DATA_LSB R XXXX XXXX ALS measurement data, least significant bits 0000 0000 0x07 ALS_DATA_MSB R XXXX XXXX ALS measurement data, most significant bits 0000 0000 0x08 DEVICE_ID_LSB R 0001 1001 Device ID value, least significant bits (1305 decimal, 0x0519 hex) 0001 1001 0x09 DEVICE_ID_MSB R 0000 0101 Device ID value, most significant bits (1305 decimal, 0x0519 hex) 0000 0101 7. Writing a value other than those specified for registers 0x00, 0x01, 0x02, 0x03 will cause the specified default value to be written instead. http://onsemi.com 9 NOA1305 POWER_CONTROL Register (0x00) INTEGRATION_TIME Register (0x02) The POWER_CONTROL register is used to power the device up and down via software control. By default this device powers up in the power ON mode. To reduce power consumption, the NOA1305 can be powered down at any time by writing 0x00 to this register. To power up the device, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x00 for the POWER_CONTROL register address 4. Issue 0x08 to put the device in the power on state 5. Issue Stop command After applying power to the device or after issuing a power−on command, stable ALS_DATA and INT signal may not be available for the first three integration times. For example with a default of 200 ms integration time, the I2C master should wait at least 600 ms before accessing this device. To power down the device, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x00 for the POWER_CONTROL register address 4. Issue 0x00 to put the device in the power down state 5. Issue Stop command After issuing a power−on command, the I2C master should wait at least 1.5 ms before accessing this device. The data registers are set to their default values when power is first applied to the device. However the power−down and power−on commands do not affect the values of the data registers. The test modes provide a useful debugging mode as they cause the device to output known values in place of the ALS_DATA values. The INTEGRATION_TIME register controls the integration time of the ambient light sensor which directly affects the sensitivity. To set the integration time, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x02 for the INTEGRATION_TIME register address 4. Issue 0x02 to set the integration time to 200 ms (for example) 5. Issue Stop command INT_SELECT Register (0x03) The INT_SELECT register controls the polarity of the interrupt pin INT and enables or disables interrupts on that pin. To specify low to high transitions on INT to signal an interrupt, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x03 for the INT_SELECT register address 4. Issue 0x01 to specify low to high signaling on INT 5. Issue Stop command To specify low to high transitions on INT to signal an interrupt, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x03 for the INT_SELECT register address 4. Issue 0x02 to specify high to low signaling on INT 5. Issue Stop command Disabling interrupts causes the INT pin to be held in the open−drain or high state. To disable interrupts completely on the INT pin, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x03 for the INT_SELECT register address 4. Issue 0x03 to disable interrupts on INT 5. Issue Stop command RESET Register (0x01) Software reset is controlled by this register. Setting this register followed by an I2C_STOP sequence will immediately reset the NOA1305 to the startup standby state and clear the ALS_DATA register. However the values of the other data registers are not affected. To reset the device, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x01 for the RESET register address 4. Issue 0x10 to reset the device 5. Issue Stop command After issuing a reset command, the device will reset the RESET register to 0x00. INT_THRESH_LSB and INT_THRES_MSB Registers (0x04, 0x05) The INT_THRESH register specifies an ambient light threshold value for signaling interrupts on the INT pin. The INT_THRESH register is 16−bits wide to match the 16−bit ALS_DATA register and is accessed over the I2C bus as two 8−bit registers for the least and most significant bits (LSB and MSB). On any measurement cycle where the ALS_DATA intensity count exceeds the INT_THRESH value, the INT pin will become active and will remain active until a measurement cycle where the count is less than or http://onsemi.com 10 NOA1305 To read the ALS_DATA register, use the following read command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x06 for the INT_DATA_LSB register address 4. Issue Start command 5. Issue 0x73 (lower seven bits of I2C slave address 0x39 followed by read−bit 1) 6. Read the ALS_DATA_LSB byte 7. Read the ALS_DATA_MSB byte 8. Issue Stop command equal to the threshold (and provided the INT pin is enabled, see INT_SELECT register). Changing the INT_THRESH register value can cause the INT pin to change immediately if the ALS_DATA to INT_THRESH comparison changes. Powering down the device will cause the INT pin to become inactive. To program a value into the INT_THRESH register, use the following write command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x04 for the INT_THRES_LSB register address 4. Issue the 8−bit LSB value 5. Issue Stop command 6. Issue Start command 7. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 8. Issue 0x05 for the INT_THRES_MSB register address 9. Issue the 8−bit MSB value 10. Issue Stop command After a power−down and power−on sequence, wait at least three integration times for the data to stabilize, before accessing any ALS_DATA values from NOA1305. DEVICE_ID_LSB and DEVICE_ID_MSB Registers (0x08, 0x09) The DEVICE_ID register is a pre−programmed register that describes the device. For the NOA1305, the register holds the decimal value of 1305 (0x0519). The DEVICE_ID register is 16−bits wide and is accessed from the I2C bus as two 8−bit registers for the least and most significant bits (LSB and MSB). To read the DEVICE_ID register, use the following read command sequence: 1. Issue Start command 2. Issue 0x72 (lower seven bits of I2C slave address 0x39 followed by write−bit 0) 3. Issue 0x08 for the DEVICE_ID_LSB register address 4. Issue Start command 5. Issue 0x73 (lower seven bits of I2C slave address 0x39 followed by read−bit 1) 6. Read the DEVICE_ID_LSB byte 7. Read the DEVICE_ID_MSB byte 8. Issue Stop command ALS_DATA_LSB and ALS_DATA_MSB Registers (0x06, 0x07) The ALS_DATA register holds the ambient light intensity count from the most recent measurement. The ALS_DATA register is 16−bits wide and is accessed from the I2C bus as two 8−bit registers for the least and most significant bits (LSB and MSB). http://onsemi.com 11 NOA1305 Example Programming Sequence The following pseudo code configures the NOA1305 ambient light sensor and then runs it in an interrupt driven mode. When the controller receives an interrupt, it reads the ALS_Data from the device, sets a flag and then waits for the main polling loop to respond to the ambient light change. external subroutine I2C_Read_Byte (I2C_Address, Data_Address); external subroutine I2C_Read_Block (I2C_Address, Data_Start_Address, Count, Memory_Map); external subroutine I2C_Write_Byte (I2C_Address, Data_Address, Data); external subroutine I2C_Write_Block (I2C_Address, Data_Start_Address, Count, Memory_Map); subroutine Initialize_ALS () { MemBuf[0x00] = 0x08; // POWER_CONTROL assert Power On MemBuf[0x01] = 0x10; // RESET assert reset MemBuf[0x02] = 0x02; // INTEGRATION_TIME select 200ms MemBuf[0x03] = 0x01; // INT_SELECT select Low to High MemBuf[0x04] = 0xFF; // INT_THRESH_LSB MemBuf[0x05] = 0x8F; // INT_THRESH_MSB I2C_Write_Block (I2CAddr, 0x00, 6, MemBuf); } subroutine I2C_Interupt_Handler () { // Retrieve and store the ALS data ALS_Data_LSB = I2C_Read_Byte (I2CAddr, 0x06); ALS_Data_MSB = I2C_Read_Byte (I2CAddr, 0x07); NewALS = 0x01; } subroutine main_loop () { I2CAddr = 0x39; NewALS = 0x00; Initialize_ALS (); loop { // Do some other polling operations if (NewALS == 0x01) { NewALS = 0x00; // Do some operations with ALS_Data } } } http://onsemi.com 12 NOA1305 PACKAGE DIMENSIONS CUDFN6, 2x2 CASE 505AD−01 ISSUE B NOTES: 1. DIMENSIONING AND TOLERANCING PER ASME Y14.5M, 1994. 2. CONTROLLING DIMENSION: MILLIMETERS. 3. DIMENSION b APPLIES TO PLATED TERMINAL AND IS MEASURED BETWEEN 0.15 AND 0.30mm FROM THE TERMINAL TIP. 4. COPLANARITY APPLIES TO THE EXPOSED PAD AS WELL AS THE TERMINALS. 0.10 C 2X D A B 2X PIN ONE REFERENCE ÍÍÍ ÍÍÍ ÍÍÍ d E A DIM A A1 A3 b D D2 d E E2 e K L q A1 DETAIL A TOP VIEW DETAIL A 0.05 C 7X q 0.10 C A3 0.05 C NOTE 4 C SIDE VIEW SEATING PLANE END VIEW MOUNTING FOOTPRINT 0.10 C A 6X MILLIMETERS MAX MIN 0.55 0.65 0.00 0.05 0.20 REF 0.18 0.28 2.00 BSC 1.50 1.70 --0.10 2.00 BSC 1.00 0.80 0.65 BSC 0.20 --0.25 0.35 10 5 45 6X 1.70 B 0.52 D2 L 1 3 1.00 E2 0.10 C A 6 K 4 e 6X B 1 b 0.10 C A BOTTOM VIEW 2.30 0.05 C B 0.65 PITCH NOTE 3 6X 0.28 DIMENSIONS: MILLIMETERS *For additional information on our Pb−Free strategy and soldering details, please download the ON Semiconductor Soldering and Mounting Techniques Reference Manual, SOLDERRM/D. ON Semiconductor and are registered trademarks of Semiconductor Components Industries, LLC (SCILLC). SCILLC owns the rights to a number of patents, trademarks, copyrights, trade secrets, and other intellectual property. A listing of SCILLC’s product/patent coverage may be accessed at www.onsemi.com/site/pdf/Patent−Marking.pdf. SCILLC reserves the right to make changes without further notice to any products herein. SCILLC makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does SCILLC assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation special, consequential or incidental damages. “Typical” parameters which may be provided in SCILLC data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. All operating parameters, including “Typicals” must be validated for each customer application by customer’s technical experts. SCILLC does not convey any license under its patent rights nor the rights of others. SCILLC products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the SCILLC product could create a situation where personal injury or death may occur. Should Buyer purchase or use SCILLC products for any such unintended or unauthorized application, Buyer shall indemnify and hold SCILLC and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that SCILLC was negligent regarding the design or manufacture of the part. SCILLC is an Equal Opportunity/Affirmative Action Employer. This literature is subject to all applicable copyright laws and is not for resale in any manner. PUBLICATION ORDERING INFORMATION LITERATURE FULFILLMENT: Literature Distribution Center for ON Semiconductor P.O. Box 5163, Denver, Colorado 80217 USA Phone: 303−675−2175 or 800−344−3860 Toll Free USA/Canada Fax: 303−675−2176 or 800−344−3867 Toll Free USA/Canada Email: [email protected] N. American Technical Support: 800−282−9855 Toll Free USA/Canada Europe, Middle East and Africa Technical Support: Phone: 421 33 790 2910 Japan Customer Focus Center Phone: 81−3−5817−1050 http://onsemi.com 13 ON Semiconductor Website: www.onsemi.com Order Literature: http://www.onsemi.com/orderlit For additional information, please contact your local Sales Representative NOA1305/D