LibDriver APDS9960
Loading...
Searching...
No Matches
driver_apds9960.c File Reference

driver apds9960 source file More...

#include "driver_apds9960.h"
#include <stdlib.h>
Include dependency graph for driver_apds9960.c:

Go to the source code of this file.

Macros

#define CHIP_NAME   "Broadcom APDS9960"
 chip information definition
#define MANUFACTURER_NAME   "Broadcom"
#define SUPPLY_VOLTAGE_MIN   2.4f
#define SUPPLY_VOLTAGE_MAX   3.6f
#define MAX_CURRENT   100.0f
#define TEMPERATURE_MIN   -40.0f
#define TEMPERATURE_MAX   85.0f
#define DRIVER_VERSION   1000
#define APDS9960_ADDRESS   0x72
 iic address definition
#define APDS9960_REG_ENABLE   0x80
 chip register definition
#define APDS9960_REG_ATIME   0x81
#define APDS9960_REG_WTIME   0x83
#define APDS9960_REG_AILTL   0x84
#define APDS9960_REG_AILTH   0x85
#define APDS9960_REG_AIHTL   0x86
#define APDS9960_REG_AIHTH   0x87
#define APDS9960_REG_PILT   0x89
#define APDS9960_REG_PIHT   0x8B
#define APDS9960_REG_PERS   0x8C
#define APDS9960_REG_CONFIG1   0x8D
#define APDS9960_REG_PPULSE   0x8E
#define APDS9960_REG_CONTROL   0x8F
#define APDS9960_REG_CONFIG2   0x90
#define APDS9960_REG_ID   0x92
#define APDS9960_REG_STATUS   0x93
#define APDS9960_REG_CDATAL   0x94
#define APDS9960_REG_CDATAH   0x95
#define APDS9960_REG_RDATAL   0x96
#define APDS9960_REG_RDATAH   0x97
#define APDS9960_REG_GDATAL   0x98
#define APDS9960_REG_GDATAH   0x99
#define APDS9960_REG_BDATAL   0x9A
#define APDS9960_REG_BDATAH   0x9B
#define APDS9960_REG_PDATA   0x9C
#define APDS9960_REG_POFFSET_UR   0x9D
#define APDS9960_REG_POFFSET_DL   0x9E
#define APDS9960_REG_CONFIG3   0x9F
#define APDS9960_REG_GPENTH   0xA0
#define APDS9960_REG_GEXTH   0xA1
#define APDS9960_REG_GCONF1   0xA2
#define APDS9960_REG_GCONF2   0xA3
#define APDS9960_REG_GOFFSET_U   0xA4
#define APDS9960_REG_GOFFSET_D   0xA5
#define APDS9960_REG_GOFFSET_L   0xA7
#define APDS9960_REG_GOFFSET_R   0xA9
#define APDS9960_REG_GPULSE   0xA6
#define APDS9960_REG_GCONF3   0xAA
#define APDS9960_REG_GCONF4   0xAB
#define APDS9960_REG_GFLVL   0xAE
#define APDS9960_REG_GSTATUS   0xAF
#define APDS9960_REG_IFORCE   0xE4
#define APDS9960_REG_PICLEAR   0xE5
#define APDS9960_REG_CICLEAR   0xE6
#define APDS9960_REG_AICLEAR   0xE7
#define APDS9960_REG_GFIFO_U   0xFC
#define APDS9960_REG_GFIFO_D   0xFD
#define APDS9960_REG_GFIFO_L   0xFE
#define APDS9960_REG_GFIFO_R   0xFF

Functions

uint8_t apds9960_init (apds9960_handle_t *handle)
 initialize the chip
uint8_t apds9960_deinit (apds9960_handle_t *handle)
 close the chip
uint8_t apds9960_irq_handler (apds9960_handle_t *handle)
 irq handler
uint8_t apds9960_gesture_decode (apds9960_handle_t *handle, uint8_t(*data)[4], uint8_t len)
 decode gestures from the fifo data
uint8_t apds9960_set_gesture_decode_threshold (apds9960_handle_t *handle, uint8_t threshold)
 set the gesture decode threshold
uint8_t apds9960_get_gesture_decode_threshold (apds9960_handle_t *handle, uint8_t *threshold)
 get the gesture decode threshold
