Register definitions for ST VL6180X Ranging and Ambient Light Sensing (ALS) module. More...
Register definitions for ST VL6180X Ranging and Ambient Light Sensing (ALS) module.
Definition in file vl6180x_regs.h.
Go to the source code of this file.
Register addresses | |
#define | VL6180X_REG_MODEL_ID (0x00) |
Device ID. | |
#define | VL6180X_REG_MODEL_REV_MAJOR (0x01) |
Device revision (major) | |
#define | VL6180X_REG_MODEL_REV_MINOR (0x02) |
Device revision (minor) | |
#define | VL6180X_REG_MODULE_REV_MAJOR (0x03) |
Module revision (major) | |
#define | VL6180X_REG_MODULE_REV_MINOR (0x04) |
Module revision (minor) | |
#define | VL6180X_REG_GPIO0_MODE (0x10) |
GPIO0 mode definition. | |
#define | VL6180X_REG_GPIO1_MODE (0x11) |
GPIO1 mode definition. | |
#define | VL6180X_REG_HISTORY_CTRL (0x12) |
ALS and Ranging history control. | |
#define | VL6180X_REG_INT_CONFIG (0x14) |
Interrupt mode config. | |
#define | VL6180X_REG_INT_CLR (0x15) |
Interrupt clear. | |
#define | VL6180X_REG_FRESH_RST (0x16) |
Fresh out of reset bit. | |
#define | VL6180X_REG_RNG_START (0x18) |
Range measurement start. | |
#define | VL6180X_REG_RNG_THRESH_HI (0x19) |
Range measurement high threshold. | |
#define | VL6180X_REG_RNG_THRESH_LO (0x1a) |
Range measurement low threshold. | |
#define | VL6180X_REG_RNG_PERIOD (0x1b) |
Range measurement period in continuous mode. | |
#define | VL6180X_REG_RNG_MAX_TIME (0x1c) |
Range measurement time limit. | |
#define | VL6180X_REG_RNG_VALUE (0x62) |
Range 8-bit value in mm. | |
#define | VL6180X_REG_ALS_START (0x38) |
ALS measurement start. | |
#define | VL6180X_REG_ALS_THRESH_HI (0x3a) |
ALS measurement high threshold. | |
#define | VL6180X_REG_ALS_THRESH_LO (0x3c) |
ALS measurement low threshold. | |
#define | VL6180X_REG_ALS_PERIOD (0x3e) |
ALS measurement period in continuous mode. | |
#define | VL6180X_REG_ALS_GAIN (0x3f) |
ALS analogue gain. | |
#define | VL6180X_REG_ALS_INT_TIME (0x40) |
ALS integration time. | |
#define | VL6180X_REG_ALS_VALUE (0x50) |
ALS 16-bit count value. | |
#define | VL6180X_REG_RNG_STATUS (0x4d) |
Range measurement status. | |
#define | VL6180X_REG_ALS_STATUS (0x4e) |
ALS measurement status. | |
#define | VL6180X_REG_INT_STATUS (0x4f) |
Interrupt status. | |
#define | VL6180X_REG_I2C_ADDR (0x212) |
Programmable device address. | |
#define | VL6180X_REG_INTERLEAVED_MODE (0x2a3) |
Interleaved mode enable. | |
Register structures | |
#define | VL6180X_RNG_MODE_CONT (0x02) |
Continuous range measurement mode. | |
#define | VL6180X_RNG_START_STOP (0x01) |
Start/stop range measurement. | |
#define | VL6180X_ALS_MODE_CONT (0x02) |
ALS measurement mode. | |
#define | VL6180X_ALS_START_STOP (0x01) |
Start/stop ALS measurement. | |
#define | VL6180X_RNG_ERR_CODE (0xf0) |
Range measurement error code mask. | |
#define | VL6180X_RNG_ERR_CODE_S (4) |
Range measurement error code shift. | |
#define | VL6180X_RNG_DEVICE_RDY (0x01) |
Range device ready. | |
#define | VL6180X_ALS_ERR_CODE (0xf0) |
ALS measurement error code mask. | |
#define | VL6180X_ALS_ERR_CODE_S (4) |
ALS measurement error code shift. | |
#define | VL6180X_ALS_DEVICE_RDY (0x01) |
ALS device ready. | |
#define | VL6180X_ALS_GAIN_LIGHT (0x07) |
ALS analogue gain mask (light channel) | |
#define | VL6180X_INT_RNG (0x07) |
RNG interrupt mask. | |
#define | VL6180X_INT_RNG_S (0) |
RNG interrupt shift. | |
#define | VL6180X_INT_ALS (0x38) |
ALS interrupt mask. | |
#define | VL6180X_INT_ALS_S (3) |
ALS interrupt shift. | |
#define | VL6180X_ERR_INT (0xc0) |
Error interrupt mask (VL6180X_REG_INT_STATUS only) | |
#define | VL6180X_ERR_INT_S (6) |
Error interrupt shift. | |
#define | VL6180X_INT_RNG_LOW (0x01) |
range < lower threshold | |
#define | VL6180X_INT_RNG_HIGH (0x02) |
range > upper threshold | |
#define | VL6180X_INT_RNG_OUT (0x03) |
range < lower threshold or range > upper threshold | |
#define | VL6180X_INT_RNG_DRDY (0x04) |
new range data are ready to be read | |
#define | VL6180X_INT_ALS_LOW (0x08) |
ALS < lower threshold. | |
#define | VL6180X_INT_ALS_HIGH (0x10) |
ALS > upper threshold. | |
#define | VL6180X_INT_ALS_OUT (0x18) |
ALS < lower threshold or ALS > upper threshold. | |
#define | VL6180X_INT_ALS_DRDY (0x20) |
new ALS data are ready to be read | |
#define | VL6180X_INT_ERR_LASER (0x40) |
Laser safety error. | |
#define | VL6180X_INT_ERR_PLL (0x80) |
PLL error. | |
#define | VL6180X_CLR_ERR_INT (0x04) |
Clear error interrupt. | |
#define | VL6180X_CLR_ALS_INT (0x02) |
Clear ALS interrupt. | |
#define | VL6180X_CLR_RNG_INT (0x01) |
Clear range interrupt. | |
#define | VL6180X_CLR_ALL_INT (0x07) |
Clear all interrupts. | |
#define | VL6180X_GPIO0_SHUT (0x40) |
GPIO0 shutdown function mask. | |
#define | VL6180X_GPIO0_SHUT_ON (0x40) |
GPIO0 shutdown function enabled. | |
#define | VL6180X_GPIO0_SHUT_OFF (0x00) |
GPIO0 shutdown function disabled. | |
#define | VL6180X_GPIO0_POL (0x20) |
GPIO0 polarity mask. | |
#define | VL6180X_GPIO0_POL_LOW (0x00) |
GPIO0 polarity is low. | |
#define | VL6180X_GPIO0_POL_HIGH (0x20) |
GPIO0 polarity is high. | |
#define | VL6180X_GPIO0_FUNC (0x1e) |
GPIO0 function mask. | |
#define | VL6180X_GPIO0_FUNC_OFF (0x00) |
GPIO0 function off. | |
#define | VL6180X_GPIO0_FUNC_ON (0x10) |
GPIO0 function on. | |
#define | VL6180X_GPIO1_POL (0x20) |
GPIO1 polarity mask. | |
#define | VL6180X_GPIO1_POL_LOW (0x00) |
GPIO1 polarity is low. | |
#define | VL6180X_GPIO1_POL_HIGH (0x20) |
GPIO1 polarity is high. | |
#define | VL6180X_GPIO1_FUNC (0x1e) |
GPIO1 function mask. | |
#define | VL6180X_GPIO1_FUNC_OFF (0x00) |
GPIO1 function off. | |
#define | VL6180X_GPIO1_FUNC_ON (0x10) |
GPIO1 function on. | |
Default register values | |
These values are the register values after reset or overwritten at boot-up by NVM contents. | |
#define | VL6180X_MODEL_ID (0xb4) |
VNCL6180 Device ID. | |