vl53l1_register_structs.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2017, STMicroelectronics - All Rights Reserved
3 *
4 * This file is part of VL53L1 Core and is dual licensed,
5 * either 'STMicroelectronics
6 * Proprietary license'
7 * or 'BSD 3-clause "New" or "Revised" License' , at your option.
8 *
9 ********************************************************************************
10 *
11 * 'STMicroelectronics Proprietary license'
12 *
13 ********************************************************************************
14 *
15 * License terms: STMicroelectronics Proprietary in accordance with licensing
16 * terms at www.st.com/sla0081
17 *
18 * STMicroelectronics confidential
19 * Reproduction and Communication of this document is strictly prohibited unless
20 * specifically authorized in writing by STMicroelectronics.
21 *
22 *
23 ********************************************************************************
24 *
25 * Alternatively, VL53L1 Core may be distributed under the terms of
26 * 'BSD 3-clause "New" or "Revised" License', in which case the following
27 * provisions apply instead of the ones mentioned above :
28 *
29 ********************************************************************************
30 *
31 * License terms: BSD 3-clause "New" or "Revised" License.
32 *
33 * Redistribution and use in source and binary forms, with or without
34 * modification, are permitted provided that the following conditions are met:
35 *
36 * 1. Redistributions of source code must retain the above copyright notice, this
37 * list of conditions and the following disclaimer.
38 *
39 * 2. Redistributions in binary form must reproduce the above copyright notice,
40 * this list of conditions and the following disclaimer in the documentation
41 * and/or other materials provided with the distribution.
42 *
43 * 3. Neither the name of the copyright holder nor the names of its contributors
44 * may be used to endorse or promote products derived from this software
45 * without specific prior written permission.
46 *
47 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
48 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
49 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
50 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
51 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
52 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
53 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
54 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
55 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
56 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
57 *
58 *
59 ********************************************************************************
60 *
61 */
62 
68 #ifndef _VL53L1_REGISTER_STRUCTS_H_
69 #define _VL53L1_REGISTER_STRUCTS_H_
70 
71 #include "vl53l1_types.h"
72 #include "vl53l1_register_map.h"
73 
74 #define VL53L1_STATIC_NVM_MANAGED_I2C_INDEX VL53L1_I2C_SLAVE__DEVICE_ADDRESS
75 #define VL53L1_CUSTOMER_NVM_MANAGED_I2C_INDEX VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_0
76 #define VL53L1_STATIC_CONFIG_I2C_INDEX VL53L1_DSS_CONFIG__TARGET_TOTAL_RATE_MCPS
77 #define VL53L1_GENERAL_CONFIG_I2C_INDEX VL53L1_GPH_CONFIG__STREAM_COUNT_UPDATE_VALUE
78 #define VL53L1_TIMING_CONFIG_I2C_INDEX VL53L1_MM_CONFIG__TIMEOUT_MACROP_A_HI
79 #define VL53L1_DYNAMIC_CONFIG_I2C_INDEX VL53L1_SYSTEM__GROUPED_PARAMETER_HOLD_0
80 #define VL53L1_SYSTEM_CONTROL_I2C_INDEX VL53L1_POWER_MANAGEMENT__GO1_POWER_FORCE
81 #define VL53L1_SYSTEM_RESULTS_I2C_INDEX VL53L1_RESULT__INTERRUPT_STATUS
82 #define VL53L1_CORE_RESULTS_I2C_INDEX VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0
83 #define VL53L1_DEBUG_RESULTS_I2C_INDEX VL53L1_PHASECAL_RESULT__REFERENCE_PHASE
84 #define VL53L1_NVM_COPY_DATA_I2C_INDEX VL53L1_IDENTIFICATION__MODEL_ID
85 #define VL53L1_PREV_SHADOW_SYSTEM_RESULTS_I2C_INDEX VL53L1_PREV_SHADOW_RESULT__INTERRUPT_STATUS
86 #define VL53L1_PREV_SHADOW_CORE_RESULTS_I2C_INDEX VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0
87 #define VL53L1_PATCH_DEBUG_I2C_INDEX VL53L1_RESULT__DEBUG_STATUS
88 #define VL53L1_GPH_GENERAL_CONFIG_I2C_INDEX VL53L1_GPH__SYSTEM__THRESH_RATE_HIGH
89 #define VL53L1_GPH_STATIC_CONFIG_I2C_INDEX VL53L1_GPH__DSS_CONFIG__ROI_MODE_CONTROL
90 #define VL53L1_GPH_TIMING_CONFIG_I2C_INDEX VL53L1_GPH__MM_CONFIG__TIMEOUT_MACROP_A_HI
91 #define VL53L1_FW_INTERNAL_I2C_INDEX VL53L1_FIRMWARE__INTERNAL_STREAM_COUNT_DIV
92 #define VL53L1_PATCH_RESULTS_I2C_INDEX VL53L1_DSS_CALC__ROI_CTRL
93 #define VL53L1_SHADOW_SYSTEM_RESULTS_I2C_INDEX VL53L1_SHADOW_PHASECAL_RESULT__VCSEL_START
94 #define VL53L1_SHADOW_CORE_RESULTS_I2C_INDEX VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0
95 
96 #define VL53L1_STATIC_NVM_MANAGED_I2C_SIZE_BYTES 11
97 #define VL53L1_CUSTOMER_NVM_MANAGED_I2C_SIZE_BYTES 23
98 #define VL53L1_STATIC_CONFIG_I2C_SIZE_BYTES 32
99 #define VL53L1_GENERAL_CONFIG_I2C_SIZE_BYTES 22
100 #define VL53L1_TIMING_CONFIG_I2C_SIZE_BYTES 23
101 #define VL53L1_DYNAMIC_CONFIG_I2C_SIZE_BYTES 18
102 #define VL53L1_SYSTEM_CONTROL_I2C_SIZE_BYTES 5
103 #define VL53L1_SYSTEM_RESULTS_I2C_SIZE_BYTES 44
104 #define VL53L1_CORE_RESULTS_I2C_SIZE_BYTES 33
105 #define VL53L1_DEBUG_RESULTS_I2C_SIZE_BYTES 56
106 #define VL53L1_NVM_COPY_DATA_I2C_SIZE_BYTES 49
107 #define VL53L1_PREV_SHADOW_SYSTEM_RESULTS_I2C_SIZE_BYTES 44
108 #define VL53L1_PREV_SHADOW_CORE_RESULTS_I2C_SIZE_BYTES 33
109 #define VL53L1_PATCH_DEBUG_I2C_SIZE_BYTES 2
110 #define VL53L1_GPH_GENERAL_CONFIG_I2C_SIZE_BYTES 5
111 #define VL53L1_GPH_STATIC_CONFIG_I2C_SIZE_BYTES 6
112 #define VL53L1_GPH_TIMING_CONFIG_I2C_SIZE_BYTES 16
113 #define VL53L1_FW_INTERNAL_I2C_SIZE_BYTES 2
114 #define VL53L1_PATCH_RESULTS_I2C_SIZE_BYTES 90
115 #define VL53L1_SHADOW_SYSTEM_RESULTS_I2C_SIZE_BYTES 82
116 #define VL53L1_SHADOW_CORE_RESULTS_I2C_SIZE_BYTES 33
117 
118 
128 typedef struct {
232 
233 
243 typedef struct {
405 
406 
416 typedef struct {
732 
733 
743 typedef struct {
921 
922 
932 typedef struct {
1094 
1095 
1105 typedef struct {
1279 
1280 
1290 typedef struct {
1348 
1349 
1359 typedef struct {
1617 
1618 
1628 typedef struct {
1720 
1721 
1731 typedef struct {
2197 
2198 
2208 typedef struct {
2691 
2692 
2702 typedef struct {
2949 
2950 
2960 typedef struct {
3052 
3053 
3063 typedef struct {
3085 
3086 
3096 typedef struct {
3133 
3134 
3144 typedef struct {
3197 
3198 
3208 typedef struct {
3350 
3351 
3361 typedef struct {
3383 
3384 
3394 typedef struct {
3997 
3998 
4008 typedef struct {
4296 
4297 
4307 typedef struct {
4399 
4400 
4401 #endif
4402 
uint16_t prev_shadow_result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0
short int16_t
Typedef defining 16 bit short type. The developer should modify this to suit the platform being deplo...
Definition: vl53l1_types.h:128
VL53L1 Register Map definitions.
int int32_t
Typedef defining 32 bit int type. The developer should modify this to suit the platform being deploye...
Definition: vl53l1_types.h:118
uint16_t shadow_result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0
VL53L1 types definition.
uint16_t result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0
uint8_t gph__roi_config__user_roi_requested_global_xy_size
unsigned short uint16_t
Typedef defining 16 bit unsigned short type. The developer should modify this to suit the platform be...
Definition: vl53l1_types.h:123
unsigned char uint8_t
Typedef defining 8 bit unsigned char type. The developer should modify this to suit the platform bein...
Definition: vl53l1_types.h:133
unsigned int uint32_t
Typedef defining 32 bit unsigned int type. The developer should modify this to suit the platform bein...
Definition: vl53l1_types.h:113


vl53l1x
Author(s):
autogenerated on Sat Dec 10 2022 03:15:50