uint8_t apds9960_set_gesture_decode_sensitivity_1 (apds9960_handle_t *handle, int32_t sensitivity)
 set the gesture decode sensitivity 1
uint8_t apds9960_get_gesture_decode_sensitivity_1 (apds9960_handle_t *handle, int32_t *sensitivity)
 get the gesture decode sensitivity 1
uint8_t apds9960_set_gesture_decode_sensitivity_2 (apds9960_handle_t *handle, int32_t sensitivity)
 set the gesture decode sensitivity 2
uint8_t apds9960_get_gesture_decode_sensitivity_2 (apds9960_handle_t *handle, int32_t *sensitivity)
 get the gesture decode sensitivity 2
uint8_t apds9960_set_conf (apds9960_handle_t *handle, apds9960_conf_t conf, apds9960_bool_t enable)
 set the configuration
uint8_t apds9960_get_conf (apds9960_handle_t *handle, apds9960_conf_t conf, apds9960_bool_t *enable)
 get the configuration
uint8_t apds9960_set_adc_integration_time (apds9960_handle_t *handle, uint8_t integration_time)
 set the adc integration time
uint8_t apds9960_get_adc_integration_time (apds9960_handle_t *handle, uint8_t *integration_time)
 get the adc integration time
uint8_t apds9960_adc_integration_time_convert_to_register (apds9960_handle_t *handle, float ms, uint8_t *reg)
 convert the adc integration time to the register raw data
uint8_t apds9960_adc_integration_time_convert_to_data (apds9960_handle_t *handle, uint8_t reg, float *ms)
 convert the register raw data to the integration time
uint8_t apds9960_set_wait_time (apds9960_handle_t *handle, uint8_t wait_time)
 set the wait time
uint8_t apds9960_get_wait_time (apds9960_handle_t *handle, uint8_t *wait_time)
 get the wait time
uint8_t apds9960_wait_time_convert_to_register (apds9960_handle_t *handle, float ms, uint8_t *reg)
 convert the wait time to the register raw data
uint8_t apds9960_wait_time_convert_to_data (apds9960_handle_t *handle, uint8_t reg, float *ms)
 convert the register raw data to the wait time
uint8_t apds9960_set_als_interrupt_low_threshold (apds9960_handle_t *handle, uint16_t threshold)
 set the als interrupt low threshold
uint8_t apds9960_get_als_interrupt_low_threshold (apds9960_handle_t *handle, uint16_t *threshold)
 get the als interrupt low threshold
uint8_t apds9960_set_als_interrupt_high_threshold (apds9960_handle_t *handle, uint16_t threshold)
 set the als interrupt high threshold
uint8_t apds9960_get_als_interrupt_high_threshold (apds9960_handle_t *handle, uint16_t *threshold)
 get the als interrupt high threshold
uint8_t apds9960_set_proximity_interrupt_low_threshold (apds9960_handle_t *handle, uint8_t threshold)
 set the proximity interrupt low threshold
uint8_t apds9960_get_proximity_interrupt_low_threshold (apds9960_handle_t *handle, uint8_t *threshold)
 get the proximity interrupt low threshold
uint8_t apds9960_set_proximity_interrupt_high_threshold (apds9960_handle_t *handle, uint8_t threshold)
 set the proximity interrupt high threshold
uint8_t apds9960_get_proximity_interrupt_high_threshold (apds9960_handle_t *handle, uint8_t *threshold)
 get the proximity interrupt high threshold
uint8_t apds9960_set_proximity_interrupt_cycle (apds9960_handle_t *handle, apds9960_proximity_interrupt_cycle_t cycle)
 set the proximity interrupt cycle
uint8_t apds9960_get_proximity_interrupt_cycle (apds9960_handle_t *handle, apds9960_proximity_interrupt_cycle_t *cycle)
 get the proximity interrupt cycle
uint8_t apds9960_set_als_interrupt_cycle (apds9960_handle_t *handle, apds9960_als_interrupt_cycle_t cycle)
 set the als interrupt cycle
uint8_t apds9960_get_als_interrupt_cycle (apds9960_handle_t *handle, apds9960_als_interrupt_cycle_t *cycle)
 get the als interrupt cycle
uint8_t apds9960_set_wait_long (apds9960_handle_t *handle, apds9960_bool_t enable)
 enable or disable the wait long
uint8_t apds9960_get_wait_long (apds9960_handle_t *handle, apds9960_bool_t *enable)
 get the wait long status
uint8_t apds9960_set_proximity_pulse_length (apds9960_handle_t *handle, apds9960_proximity_pulse_length_t len)
 set the proximity pulse length
uint8_t apds9960_get_proximity_pulse_length (apds9960_handle_t *handle, apds9960_proximity_pulse_length_t *len)
 get the proximity pulse length
uint8_t apds9960_set_proximity_pulse_count (apds9960_handle_t *handle, uint16_t count)
 set the proximity pulse count
uint8_t apds9960_get_proximity_pulse_count (apds9960_handle_t *handle, uint16_t *count)
 get the proximity pulse count
uint8_t apds9960_set_led_current (apds9960_handle_t *handle, apds9960_led_current_t current)
 set the led current
uint8_t apds9960_get_led_current (apds9960_handle_t *handle, apds9960_led_current_t *current)
 get the led current
uint8_t apds9960_set_proximity_gain (apds9960_handle_t *handle, apds9960_proximity_gain_t gain)
 set the proximity gain
uint8_t apds9960_get_proximity_gain (apds9960_handle_t *handle, apds9960_proximity_gain_t *gain)
 get the proximity gain
uint8_t apds9960_set_als_color_gain (apds9960_handle_t *handle, apds9960_als_color_gain_t gain)
 set the als color gain
uint8_t apds9960_get_als_color_gain (apds9960_handle_t *handle, apds9960_als_color_gain_t *gain)
 get the als color gain
uint8_t apds9960_set_saturation_interrupt (apds9960_handle_t *handle, apds9960_saturation_interrupt_t saturation, apds9960_bool_t enable)
 set the saturation interrupt
uint8_t apds9960_get_saturation_interrupt (apds9960_handle_t *handle, apds9960_saturation_interrupt_t saturation, apds9960_bool_t *enable)
 get the saturation interrupt
uint8_t apds9960_set_led_boost (apds9960_handle_t *handle, apds9960_led_boost_t boost)
 set the led boost
uint8_t apds9960_get_led_boost (apds9960_handle_t *handle, apds9960_led_boost_t *boost)
 get the led boost
uint8_t apds9960_get_status (apds9960_handle_t *handle, uint8_t *status)
 get the status
uint8_t apds9960_read_rgbc (apds9960_handle_t *handle, uint16_t *red, uint16_t *green, uint16_t *blue, uint16_t *clear)
 read the rgbc data
uint8_t apds9960_read_proximity (apds9960_handle_t *handle, uint8_t *proximity)
 read the proximity data
uint8_t apds9960_set_proximity_up_right_offset (apds9960_handle_t *handle, int8_t offset)
 set the proximity up right offset
uint8_t apds9960_get_proximity_up_right_offset (apds9960_handle_t *handle, int8_t *offset)
 get the proximity up right offset
uint8_t apds9960_set_proximity_down_left_offset (apds9960_handle_t *handle, int8_t offset)
 set the proximity down left offset
uint8_t apds9960_get_proximity_down_left_offset (apds9960_handle_t *handle, int8_t *offset)
 get the proximity down left offset
uint8_t apds9960_set_proximity_gain_compensation (apds9960_handle_t *handle, apds9960_bool_t enable)
 enable or disable the proximity gain compensation
uint8_t apds9960_get_proximity_gain_compensation (apds9960_handle_t *handle, apds9960_bool_t *enable)
 get the proximity gain compensation status
uint8_t apds9960_set_sleep_after_interrupt (apds9960_handle_t *handle, apds9960_bool_t enable)
 enable or disable sleeping after interrupt
uint8_t apds9960_get_sleep_after_interrupt (apds9960_handle_t *handle, apds9960_bool_t *enable)
 get the sleeping after interrupt status
uint8_t apds9960_set_proximity_mask (apds9960_handle_t *handle, apds9960_proximity_mask_t mask, apds9960_bool_t enable)
 enable or disable the proximity mask
uint8_t apds9960_get_proximity_mask (apds9960_handle_t *handle, apds9960_proximity_mask_t mask, apds9960_bool_t *enable)
 get the proximity mask status
uint8_t apds9960_set_gesture_proximity_enter_threshold (apds9960_handle_t *handle, uint8_t threshold)
 set the gesture proximity enter threshold
uint8_t apds9960_get_gesture_proximity_enter_threshold (apds9960_handle_t *handle, uint8_t *threshold)
 get the gesture proximity enter threshold
uint8_t apds9960_set_gesture_proximity_exit_threshold (apds9960_handle_t *handle, uint8_t threshold)
 set the gesture proximity exit threshold
uint8_t apds9960_get_gesture_proximity_exit_threshold (apds9960_handle_t *handle, uint8_t *threshold)
 get the gesture proximity exit threshold
uint8_t apds9960_set_gesture_fifo_threshold (apds9960_handle_t *handle, apds9960_gesture_fifo_threshold_t threshold)
 set the gesture fifo threshold
uint8_t apds9960_get_gesture_fifo_threshold (apds9960_handle_t *handle, apds9960_gesture_fifo_threshold_t *threshold)
 get the gesture fifo threshold
uint8_t apds9960_set_gesture_exit_persistence (apds9960_handle_t *handle, apds9960_gesture_exit_persistence_t persistence)
 set the gesture exit persistence
uint8_t apds9960_get_gesture_exit_persistence (apds9960_handle_t *handle, apds9960_gesture_exit_persistence_t *persistence)
 get the gesture exit persistence
uint8_t apds9960_set_gesture_exit_mask (apds9960_handle_t *handle, uint8_t mask)
 set the gesture exit mask
uint8_t apds9960_get_gesture_exit_mask (apds9960_handle_t *handle, uint8_t *mask)
 get the gesture exit mask
uint8_t apds9960_set_gesture_gain (apds9960_handle_t *handle, apds9960_gesture_gain_control_t gain)
 set the gesture gain
uint8_t apds9960_get_gesture_gain (apds9960_handle_t *handle, apds9960_gesture_gain_control_t *gain)
 get the gesture gain
uint8_t apds9960_set_gesture_led_current (apds9960_handle_t *handle, apds9960_gesture_led_current_t current)
 set the gesture led current
uint8_t apds9960_get_gesture_led_current (apds9960_handle_t *handle, apds9960_gesture_led_current_t *current)
 get the gesture led current
uint8_t apds9960_set_gesture_wait_time (apds9960_handle_t *handle, apds9960_gesture_wait_time_t t)
 set the gesture wait time
uint8_t apds9960_get_gesture_wait_time (apds9960_handle_t *handle, apds9960_gesture_wait_time_t *t)
 get the gesture wait time
uint8_t apds9960_set_gesture_up_offset (apds9960_handle_t *handle, int8_t offset)
 set the gesture up offset
uint8_t apds9960_get_gesture_up_offset (apds9960_handle_t *handle, int8_t *offset)
 get the gesture up offset
uint8_t apds9960_set_gesture_down_offset (apds9960_handle_t *handle, int8_t offset)
 set the gesture down offset
uint8_t apds9960_get_gesture_down_offset (apds9960_handle_t *handle, int8_t *offset)
 get the gesture down offset
uint8_t apds9960_set_gesture_left_offset (apds9960_handle_t *handle, int8_t offset)
 set the gesture left offset
uint8_t apds9960_get_gesture_left_offset (apds9960_handle_t *handle, int8_t *offset)
 get the gesture left offset
uint8_t apds9960_set_gesture_right_offset (apds9960_handle_t *handle, int8_t offset)
 set the gesture right offset
uint8_t apds9960_get_gesture_right_offset (apds9960_handle_t *handle, int8_t *offset)
 get the gesture right offset
uint8_t apds9960_set_gesture_pulse_length (apds9960_handle_t *handle, apds9960_gesture_pulse_length_t len)
 set the gesture pulse length
uint8_t apds9960_get_gesture_pulse_length (apds9960_handle_t *handle, apds9960_gesture_pulse_length_t *len)
 get the gesture pulse length
uint8_t apds9960_set_gesture_pulse_count (apds9960_handle_t *handle, uint16_t count)
 set the gesture pulse count
uint8_t apds9960_get_gesture_pulse_count (apds9960_handle_t *handle, uint16_t *count)
 get the gesture pulse count
uint8_t apds9960_set_gesture_dimension (apds9960_handle_t *handle, apds9960_gesture_dimension_select_t s)
 set the gesture dimension
uint8_t apds9960_get_gesture_dimension_select (apds9960_handle_t *handle, apds9960_gesture_dimension_select_t *s)
 get the gesture dimension
uint8_t apds9960_gesture_fifo_clear (apds9960_handle_t *handle)
 clear the gesture fifo status
uint8_t apds9960_set_gesture_interrupt (apds9960_handle_t *handle, apds9960_bool_t enable)
 enable or disable the gesture interrupt
uint8_t apds9960_get_gesture_interrupt (apds9960_handle_t *handle, apds9960_bool_t *enable)
 get the gesture interrupt status
uint8_t apds9960_set_gesture_mode (apds9960_handle_t *handle, apds9960_bool_t enable)
 enable or disable the gesture mode
uint8_t apds9960_get_gesture_mode (apds9960_handle_t *handle, apds9960_bool_t *enable)
 get the gesture mode status
uint8_t apds9960_get_gesture_fifo_level (apds9960_handle_t *handle, uint8_t *level)
 get the gesture fifo level
uint8_t apds9960_get_gesture_status (apds9960_handle_t *handle, uint8_t *status)
 get the gesture status
uint8_t apds9960_force_interrupt (apds9960_handle_t *handle)
 force an interrupt
uint8_t apds9960_proximity_interrupt_clear (apds9960_handle_t *handle)
 clear the proximity interrupt
uint8_t apds9960_als_interrupt_clear (apds9960_handle_t *handle)
 clear the als interrupt
uint8_t apds9960_all_non_gesture_interrupt_clear (apds9960_handle_t *handle)
 clear the all not gesture interrupt
uint8_t apds9960_read_gesture_fifo (apds9960_handle_t *handle, uint8_t(*data)[4], uint8_t *len)
 read data from the gesture fifo
uint8_t apds9960_set_reg (apds9960_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
 set the chip register
uint8_t apds9960_get_reg (apds9960_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
 get the chip register
uint8_t apds9960_info (apds9960_info_t *info)
 get chip's information

Detailed Description

driver apds9960 source file

Copyright (c) 2015 - present LibDriver All rights reserved

The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Version
1.0.0
Author
Shifeng Li
Date
2022-01-23

history

Date Version Author Description
2022/01/23 1.0 Shifeng Li first upload

Definition in file driver_apds9960.c.

Macro Definition Documentation

◆ APDS9960_ADDRESS

#define APDS9960_ADDRESS   0x72

iic address definition

iic address

Definition at line 55 of file driver_apds9960.c.

◆ APDS9960_REG_AICLEAR

#define APDS9960_REG_AICLEAR   0xE7

all non-gesture interrupts clear register

Definition at line 104 of file driver_apds9960.c.

◆ APDS9960_REG_AIHTH

#define APDS9960_REG_AIHTH   0x87

als interrupt high threshold high byte register

Definition at line 66 of file driver_apds9960.c.

◆ APDS9960_REG_AIHTL

#define APDS9960_REG_AIHTL   0x86

als interrupt high threshold low byte register

Definition at line 65 of file driver_apds9960.c.

◆ APDS9960_REG_AILTH

#define APDS9960_REG_AILTH   0x85

als interrupt low threshold high byte register

Definition at line 64 of file driver_apds9960.c.

◆ APDS9960_REG_AILTL

#define APDS9960_REG_AILTL   0x84

als interrupt low threshold low byte register

Definition at line 63 of file driver_apds9960.c.

◆ APDS9960_REG_ATIME

#define APDS9960_REG_ATIME   0x81

adc integration time register

Definition at line 61 of file driver_apds9960.c.

◆ APDS9960_REG_BDATAH

#define APDS9960_REG_BDATAH   0x9B

high byte of blue channel data register

Definition at line 83 of file driver_apds9960.c.

◆ APDS9960_REG_BDATAL

#define APDS9960_REG_BDATAL   0x9A

low byte of blue channel data register

Definition at line 82 of file driver_apds9960.c.

◆ APDS9960_REG_CDATAH

#define APDS9960_REG_CDATAH   0x95

high byte of clear channel data register

Definition at line 77 of file driver_apds9960.c.

◆ APDS9960_REG_CDATAL

#define APDS9960_REG_CDATAL   0x94

low byte of clear channel data register

Definition at line 76 of file driver_apds9960.c.

◆ APDS9960_REG_CICLEAR

#define APDS9960_REG_CICLEAR   0xE6

als clear channel interrupt clear register

Definition at line 103 of file driver_apds9960.c.

◆ APDS9960_REG_CONFIG1

#define APDS9960_REG_CONFIG1   0x8D

configuration register one register

Definition at line 70 of file driver_apds9960.c.

◆ APDS9960_REG_CONFIG2

#define APDS9960_REG_CONFIG2   0x90

configuration register two register

Definition at line 73 of file driver_apds9960.c.

◆ APDS9960_REG_CONFIG3

#define APDS9960_REG_CONFIG3   0x9F

configuration register three register

Definition at line 87 of file driver_apds9960.c.

◆ APDS9960_REG_CONTROL

#define APDS9960_REG_CONTROL   0x8F

gain control register

Definition at line 72 of file driver_apds9960.c.

◆ APDS9960_REG_ENABLE

#define APDS9960_REG_ENABLE   0x80

chip register definition

enable states and interrupts register

Definition at line 60 of file driver_apds9960.c.

◆ APDS9960_REG_GCONF1

#define APDS9960_REG_GCONF1   0xA2

gesture configuration one register

Definition at line 90 of file driver_apds9960.c.

◆ APDS9960_REG_GCONF2

#define APDS9960_REG_GCONF2   0xA3

gesture configuration two register

Definition at line 91 of file driver_apds9960.c.

◆ APDS9960_REG_GCONF3

#define APDS9960_REG_GCONF3   0xAA

gesture configuration three register

Definition at line 97 of file driver_apds9960.c.

◆ APDS9960_REG_GCONF4

#define APDS9960_REG_GCONF4   0xAB

gesture configuration four register

Definition at line 98 of file driver_apds9960.c.

◆ APDS9960_REG_GDATAH

#define APDS9960_REG_GDATAH   0x99

high byte of green channel data register

Definition at line 81 of file driver_apds9960.c.

◆ APDS9960_REG_GDATAL

#define APDS9960_REG_GDATAL   0x98

low byte of green channel data register

Definition at line 80 of file driver_apds9960.c.

◆ APDS9960_REG_GEXTH

#define APDS9960_REG_GEXTH   0xA1

gesture exit threshold register

Definition at line 89 of file driver_apds9960.c.

◆ APDS9960_REG_GFIFO_D

#define APDS9960_REG_GFIFO_D   0xFD

gesture fifo DOWN value register

Definition at line 106 of file driver_apds9960.c.

◆ APDS9960_REG_GFIFO_L

#define APDS9960_REG_GFIFO_L   0xFE

gesture fifo LEFT value register

Definition at line 107 of file driver_apds9960.c.

◆ APDS9960_REG_GFIFO_R

#define APDS9960_REG_GFIFO_R   0xFF

gesture fifo RIGHT value register

Definition at line 108 of file driver_apds9960.c.

◆ APDS9960_REG_GFIFO_U

#define APDS9960_REG_GFIFO_U   0xFC

gesture fifo UP value register

Definition at line 105 of file driver_apds9960.c.

◆ APDS9960_REG_GFLVL

#define APDS9960_REG_GFLVL   0xAE

gesture fifo level register

Definition at line 99 of file driver_apds9960.c.

◆ APDS9960_REG_GOFFSET_D

#define APDS9960_REG_GOFFSET_D   0xA5

gesture DOWN offset register

Definition at line 93 of file driver_apds9960.c.

◆ APDS9960_REG_GOFFSET_L

#define APDS9960_REG_GOFFSET_L   0xA7

gesture LEFT offset register

Definition at line 94 of file driver_apds9960.c.

◆ APDS9960_REG_GOFFSET_R

#define APDS9960_REG_GOFFSET_R   0xA9

gesture RIGHT offset register

Definition at line 95 of file driver_apds9960.c.

◆ APDS9960_REG_GOFFSET_U

#define APDS9960_REG_GOFFSET_U   0xA4

gesture UP offset register

Definition at line 92 of file driver_apds9960.c.

◆ APDS9960_REG_GPENTH

#define APDS9960_REG_GPENTH   0xA0

gesture proximity enter threshold register

Definition at line 88 of file driver_apds9960.c.

◆ APDS9960_REG_GPULSE

#define APDS9960_REG_GPULSE   0xA6

gesture pulse count and length register

Definition at line 96 of file driver_apds9960.c.

◆ APDS9960_REG_GSTATUS

#define APDS9960_REG_GSTATUS   0xAF

gesture status register

Definition at line 100 of file driver_apds9960.c.

◆ APDS9960_REG_ID

#define APDS9960_REG_ID   0x92

device id register

Definition at line 74 of file driver_apds9960.c.

◆ APDS9960_REG_IFORCE

#define APDS9960_REG_IFORCE   0xE4

force interrupt register

Definition at line 101 of file driver_apds9960.c.

◆ APDS9960_REG_PDATA

#define APDS9960_REG_PDATA   0x9C

proximity data register

Definition at line 84 of file driver_apds9960.c.

◆ APDS9960_REG_PERS

#define APDS9960_REG_PERS   0x8C

interrupt persistence filters register

Definition at line 69 of file driver_apds9960.c.

◆ APDS9960_REG_PICLEAR

#define APDS9960_REG_PICLEAR   0xE5

proximity interrupt clear register

Definition at line 102 of file driver_apds9960.c.

◆ APDS9960_REG_PIHT

#define APDS9960_REG_PIHT   0x8B

proximity interrupt high threshold register

Definition at line 68 of file driver_apds9960.c.

◆ APDS9960_REG_PILT

#define APDS9960_REG_PILT   0x89

proximity interrupt low threshold register

Definition at line 67 of file driver_apds9960.c.

◆ APDS9960_REG_POFFSET_DL

#define APDS9960_REG_POFFSET_DL   0x9E

proximity offset for DOWN and LEFT photo diodes register

Definition at line 86 of file driver_apds9960.c.

◆ APDS9960_REG_POFFSET_UR

#define APDS9960_REG_POFFSET_UR   0x9D

proximity offset for UP and RIGHT photo diodes register

Definition at line 85 of file driver_apds9960.c.

◆ APDS9960_REG_PPULSE

#define APDS9960_REG_PPULSE   0x8E

proximity pulse count and length register

Definition at line 71 of file driver_apds9960.c.

◆ APDS9960_REG_RDATAH

#define APDS9960_REG_RDATAH   0x97

high byte of red channel data register

Definition at line 79 of file driver_apds9960.c.

◆ APDS9960_REG_RDATAL

#define APDS9960_REG_RDATAL   0x96

low byte of red channel data register

Definition at line 78 of file driver_apds9960.c.

◆ APDS9960_REG_STATUS

#define APDS9960_REG_STATUS   0x93

device status register

Definition at line 75 of file driver_apds9960.c.

◆ APDS9960_REG_WTIME

#define APDS9960_REG_WTIME   0x83

wait time register

Definition at line 62 of file driver_apds9960.c.

◆ CHIP_NAME

#define CHIP_NAME   "Broadcom APDS9960"

chip information definition

chip name

Definition at line 43 of file driver_apds9960.c.

◆ DRIVER_VERSION

#define DRIVER_VERSION   1000

driver version

Definition at line 50 of file driver_apds9960.c.

◆ MANUFACTURER_NAME

#define MANUFACTURER_NAME   "Broadcom"

manufacturer name

Definition at line 44 of file driver_apds9960.c.

◆ MAX_CURRENT

#define MAX_CURRENT   100.0f

chip max current

Definition at line 47 of file driver_apds9960.c.

◆ SUPPLY_VOLTAGE_MAX

#define SUPPLY_VOLTAGE_MAX   3.6f

chip max supply voltage

Definition at line 46 of file driver_apds9960.c.

◆ SUPPLY_VOLTAGE_MIN

#define SUPPLY_VOLTAGE_MIN   2.4f

chip min supply voltage

Definition at line 45 of file driver_apds9960.c.

◆ TEMPERATURE_MAX

#define TEMPERATURE_MAX   85.0f

chip max operating temperature

Definition at line 49 of file driver_apds9960.c.

◆ TEMPERATURE_MIN

#define TEMPERATURE_MIN   -40.0f

chip min operating temperature

Definition at line 48 of file driver_apds9960.c.