Rename library

Dependencies:   X_NUCLEO_COMMON ST_INTERFACES

Dependents:   VL53L3CX_NoShield_1Sensor_poll_Mb06x VL53L3_NoShield_1Sensor_polling_Mb63 X_NUCLEO_53L3A2 53L3A2_Ranging

Committer:
Charles MacNeill
Date:
Wed Jul 14 12:45:49 2021 +0100
Revision:
5:89031b2f5316
Child:
6:df30b960b7dc
The class files now just are wrappers for the files in the "MODULES" directory.The porting directory includes the mbed interface

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Charles MacNeill 5:89031b2f5316 1 /**
Charles MacNeill 5:89031b2f5316 2 ******************************************************************************
Charles MacNeill 5:89031b2f5316 3 * @file vl53l3x_class.cpp
Charles MacNeill 5:89031b2f5316 4 * @author CGM
Charles MacNeill 5:89031b2f5316 5 * @version V0.0.1
Charles MacNeill 5:89031b2f5316 6 * @date 14-December-2021
Charles MacNeill 5:89031b2f5316 7 * @brief Implementation file for the VL53LX driver class
Charles MacNeill 5:89031b2f5316 8 ******************************************************************************
Charles MacNeill 5:89031b2f5316 9 * @attention
Charles MacNeill 5:89031b2f5316 10 *
Charles MacNeill 5:89031b2f5316 11 * <h2><center>&copy; COPYRIGHT(c) 2021 STMicroelectronics</center></h2>
Charles MacNeill 5:89031b2f5316 12 *
Charles MacNeill 5:89031b2f5316 13 * Redistribution and use in source and binary forms, with or without modification,
Charles MacNeill 5:89031b2f5316 14 * are permitted provided that the following conditions are met:
Charles MacNeill 5:89031b2f5316 15 * 1. Redistributions of source code must retain the above copyright notice,
Charles MacNeill 5:89031b2f5316 16 * this list of conditions and the following disclaimer.
Charles MacNeill 5:89031b2f5316 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
Charles MacNeill 5:89031b2f5316 18 * this list of conditions and the following disclaimer in the documentation
Charles MacNeill 5:89031b2f5316 19 * and/or other materials provided with the distribution.
Charles MacNeill 5:89031b2f5316 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Charles MacNeill 5:89031b2f5316 21 * may be used to endorse or promote products derived from this software
Charles MacNeill 5:89031b2f5316 22 * without specific prior written permission.
Charles MacNeill 5:89031b2f5316 23 *
Charles MacNeill 5:89031b2f5316 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Charles MacNeill 5:89031b2f5316 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Charles MacNeill 5:89031b2f5316 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Charles MacNeill 5:89031b2f5316 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Charles MacNeill 5:89031b2f5316 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Charles MacNeill 5:89031b2f5316 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Charles MacNeill 5:89031b2f5316 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Charles MacNeill 5:89031b2f5316 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Charles MacNeill 5:89031b2f5316 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Charles MacNeill 5:89031b2f5316 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Charles MacNeill 5:89031b2f5316 34 *
Charles MacNeill 5:89031b2f5316 35 ******************************************************************************
Charles MacNeill 5:89031b2f5316 36 * This is just a CPP wrapper around the C files in the module directory which
Charles MacNeill 5:89031b2f5316 37 * are from the bare-driver release.
Charles MacNeill 5:89031b2f5316 38 */
Charles MacNeill 5:89031b2f5316 39
Charles MacNeill 5:89031b2f5316 40
Charles MacNeill 5:89031b2f5316 41 /* Includes */
Charles MacNeill 5:89031b2f5316 42 #include <stdlib.h>
Charles MacNeill 5:89031b2f5316 43
Charles MacNeill 5:89031b2f5316 44 #include "mbed.h"
Charles MacNeill 5:89031b2f5316 45
Charles MacNeill 5:89031b2f5316 46 #include "pinmap.h"
Charles MacNeill 5:89031b2f5316 47 //#include "Arduino.h"
Charles MacNeill 5:89031b2f5316 48 #include "vl53l3cx_class.h"
Charles MacNeill 5:89031b2f5316 49 #include "vl53L3_I2c.h"
Charles MacNeill 5:89031b2f5316 50 #include "vl53lx_platform.h"
Charles MacNeill 5:89031b2f5316 51
Charles MacNeill 5:89031b2f5316 52 #include "vl53lx_ll_def.h"
Charles MacNeill 5:89031b2f5316 53
Charles MacNeill 5:89031b2f5316 54
Charles MacNeill 5:89031b2f5316 55 #include "vl53lx_core_support.h"
Charles MacNeill 5:89031b2f5316 56 #include "vl53lx_def.h"
Charles MacNeill 5:89031b2f5316 57 #include "vl53lx_api_calibration.h"
Charles MacNeill 5:89031b2f5316 58 #include "vl53lx_core.h"
Charles MacNeill 5:89031b2f5316 59 #include "vl53lx_api.h"
Charles MacNeill 5:89031b2f5316 60 #include "vl53lx_wait.h"
Charles MacNeill 5:89031b2f5316 61 #include "vl53lx_register_settings.h"
Charles MacNeill 5:89031b2f5316 62 #include "vl53lx_register_funcs.h"
Charles MacNeill 5:89031b2f5316 63 #include "vl53lx_platform_ipp.h"
Charles MacNeill 5:89031b2f5316 64 #include "vl53lx_nvm.h"
Charles MacNeill 5:89031b2f5316 65 #include "vl53lx_api_core.h"
Charles MacNeill 5:89031b2f5316 66 #include "vl53lx_hist_map.h"
Charles MacNeill 5:89031b2f5316 67 #include "vl53lx_api_preset_modes.h"
Charles MacNeill 5:89031b2f5316 68 #include "vl53lx_xtalk.h"
Charles MacNeill 5:89031b2f5316 69 #include "vl53lx_hist_core.h "
Charles MacNeill 5:89031b2f5316 70 #include "vl53lx_hist_algos_gen3.h"
Charles MacNeill 5:89031b2f5316 71 #include "vl53lx_hist_algos_gen4.h"
Charles MacNeill 5:89031b2f5316 72 #include "vl53lx_dmax.h"
Charles MacNeill 5:89031b2f5316 73 #include "vl53lx_sigma_estimate.h"
Charles MacNeill 5:89031b2f5316 74 #include "vl53lx_hist_core.h"
Charles MacNeill 5:89031b2f5316 75 #include "vl53lx_hist_funcs.h"
Charles MacNeill 5:89031b2f5316 76 #include "vl53lx_silicon_core.h"
Charles MacNeill 5:89031b2f5316 77
Charles MacNeill 5:89031b2f5316 78
Charles MacNeill 5:89031b2f5316 79
Charles MacNeill 5:89031b2f5316 80 #define TEMP_BUF_SIZE 80
Charles MacNeill 5:89031b2f5316 81
Charles MacNeill 5:89031b2f5316 82 VL53LX_Error VL53L3CX::VL53L3CX_I2CWrite(uint8_t DeviceAddr, uint16_t RegisterAddr, uint8_t *pBuffer, uint16_t NumByteToWrite)
Charles MacNeill 5:89031b2f5316 83 {
Charles MacNeill 5:89031b2f5316 84
Charles MacNeill 5:89031b2f5316 85 return i2c_inst->VL53L3_i2c_write(pBuffer,DeviceAddr,RegisterAddr,NumByteToWrite);
Charles MacNeill 5:89031b2f5316 86 }
Charles MacNeill 5:89031b2f5316 87
Charles MacNeill 5:89031b2f5316 88
Charles MacNeill 5:89031b2f5316 89 VL53LX_Error VL53L3CX::VL53L3CX_I2CRead(uint8_t DeviceAddr, uint16_t RegisterAddr, uint8_t *pBuffer, uint16_t NumByteToRead)
Charles MacNeill 5:89031b2f5316 90 {
Charles MacNeill 5:89031b2f5316 91
Charles MacNeill 5:89031b2f5316 92 return i2c_inst->VL53L3_i2c_read(pBuffer,DeviceAddr,RegisterAddr,NumByteToRead);
Charles MacNeill 5:89031b2f5316 93 }
Charles MacNeill 5:89031b2f5316 94
Charles MacNeill 5:89031b2f5316 95
Charles MacNeill 5:89031b2f5316 96 VL53LX_Error VL53L3CX::VL53L3CX_GetTickCount(
Charles MacNeill 5:89031b2f5316 97 uint32_t *ptick_count_ms)
Charles MacNeill 5:89031b2f5316 98 {
Charles MacNeill 5:89031b2f5316 99
Charles MacNeill 5:89031b2f5316 100 return VL53LX_GetTickCount(Dev,ptick_count_ms);
Charles MacNeill 5:89031b2f5316 101
Charles MacNeill 5:89031b2f5316 102 /* Returns current tick count in [ms] */
Charles MacNeill 5:89031b2f5316 103
Charles MacNeill 5:89031b2f5316 104 }
Charles MacNeill 5:89031b2f5316 105
Charles MacNeill 5:89031b2f5316 106
Charles MacNeill 5:89031b2f5316 107
Charles MacNeill 5:89031b2f5316 108 VL53LX_Error VL53L3CX::VL53L3CX_WaitUs(VL53LX_Dev_t *pdev, int32_t wait_num_us)
Charles MacNeill 5:89031b2f5316 109 {
Charles MacNeill 5:89031b2f5316 110 // (void)pdev;
Charles MacNeill 5:89031b2f5316 111 //delay(wait_us / 1000);
Charles MacNeill 5:89031b2f5316 112 wait_ms(wait_num_us/1000);
Charles MacNeill 5:89031b2f5316 113 return VL53LX_ERROR_NONE;
Charles MacNeill 5:89031b2f5316 114 }
Charles MacNeill 5:89031b2f5316 115
Charles MacNeill 5:89031b2f5316 116
Charles MacNeill 5:89031b2f5316 117 VL53LX_Error VL53L3CX::VL53L3CX_WaitMs(VL53LX_DEV Dev, int32_t wait_num_ms)
Charles MacNeill 5:89031b2f5316 118 {
Charles MacNeill 5:89031b2f5316 119 return VL53LX_WaitMs(Dev,wait_num_ms);
Charles MacNeill 5:89031b2f5316 120 }
Charles MacNeill 5:89031b2f5316 121
Charles MacNeill 5:89031b2f5316 122
Charles MacNeill 5:89031b2f5316 123 VL53LX_Error VL53L3CX::VL53L3CX_WaitValueMaskEx(
Charles MacNeill 5:89031b2f5316 124 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 125 uint32_t timeout_ms,
Charles MacNeill 5:89031b2f5316 126 uint16_t index,
Charles MacNeill 5:89031b2f5316 127 uint8_t value,
Charles MacNeill 5:89031b2f5316 128 uint8_t mask,
Charles MacNeill 5:89031b2f5316 129 uint32_t poll_delay_ms)
Charles MacNeill 5:89031b2f5316 130 {
Charles MacNeill 5:89031b2f5316 131
Charles MacNeill 5:89031b2f5316 132 return VL53LX_WaitValueMaskEx(
Charles MacNeill 5:89031b2f5316 133 Dev,
Charles MacNeill 5:89031b2f5316 134 timeout_ms,
Charles MacNeill 5:89031b2f5316 135 index,
Charles MacNeill 5:89031b2f5316 136 value,
Charles MacNeill 5:89031b2f5316 137 mask,
Charles MacNeill 5:89031b2f5316 138 poll_delay_ms);
Charles MacNeill 5:89031b2f5316 139
Charles MacNeill 5:89031b2f5316 140 }
Charles MacNeill 5:89031b2f5316 141
Charles MacNeill 5:89031b2f5316 142
Charles MacNeill 5:89031b2f5316 143
Charles MacNeill 5:89031b2f5316 144 /* vl53lx_api_core.c */
Charles MacNeill 5:89031b2f5316 145
Charles MacNeill 5:89031b2f5316 146
Charles MacNeill 5:89031b2f5316 147
Charles MacNeill 5:89031b2f5316 148 VL53LX_Error VL53L3CX::VL53L3CX_load_patch()
Charles MacNeill 5:89031b2f5316 149 {
Charles MacNeill 5:89031b2f5316 150
Charles MacNeill 5:89031b2f5316 151 return VL53LX_load_patch(Dev);
Charles MacNeill 5:89031b2f5316 152 }
Charles MacNeill 5:89031b2f5316 153
Charles MacNeill 5:89031b2f5316 154
Charles MacNeill 5:89031b2f5316 155
Charles MacNeill 5:89031b2f5316 156 VL53LX_Error VL53L3CX::VL53L3CX_unload_patch()
Charles MacNeill 5:89031b2f5316 157 {
Charles MacNeill 5:89031b2f5316 158 return VL53LX_unload_patch(Dev);
Charles MacNeill 5:89031b2f5316 159 }
Charles MacNeill 5:89031b2f5316 160
Charles MacNeill 5:89031b2f5316 161 VL53LX_Error VL53L3CX::VL53L3CX_get_version(VL53LX_ll_version_t *pdata)
Charles MacNeill 5:89031b2f5316 162 {
Charles MacNeill 5:89031b2f5316 163 return VL53LX_get_version(Dev, pdata);
Charles MacNeill 5:89031b2f5316 164 }
Charles MacNeill 5:89031b2f5316 165
Charles MacNeill 5:89031b2f5316 166
Charles MacNeill 5:89031b2f5316 167
Charles MacNeill 5:89031b2f5316 168
Charles MacNeill 5:89031b2f5316 169
Charles MacNeill 5:89031b2f5316 170 VL53LX_Error VL53L3CX::VL53L3CX_data_init(uint8_t read_p2p_data)
Charles MacNeill 5:89031b2f5316 171 {
Charles MacNeill 5:89031b2f5316 172 return VL53LX_data_init(Dev,read_p2p_data);
Charles MacNeill 5:89031b2f5316 173 }
Charles MacNeill 5:89031b2f5316 174
Charles MacNeill 5:89031b2f5316 175 VL53LX_Error VL53L3CX::VL53L3CX_read_p2p_data()
Charles MacNeill 5:89031b2f5316 176 {
Charles MacNeill 5:89031b2f5316 177 return VL53LX_read_p2p_data(Dev);
Charles MacNeill 5:89031b2f5316 178 }
Charles MacNeill 5:89031b2f5316 179
Charles MacNeill 5:89031b2f5316 180
Charles MacNeill 5:89031b2f5316 181
Charles MacNeill 5:89031b2f5316 182
Charles MacNeill 5:89031b2f5316 183 VL53LX_Error VL53L3CX::VL53L3CX_set_part_to_part_data(VL53LX_calibration_data_t *pcal_data)
Charles MacNeill 5:89031b2f5316 184 {
Charles MacNeill 5:89031b2f5316 185 return VL53LX_set_part_to_part_data(Dev, pcal_data);
Charles MacNeill 5:89031b2f5316 186 }
Charles MacNeill 5:89031b2f5316 187
Charles MacNeill 5:89031b2f5316 188 VL53LX_Error VL53L3CX::VL53L3CX_get_part_to_part_data(VL53LX_calibration_data_t *pcal_data)
Charles MacNeill 5:89031b2f5316 189 {
Charles MacNeill 5:89031b2f5316 190 return VL53LX_get_part_to_part_data(Dev, pcal_data);
Charles MacNeill 5:89031b2f5316 191 }
Charles MacNeill 5:89031b2f5316 192
Charles MacNeill 5:89031b2f5316 193 VL53LX_Error VL53L3CX::VL53L3CX_set_inter_measurement_period_ms(
Charles MacNeill 5:89031b2f5316 194 uint32_t inter_measurement_period_ms)
Charles MacNeill 5:89031b2f5316 195 {
Charles MacNeill 5:89031b2f5316 196 return VL53LX_set_inter_measurement_period_ms(Dev,inter_measurement_period_ms);
Charles MacNeill 5:89031b2f5316 197 }
Charles MacNeill 5:89031b2f5316 198
Charles MacNeill 5:89031b2f5316 199 VL53LX_Error VL53L3CX::VL53L3CX_get_inter_measurement_period_ms(uint32_t *pinter_measurement_period_ms)
Charles MacNeill 5:89031b2f5316 200 {
Charles MacNeill 5:89031b2f5316 201 return VL53LX_get_inter_measurement_period_ms(Dev, pinter_measurement_period_ms);
Charles MacNeill 5:89031b2f5316 202 }
Charles MacNeill 5:89031b2f5316 203
Charles MacNeill 5:89031b2f5316 204 VL53LX_Error VL53L3CX::VL53L3CX_set_timeouts_us(
Charles MacNeill 5:89031b2f5316 205 uint32_t phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 206 uint32_t mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 207 uint32_t range_config_timeout_us)
Charles MacNeill 5:89031b2f5316 208 {
Charles MacNeill 5:89031b2f5316 209
Charles MacNeill 5:89031b2f5316 210 return VL53LX_set_timeouts_us(Dev,
Charles MacNeill 5:89031b2f5316 211 phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 212 mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 213 range_config_timeout_us);
Charles MacNeill 5:89031b2f5316 214
Charles MacNeill 5:89031b2f5316 215 }
Charles MacNeill 5:89031b2f5316 216
Charles MacNeill 5:89031b2f5316 217 VL53LX_Error VL53L3CX::VL53L3CX_get_timeouts_us(
Charles MacNeill 5:89031b2f5316 218 uint32_t *pphasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 219 uint32_t *pmm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 220 uint32_t *prange_config_timeout_us)
Charles MacNeill 5:89031b2f5316 221 {
Charles MacNeill 5:89031b2f5316 222
Charles MacNeill 5:89031b2f5316 223 return VL53LX_get_timeouts_us(Dev,
Charles MacNeill 5:89031b2f5316 224 pphasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 225 pmm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 226 prange_config_timeout_us);
Charles MacNeill 5:89031b2f5316 227
Charles MacNeill 5:89031b2f5316 228 }
Charles MacNeill 5:89031b2f5316 229
Charles MacNeill 5:89031b2f5316 230
Charles MacNeill 5:89031b2f5316 231
Charles MacNeill 5:89031b2f5316 232
Charles MacNeill 5:89031b2f5316 233 VL53LX_Error VL53L3CX::VL53L3CX_set_user_zone(
Charles MacNeill 5:89031b2f5316 234 VL53LX_user_zone_t *puser_zone)
Charles MacNeill 5:89031b2f5316 235 {
Charles MacNeill 5:89031b2f5316 236 return VL53LX_set_user_zone(
Charles MacNeill 5:89031b2f5316 237 Dev,
Charles MacNeill 5:89031b2f5316 238 puser_zone);
Charles MacNeill 5:89031b2f5316 239
Charles MacNeill 5:89031b2f5316 240 }
Charles MacNeill 5:89031b2f5316 241
Charles MacNeill 5:89031b2f5316 242 VL53LX_Error VL53L3CX::VL53L3CX_get_user_zone(
Charles MacNeill 5:89031b2f5316 243 VL53LX_user_zone_t *puser_zone)
Charles MacNeill 5:89031b2f5316 244 {
Charles MacNeill 5:89031b2f5316 245 return VL53LX_get_user_zone( Dev, puser_zone);
Charles MacNeill 5:89031b2f5316 246 }
Charles MacNeill 5:89031b2f5316 247
Charles MacNeill 5:89031b2f5316 248 VL53LX_Error VL53L3CX::VL53L3CX_get_mode_mitigation_roi(
Charles MacNeill 5:89031b2f5316 249 VL53LX_user_zone_t *pmm_roi)
Charles MacNeill 5:89031b2f5316 250 {
Charles MacNeill 5:89031b2f5316 251
Charles MacNeill 5:89031b2f5316 252 return VL53LX_get_mode_mitigation_roi( Dev, pmm_roi);
Charles MacNeill 5:89031b2f5316 253 }
Charles MacNeill 5:89031b2f5316 254
Charles MacNeill 5:89031b2f5316 255 VL53LX_Error VL53L3CX::VL53L3CX_set_zone_config(
Charles MacNeill 5:89031b2f5316 256 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 257 {
Charles MacNeill 5:89031b2f5316 258
Charles MacNeill 5:89031b2f5316 259 return VL53LX_set_zone_config(Dev, pzone_cfg );
Charles MacNeill 5:89031b2f5316 260
Charles MacNeill 5:89031b2f5316 261 }
Charles MacNeill 5:89031b2f5316 262
Charles MacNeill 5:89031b2f5316 263
Charles MacNeill 5:89031b2f5316 264
Charles MacNeill 5:89031b2f5316 265 VL53LX_Error VL53L3CX::VL53L3CX_get_zone_config(
Charles MacNeill 5:89031b2f5316 266 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 267 {
Charles MacNeill 5:89031b2f5316 268
Charles MacNeill 5:89031b2f5316 269 return VL53LX_get_zone_config(Dev, pzone_cfg);
Charles MacNeill 5:89031b2f5316 270
Charles MacNeill 5:89031b2f5316 271 }
Charles MacNeill 5:89031b2f5316 272
Charles MacNeill 5:89031b2f5316 273 VL53LX_Error VL53L3CX::VL53L3CX_get_preset_mode_timing_cfg(
Charles MacNeill 5:89031b2f5316 274 VL53LX_DevicePresetModes device_preset_mode,
Charles MacNeill 5:89031b2f5316 275 uint16_t *pdss_config__target_total_rate_mcps,
Charles MacNeill 5:89031b2f5316 276 uint32_t *pphasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 277 uint32_t *pmm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 278 uint32_t *prange_config_timeout_us)
Charles MacNeill 5:89031b2f5316 279 {
Charles MacNeill 5:89031b2f5316 280
Charles MacNeill 5:89031b2f5316 281 return VL53LX_get_preset_mode_timing_cfg(Dev,
Charles MacNeill 5:89031b2f5316 282 device_preset_mode,
Charles MacNeill 5:89031b2f5316 283 pdss_config__target_total_rate_mcps,
Charles MacNeill 5:89031b2f5316 284 pphasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 285 pmm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 286 prange_config_timeout_us);
Charles MacNeill 5:89031b2f5316 287
Charles MacNeill 5:89031b2f5316 288 }
Charles MacNeill 5:89031b2f5316 289
Charles MacNeill 5:89031b2f5316 290 VL53LX_Error VL53L3CX::VL53L3CX_set_preset_mode(
Charles MacNeill 5:89031b2f5316 291 VL53LX_DevicePresetModes device_preset_mode,
Charles MacNeill 5:89031b2f5316 292 uint16_t dss_config__target_total_rate_mcps,
Charles MacNeill 5:89031b2f5316 293 uint32_t phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 294 uint32_t mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 295 uint32_t range_config_timeout_us,
Charles MacNeill 5:89031b2f5316 296 uint32_t inter_measurement_period_ms)
Charles MacNeill 5:89031b2f5316 297 {
Charles MacNeill 5:89031b2f5316 298
Charles MacNeill 5:89031b2f5316 299 return VL53LX_set_preset_mode(
Charles MacNeill 5:89031b2f5316 300 Dev,
Charles MacNeill 5:89031b2f5316 301 device_preset_mode,
Charles MacNeill 5:89031b2f5316 302 dss_config__target_total_rate_mcps,
Charles MacNeill 5:89031b2f5316 303 phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 304 mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 305 range_config_timeout_us,
Charles MacNeill 5:89031b2f5316 306 inter_measurement_period_ms);
Charles MacNeill 5:89031b2f5316 307
Charles MacNeill 5:89031b2f5316 308 }
Charles MacNeill 5:89031b2f5316 309
Charles MacNeill 5:89031b2f5316 310
Charles MacNeill 5:89031b2f5316 311 VL53LX_Error VL53L3CX::VL53L3CX_enable_xtalk_compensation()
Charles MacNeill 5:89031b2f5316 312 {
Charles MacNeill 5:89031b2f5316 313
Charles MacNeill 5:89031b2f5316 314 return VL53LX_enable_xtalk_compensation(Dev);
Charles MacNeill 5:89031b2f5316 315
Charles MacNeill 5:89031b2f5316 316 }
Charles MacNeill 5:89031b2f5316 317
Charles MacNeill 5:89031b2f5316 318 void VL53L3CX::VL53L3CX_get_xtalk_compensation_enable(uint8_t *pcrosstalk_compensation_enable)
Charles MacNeill 5:89031b2f5316 319 {
Charles MacNeill 5:89031b2f5316 320 return VL53LX_get_xtalk_compensation_enable(Dev,pcrosstalk_compensation_enable);
Charles MacNeill 5:89031b2f5316 321
Charles MacNeill 5:89031b2f5316 322 }
Charles MacNeill 5:89031b2f5316 323
Charles MacNeill 5:89031b2f5316 324
Charles MacNeill 5:89031b2f5316 325
Charles MacNeill 5:89031b2f5316 326
Charles MacNeill 5:89031b2f5316 327
Charles MacNeill 5:89031b2f5316 328
Charles MacNeill 5:89031b2f5316 329 VL53LX_Error VL53L3CX::VL53L3CX_disable_xtalk_compensation()
Charles MacNeill 5:89031b2f5316 330 {
Charles MacNeill 5:89031b2f5316 331
Charles MacNeill 5:89031b2f5316 332 return VL53LX_disable_xtalk_compensation(Dev);
Charles MacNeill 5:89031b2f5316 333
Charles MacNeill 5:89031b2f5316 334 }
Charles MacNeill 5:89031b2f5316 335
Charles MacNeill 5:89031b2f5316 336
Charles MacNeill 5:89031b2f5316 337
Charles MacNeill 5:89031b2f5316 338
Charles MacNeill 5:89031b2f5316 339 VL53LX_Error VL53L3CX::VL53L3CX_init_and_start_range(
Charles MacNeill 5:89031b2f5316 340 uint8_t measurement_mode,
Charles MacNeill 5:89031b2f5316 341 VL53LX_DeviceConfigLevel device_config_level)
Charles MacNeill 5:89031b2f5316 342 {
Charles MacNeill 5:89031b2f5316 343
Charles MacNeill 5:89031b2f5316 344 return VL53LX_init_and_start_range( Dev, measurement_mode, device_config_level);
Charles MacNeill 5:89031b2f5316 345
Charles MacNeill 5:89031b2f5316 346 }
Charles MacNeill 5:89031b2f5316 347 VL53LX_Error VL53L3CX::VL53L3CX_stop_range()
Charles MacNeill 5:89031b2f5316 348 {
Charles MacNeill 5:89031b2f5316 349 return VL53LX_stop_range(Dev);
Charles MacNeill 5:89031b2f5316 350 }
Charles MacNeill 5:89031b2f5316 351
Charles MacNeill 5:89031b2f5316 352 VL53LX_Error VL53L3CX::VL53L3CX_get_measurement_results(
Charles MacNeill 5:89031b2f5316 353 VL53LX_DeviceResultsLevel device_results_level)
Charles MacNeill 5:89031b2f5316 354 {
Charles MacNeill 5:89031b2f5316 355
Charles MacNeill 5:89031b2f5316 356 return VL53LX_get_measurement_results( Dev, device_results_level);
Charles MacNeill 5:89031b2f5316 357
Charles MacNeill 5:89031b2f5316 358 }
Charles MacNeill 5:89031b2f5316 359
Charles MacNeill 5:89031b2f5316 360 VL53LX_Error VL53L3CX::VL53L3CX_get_device_results(
Charles MacNeill 5:89031b2f5316 361 VL53LX_DeviceResultsLevel device_results_level,
Charles MacNeill 5:89031b2f5316 362 VL53LX_range_results_t *prange_results)
Charles MacNeill 5:89031b2f5316 363 {
Charles MacNeill 5:89031b2f5316 364 return VL53LX_get_device_results( Dev, device_results_level,prange_results);
Charles MacNeill 5:89031b2f5316 365 }
Charles MacNeill 5:89031b2f5316 366
Charles MacNeill 5:89031b2f5316 367 VL53LX_Error VL53L3CX::VL53L3CX_clear_interrupt_and_enable_next_range(
Charles MacNeill 5:89031b2f5316 368 uint8_t measurement_mode)
Charles MacNeill 5:89031b2f5316 369 {
Charles MacNeill 5:89031b2f5316 370 return VL53LX_clear_interrupt_and_enable_next_range(Dev,measurement_mode);
Charles MacNeill 5:89031b2f5316 371 }
Charles MacNeill 5:89031b2f5316 372
Charles MacNeill 5:89031b2f5316 373
Charles MacNeill 5:89031b2f5316 374 VL53LX_Error VL53L3CX::VL53L3CX_get_histogram_bin_data(
Charles MacNeill 5:89031b2f5316 375 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 376 {
Charles MacNeill 5:89031b2f5316 377 return VL53LX_get_histogram_bin_data(Dev, pdata);
Charles MacNeill 5:89031b2f5316 378 }
Charles MacNeill 5:89031b2f5316 379
Charles MacNeill 5:89031b2f5316 380 void VL53L3CX::VL53L3CX_copy_sys_and_core_results_to_range_results(
Charles MacNeill 5:89031b2f5316 381 int32_t gain_factor,
Charles MacNeill 5:89031b2f5316 382 VL53LX_system_results_t *psys,
Charles MacNeill 5:89031b2f5316 383 VL53LX_core_results_t *pcore,
Charles MacNeill 5:89031b2f5316 384 VL53LX_range_results_t *presults)
Charles MacNeill 5:89031b2f5316 385 {
Charles MacNeill 5:89031b2f5316 386
Charles MacNeill 5:89031b2f5316 387 return VL53LX_copy_sys_and_core_results_to_range_results(
Charles MacNeill 5:89031b2f5316 388 gain_factor,
Charles MacNeill 5:89031b2f5316 389 psys,
Charles MacNeill 5:89031b2f5316 390 pcore,
Charles MacNeill 5:89031b2f5316 391 presults);
Charles MacNeill 5:89031b2f5316 392
Charles MacNeill 5:89031b2f5316 393 }
Charles MacNeill 5:89031b2f5316 394
Charles MacNeill 5:89031b2f5316 395 VL53LX_Error VL53L3CX::VL53L3CX_set_zone_dss_config(
Charles MacNeill 5:89031b2f5316 396 VL53LX_zone_private_dyn_cfg_t *pzone_dyn_cfg)
Charles MacNeill 5:89031b2f5316 397 {
Charles MacNeill 5:89031b2f5316 398
Charles MacNeill 5:89031b2f5316 399 return VL53LX_set_zone_dss_config( Dev,
Charles MacNeill 5:89031b2f5316 400 pzone_dyn_cfg);
Charles MacNeill 5:89031b2f5316 401
Charles MacNeill 5:89031b2f5316 402 }
Charles MacNeill 5:89031b2f5316 403
Charles MacNeill 5:89031b2f5316 404
Charles MacNeill 5:89031b2f5316 405
Charles MacNeill 5:89031b2f5316 406 VL53LX_Error VL53L3CX::VL53L3CX_set_dmax_mode(
Charles MacNeill 5:89031b2f5316 407 VL53LX_DeviceDmaxMode dmax_mode)
Charles MacNeill 5:89031b2f5316 408 {
Charles MacNeill 5:89031b2f5316 409
Charles MacNeill 5:89031b2f5316 410 return VL53LX_set_dmax_mode(Dev,dmax_mode);
Charles MacNeill 5:89031b2f5316 411
Charles MacNeill 5:89031b2f5316 412 }
Charles MacNeill 5:89031b2f5316 413
Charles MacNeill 5:89031b2f5316 414
Charles MacNeill 5:89031b2f5316 415 VL53LX_Error VL53L3CX::VL53L3CX_get_dmax_mode(
Charles MacNeill 5:89031b2f5316 416 VL53LX_DeviceDmaxMode *pdmax_mode)
Charles MacNeill 5:89031b2f5316 417 {
Charles MacNeill 5:89031b2f5316 418
Charles MacNeill 5:89031b2f5316 419 return VL53LX_get_dmax_mode( Dev,pdmax_mode);
Charles MacNeill 5:89031b2f5316 420
Charles MacNeill 5:89031b2f5316 421 }
Charles MacNeill 5:89031b2f5316 422
Charles MacNeill 5:89031b2f5316 423
Charles MacNeill 5:89031b2f5316 424 VL53LX_Error VL53L3CX::VL53L3CX_get_dmax_calibration_data(
Charles MacNeill 5:89031b2f5316 425 VL53LX_DeviceDmaxMode dmax_mode,
Charles MacNeill 5:89031b2f5316 426 VL53LX_dmax_calibration_data_t *pdmax_cal)
Charles MacNeill 5:89031b2f5316 427 {
Charles MacNeill 5:89031b2f5316 428
Charles MacNeill 5:89031b2f5316 429 return VL53LX_get_dmax_calibration_data(Dev, dmax_mode, pdmax_cal);
Charles MacNeill 5:89031b2f5316 430
Charles MacNeill 5:89031b2f5316 431 }
Charles MacNeill 5:89031b2f5316 432
Charles MacNeill 5:89031b2f5316 433
Charles MacNeill 5:89031b2f5316 434
Charles MacNeill 5:89031b2f5316 435
Charles MacNeill 5:89031b2f5316 436 VL53LX_Error VL53L3CX::VL53L3CX_set_offset_correction_mode(
Charles MacNeill 5:89031b2f5316 437 VL53LX_OffsetCorrectionMode offset_cor_mode)
Charles MacNeill 5:89031b2f5316 438 {
Charles MacNeill 5:89031b2f5316 439
Charles MacNeill 5:89031b2f5316 440 return VL53LX_set_offset_correction_mode(Dev, offset_cor_mode);
Charles MacNeill 5:89031b2f5316 441
Charles MacNeill 5:89031b2f5316 442 }
Charles MacNeill 5:89031b2f5316 443
Charles MacNeill 5:89031b2f5316 444
Charles MacNeill 5:89031b2f5316 445 VL53LX_Error VL53L3CX::VL53L3CX_get_offset_correction_mode(
Charles MacNeill 5:89031b2f5316 446 VL53LX_OffsetCorrectionMode *poffset_cor_mode)
Charles MacNeill 5:89031b2f5316 447 {
Charles MacNeill 5:89031b2f5316 448 return VL53LX_get_offset_correction_mode( Dev, poffset_cor_mode);
Charles MacNeill 5:89031b2f5316 449
Charles MacNeill 5:89031b2f5316 450 }
Charles MacNeill 5:89031b2f5316 451
Charles MacNeill 5:89031b2f5316 452
Charles MacNeill 5:89031b2f5316 453
Charles MacNeill 5:89031b2f5316 454 VL53LX_Error VL53L3CX::VL53L3CX_get_tuning_debug_data(
Charles MacNeill 5:89031b2f5316 455 VL53LX_tuning_parameters_t *ptun_data)
Charles MacNeill 5:89031b2f5316 456 {
Charles MacNeill 5:89031b2f5316 457
Charles MacNeill 5:89031b2f5316 458 return VL53LX_get_tuning_debug_data(Dev,ptun_data);
Charles MacNeill 5:89031b2f5316 459
Charles MacNeill 5:89031b2f5316 460 }
Charles MacNeill 5:89031b2f5316 461
Charles MacNeill 5:89031b2f5316 462 VL53LX_Error VL53L3CX::VL53L3CX_get_tuning_parm(
Charles MacNeill 5:89031b2f5316 463 VL53LX_TuningParms tuning_parm_key,
Charles MacNeill 5:89031b2f5316 464 int32_t *ptuning_parm_value)
Charles MacNeill 5:89031b2f5316 465 {
Charles MacNeill 5:89031b2f5316 466
Charles MacNeill 5:89031b2f5316 467 return VL53LX_get_tuning_parm(Dev, tuning_parm_key,
Charles MacNeill 5:89031b2f5316 468 ptuning_parm_value);
Charles MacNeill 5:89031b2f5316 469
Charles MacNeill 5:89031b2f5316 470 }
Charles MacNeill 5:89031b2f5316 471
Charles MacNeill 5:89031b2f5316 472
Charles MacNeill 5:89031b2f5316 473 VL53LX_Error VL53L3CX::VL53L3CX_set_tuning_parm(
Charles MacNeill 5:89031b2f5316 474 VL53LX_TuningParms tuning_parm_key,
Charles MacNeill 5:89031b2f5316 475 int32_t tuning_parm_value)
Charles MacNeill 5:89031b2f5316 476 {
Charles MacNeill 5:89031b2f5316 477
Charles MacNeill 5:89031b2f5316 478 return VL53LX_set_tuning_parm(Dev, tuning_parm_key, tuning_parm_value);
Charles MacNeill 5:89031b2f5316 479
Charles MacNeill 5:89031b2f5316 480 }
Charles MacNeill 5:89031b2f5316 481
Charles MacNeill 5:89031b2f5316 482 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_enable()
Charles MacNeill 5:89031b2f5316 483 {
Charles MacNeill 5:89031b2f5316 484
Charles MacNeill 5:89031b2f5316 485 return VL53LX_dynamic_xtalk_correction_enable(Dev);
Charles MacNeill 5:89031b2f5316 486
Charles MacNeill 5:89031b2f5316 487 }
Charles MacNeill 5:89031b2f5316 488
Charles MacNeill 5:89031b2f5316 489 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_disable()
Charles MacNeill 5:89031b2f5316 490 {
Charles MacNeill 5:89031b2f5316 491 return VL53LX_dynamic_xtalk_correction_disable(Dev);
Charles MacNeill 5:89031b2f5316 492
Charles MacNeill 5:89031b2f5316 493 }
Charles MacNeill 5:89031b2f5316 494 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_apply_enable()
Charles MacNeill 5:89031b2f5316 495 {
Charles MacNeill 5:89031b2f5316 496
Charles MacNeill 5:89031b2f5316 497 return VL53LX_dynamic_xtalk_correction_apply_enable(Dev);
Charles MacNeill 5:89031b2f5316 498 }
Charles MacNeill 5:89031b2f5316 499
Charles MacNeill 5:89031b2f5316 500 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_apply_disable()
Charles MacNeill 5:89031b2f5316 501 {
Charles MacNeill 5:89031b2f5316 502
Charles MacNeill 5:89031b2f5316 503 return VL53LX_dynamic_xtalk_correction_apply_disable(Dev);
Charles MacNeill 5:89031b2f5316 504
Charles MacNeill 5:89031b2f5316 505 }
Charles MacNeill 5:89031b2f5316 506
Charles MacNeill 5:89031b2f5316 507
Charles MacNeill 5:89031b2f5316 508 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_single_apply_enable()
Charles MacNeill 5:89031b2f5316 509 {
Charles MacNeill 5:89031b2f5316 510
Charles MacNeill 5:89031b2f5316 511 return VL53LX_dynamic_xtalk_correction_single_apply_enable(Dev);
Charles MacNeill 5:89031b2f5316 512
Charles MacNeill 5:89031b2f5316 513 }
Charles MacNeill 5:89031b2f5316 514
Charles MacNeill 5:89031b2f5316 515 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_single_apply_disable()
Charles MacNeill 5:89031b2f5316 516 {
Charles MacNeill 5:89031b2f5316 517
Charles MacNeill 5:89031b2f5316 518 return VL53LX_dynamic_xtalk_correction_single_apply_disable(Dev);
Charles MacNeill 5:89031b2f5316 519
Charles MacNeill 5:89031b2f5316 520 }
Charles MacNeill 5:89031b2f5316 521
Charles MacNeill 5:89031b2f5316 522
Charles MacNeill 5:89031b2f5316 523 VL53LX_Error VL53L3CX::VL53L3CX_get_current_xtalk_settings(
Charles MacNeill 5:89031b2f5316 524 VL53LX_xtalk_calibration_results_t *pxtalk
Charles MacNeill 5:89031b2f5316 525 )
Charles MacNeill 5:89031b2f5316 526 {
Charles MacNeill 5:89031b2f5316 527
Charles MacNeill 5:89031b2f5316 528 return VL53LX_get_current_xtalk_settings(Dev,pxtalk);
Charles MacNeill 5:89031b2f5316 529
Charles MacNeill 5:89031b2f5316 530 }
Charles MacNeill 5:89031b2f5316 531 VL53LX_Error VL53L3CX::VL53L3CX_set_current_xtalk_settings(
Charles MacNeill 5:89031b2f5316 532 VL53LX_xtalk_calibration_results_t *pxtalk
Charles MacNeill 5:89031b2f5316 533 )
Charles MacNeill 5:89031b2f5316 534 {
Charles MacNeill 5:89031b2f5316 535 return VL53LX_set_current_xtalk_settings(Dev, pxtalk);
Charles MacNeill 5:89031b2f5316 536
Charles MacNeill 5:89031b2f5316 537 }
Charles MacNeill 5:89031b2f5316 538
Charles MacNeill 5:89031b2f5316 539 /* vl53lx_register_funcs.c */
Charles MacNeill 5:89031b2f5316 540
Charles MacNeill 5:89031b2f5316 541 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_static_nvm_managed(
Charles MacNeill 5:89031b2f5316 542 VL53LX_static_nvm_managed_t *pdata,
Charles MacNeill 5:89031b2f5316 543 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 544 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 545 {
Charles MacNeill 5:89031b2f5316 546
Charles MacNeill 5:89031b2f5316 547 return VL53LX_i2c_encode_static_nvm_managed( pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 548
Charles MacNeill 5:89031b2f5316 549 }
Charles MacNeill 5:89031b2f5316 550
Charles MacNeill 5:89031b2f5316 551 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_static_nvm_managed(
Charles MacNeill 5:89031b2f5316 552 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 553 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 554 VL53LX_static_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 555 {
Charles MacNeill 5:89031b2f5316 556
Charles MacNeill 5:89031b2f5316 557
Charles MacNeill 5:89031b2f5316 558 return VL53LX_i2c_decode_static_nvm_managed(
Charles MacNeill 5:89031b2f5316 559 buf_size,
Charles MacNeill 5:89031b2f5316 560 pbuffer,
Charles MacNeill 5:89031b2f5316 561 pdata);
Charles MacNeill 5:89031b2f5316 562
Charles MacNeill 5:89031b2f5316 563 }
Charles MacNeill 5:89031b2f5316 564
Charles MacNeill 5:89031b2f5316 565 VL53LX_Error VL53L3CX::VL53L3CX_set_static_nvm_managed(
Charles MacNeill 5:89031b2f5316 566 VL53LX_static_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 567 {
Charles MacNeill 5:89031b2f5316 568
Charles MacNeill 5:89031b2f5316 569 return VL53LX_set_static_nvm_managed( Dev, pdata);
Charles MacNeill 5:89031b2f5316 570
Charles MacNeill 5:89031b2f5316 571 }
Charles MacNeill 5:89031b2f5316 572
Charles MacNeill 5:89031b2f5316 573 VL53LX_Error VL53L3CX::VL53L3CX_get_static_nvm_managed(
Charles MacNeill 5:89031b2f5316 574 VL53LX_static_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 575 {
Charles MacNeill 5:89031b2f5316 576
Charles MacNeill 5:89031b2f5316 577 return VL53LX_get_static_nvm_managed( Dev,
Charles MacNeill 5:89031b2f5316 578 pdata);
Charles MacNeill 5:89031b2f5316 579
Charles MacNeill 5:89031b2f5316 580 }
Charles MacNeill 5:89031b2f5316 581
Charles MacNeill 5:89031b2f5316 582
Charles MacNeill 5:89031b2f5316 583 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_customer_nvm_managed(
Charles MacNeill 5:89031b2f5316 584 VL53LX_customer_nvm_managed_t *pdata,
Charles MacNeill 5:89031b2f5316 585 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 586 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 587 {
Charles MacNeill 5:89031b2f5316 588
Charles MacNeill 5:89031b2f5316 589
Charles MacNeill 5:89031b2f5316 590 return VL53LX_i2c_encode_customer_nvm_managed( pdata,
Charles MacNeill 5:89031b2f5316 591 buf_size,
Charles MacNeill 5:89031b2f5316 592 pbuffer);
Charles MacNeill 5:89031b2f5316 593
Charles MacNeill 5:89031b2f5316 594 }
Charles MacNeill 5:89031b2f5316 595
Charles MacNeill 5:89031b2f5316 596 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_customer_nvm_managed(
Charles MacNeill 5:89031b2f5316 597 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 598 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 599 VL53LX_customer_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 600 {
Charles MacNeill 5:89031b2f5316 601
Charles MacNeill 5:89031b2f5316 602 return VL53LX_i2c_decode_customer_nvm_managed( buf_size,
Charles MacNeill 5:89031b2f5316 603 pbuffer,
Charles MacNeill 5:89031b2f5316 604 pdata);
Charles MacNeill 5:89031b2f5316 605
Charles MacNeill 5:89031b2f5316 606 }
Charles MacNeill 5:89031b2f5316 607
Charles MacNeill 5:89031b2f5316 608 VL53LX_Error VL53L3CX::VL53L3CX_set_customer_nvm_managed(
Charles MacNeill 5:89031b2f5316 609 VL53LX_customer_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 610 {
Charles MacNeill 5:89031b2f5316 611
Charles MacNeill 5:89031b2f5316 612
Charles MacNeill 5:89031b2f5316 613 return VL53LX_set_customer_nvm_managed(Dev,
Charles MacNeill 5:89031b2f5316 614 pdata);
Charles MacNeill 5:89031b2f5316 615
Charles MacNeill 5:89031b2f5316 616 }
Charles MacNeill 5:89031b2f5316 617
Charles MacNeill 5:89031b2f5316 618 VL53LX_Error VL53L3CX::VL53L3CX_get_customer_nvm_managed(
Charles MacNeill 5:89031b2f5316 619 VL53LX_customer_nvm_managed_t *pdata)
Charles MacNeill 5:89031b2f5316 620 {
Charles MacNeill 5:89031b2f5316 621
Charles MacNeill 5:89031b2f5316 622 return VL53LX_get_customer_nvm_managed(Dev,pdata);
Charles MacNeill 5:89031b2f5316 623
Charles MacNeill 5:89031b2f5316 624 }
Charles MacNeill 5:89031b2f5316 625
Charles MacNeill 5:89031b2f5316 626
Charles MacNeill 5:89031b2f5316 627 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_static_config(
Charles MacNeill 5:89031b2f5316 628 VL53LX_static_config_t *pdata,
Charles MacNeill 5:89031b2f5316 629 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 630 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 631 {
Charles MacNeill 5:89031b2f5316 632
Charles MacNeill 5:89031b2f5316 633 return VL53LX_i2c_encode_static_config(pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 634
Charles MacNeill 5:89031b2f5316 635 }
Charles MacNeill 5:89031b2f5316 636
Charles MacNeill 5:89031b2f5316 637 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_static_config(
Charles MacNeill 5:89031b2f5316 638 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 639 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 640 VL53LX_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 641 {
Charles MacNeill 5:89031b2f5316 642
Charles MacNeill 5:89031b2f5316 643 return VL53LX_i2c_decode_static_config( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 644
Charles MacNeill 5:89031b2f5316 645 }
Charles MacNeill 5:89031b2f5316 646
Charles MacNeill 5:89031b2f5316 647 VL53LX_Error VL53L3CX::VL53L3CX_set_static_config(
Charles MacNeill 5:89031b2f5316 648 VL53LX_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 649 {
Charles MacNeill 5:89031b2f5316 650
Charles MacNeill 5:89031b2f5316 651 return VL53LX_set_static_config(Dev, pdata);
Charles MacNeill 5:89031b2f5316 652
Charles MacNeill 5:89031b2f5316 653 }
Charles MacNeill 5:89031b2f5316 654
Charles MacNeill 5:89031b2f5316 655 VL53LX_Error VL53L3CX::VL53L3CX_get_static_config(
Charles MacNeill 5:89031b2f5316 656 VL53LX_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 657 {
Charles MacNeill 5:89031b2f5316 658
Charles MacNeill 5:89031b2f5316 659 return VL53LX_get_static_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 660
Charles MacNeill 5:89031b2f5316 661 }
Charles MacNeill 5:89031b2f5316 662
Charles MacNeill 5:89031b2f5316 663
Charles MacNeill 5:89031b2f5316 664 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_general_config(
Charles MacNeill 5:89031b2f5316 665 VL53LX_general_config_t *pdata,
Charles MacNeill 5:89031b2f5316 666 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 667 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 668 {
Charles MacNeill 5:89031b2f5316 669
Charles MacNeill 5:89031b2f5316 670 return VL53LX_i2c_encode_general_config(
Charles MacNeill 5:89031b2f5316 671 pdata,
Charles MacNeill 5:89031b2f5316 672 buf_size,
Charles MacNeill 5:89031b2f5316 673 pbuffer);
Charles MacNeill 5:89031b2f5316 674
Charles MacNeill 5:89031b2f5316 675 }
Charles MacNeill 5:89031b2f5316 676
Charles MacNeill 5:89031b2f5316 677
Charles MacNeill 5:89031b2f5316 678 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_general_config(
Charles MacNeill 5:89031b2f5316 679 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 680 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 681 VL53LX_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 682 {
Charles MacNeill 5:89031b2f5316 683
Charles MacNeill 5:89031b2f5316 684 return VL53LX_i2c_decode_general_config(
Charles MacNeill 5:89031b2f5316 685 buf_size,
Charles MacNeill 5:89031b2f5316 686 pbuffer,
Charles MacNeill 5:89031b2f5316 687 pdata);
Charles MacNeill 5:89031b2f5316 688
Charles MacNeill 5:89031b2f5316 689 }
Charles MacNeill 5:89031b2f5316 690
Charles MacNeill 5:89031b2f5316 691 VL53LX_Error VL53L3CX::VL53L3CX_set_general_config(
Charles MacNeill 5:89031b2f5316 692 VL53LX_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 693 {
Charles MacNeill 5:89031b2f5316 694
Charles MacNeill 5:89031b2f5316 695 return VL53LX_set_general_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 696
Charles MacNeill 5:89031b2f5316 697 }
Charles MacNeill 5:89031b2f5316 698
Charles MacNeill 5:89031b2f5316 699
Charles MacNeill 5:89031b2f5316 700 VL53LX_Error VL53L3CX::VL53L3CX_get_general_config(
Charles MacNeill 5:89031b2f5316 701 VL53LX_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 702 {
Charles MacNeill 5:89031b2f5316 703
Charles MacNeill 5:89031b2f5316 704 return VL53LX_get_general_config( Dev,pdata);
Charles MacNeill 5:89031b2f5316 705
Charles MacNeill 5:89031b2f5316 706 }
Charles MacNeill 5:89031b2f5316 707
Charles MacNeill 5:89031b2f5316 708
Charles MacNeill 5:89031b2f5316 709 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_timing_config(
Charles MacNeill 5:89031b2f5316 710 VL53LX_timing_config_t *pdata,
Charles MacNeill 5:89031b2f5316 711 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 712 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 713 {
Charles MacNeill 5:89031b2f5316 714
Charles MacNeill 5:89031b2f5316 715 return VL53LX_i2c_encode_timing_config(
Charles MacNeill 5:89031b2f5316 716 pdata,
Charles MacNeill 5:89031b2f5316 717 buf_size,
Charles MacNeill 5:89031b2f5316 718 pbuffer);
Charles MacNeill 5:89031b2f5316 719
Charles MacNeill 5:89031b2f5316 720 }
Charles MacNeill 5:89031b2f5316 721
Charles MacNeill 5:89031b2f5316 722 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_timing_config(
Charles MacNeill 5:89031b2f5316 723 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 724 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 725 VL53LX_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 726 {
Charles MacNeill 5:89031b2f5316 727
Charles MacNeill 5:89031b2f5316 728 return VL53LX_i2c_decode_timing_config(
Charles MacNeill 5:89031b2f5316 729 buf_size,
Charles MacNeill 5:89031b2f5316 730 pbuffer,
Charles MacNeill 5:89031b2f5316 731 pdata);
Charles MacNeill 5:89031b2f5316 732
Charles MacNeill 5:89031b2f5316 733 }
Charles MacNeill 5:89031b2f5316 734
Charles MacNeill 5:89031b2f5316 735 VL53LX_Error VL53L3CX::VL53L3CX_set_timing_config(
Charles MacNeill 5:89031b2f5316 736 VL53LX_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 737 {
Charles MacNeill 5:89031b2f5316 738
Charles MacNeill 5:89031b2f5316 739 return VL53LX_set_timing_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 740
Charles MacNeill 5:89031b2f5316 741 }
Charles MacNeill 5:89031b2f5316 742
Charles MacNeill 5:89031b2f5316 743 VL53LX_Error VL53L3CX::VL53L3CX_get_timing_config(
Charles MacNeill 5:89031b2f5316 744 VL53LX_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 745 {
Charles MacNeill 5:89031b2f5316 746
Charles MacNeill 5:89031b2f5316 747 return VL53LX_set_timing_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 748
Charles MacNeill 5:89031b2f5316 749 }
Charles MacNeill 5:89031b2f5316 750
Charles MacNeill 5:89031b2f5316 751 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_dynamic_config(
Charles MacNeill 5:89031b2f5316 752 VL53LX_dynamic_config_t *pdata,
Charles MacNeill 5:89031b2f5316 753 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 754 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 755 {
Charles MacNeill 5:89031b2f5316 756
Charles MacNeill 5:89031b2f5316 757 return VL53LX_i2c_encode_dynamic_config( pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 758
Charles MacNeill 5:89031b2f5316 759 }
Charles MacNeill 5:89031b2f5316 760
Charles MacNeill 5:89031b2f5316 761 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_dynamic_config(
Charles MacNeill 5:89031b2f5316 762 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 763 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 764 VL53LX_dynamic_config_t *pdata)
Charles MacNeill 5:89031b2f5316 765 {
Charles MacNeill 5:89031b2f5316 766
Charles MacNeill 5:89031b2f5316 767 return VL53LX_i2c_decode_dynamic_config(buf_size,pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 768
Charles MacNeill 5:89031b2f5316 769 }
Charles MacNeill 5:89031b2f5316 770
Charles MacNeill 5:89031b2f5316 771 VL53LX_Error VL53L3CX::VL53L3CX_set_dynamic_config(
Charles MacNeill 5:89031b2f5316 772 VL53LX_dynamic_config_t *pdata)
Charles MacNeill 5:89031b2f5316 773 {
Charles MacNeill 5:89031b2f5316 774
Charles MacNeill 5:89031b2f5316 775 return VL53LX_set_dynamic_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 776
Charles MacNeill 5:89031b2f5316 777 }
Charles MacNeill 5:89031b2f5316 778
Charles MacNeill 5:89031b2f5316 779
Charles MacNeill 5:89031b2f5316 780 VL53LX_Error VL53L3CX::VL53L3CX_get_dynamic_config(
Charles MacNeill 5:89031b2f5316 781 VL53LX_dynamic_config_t *pdata)
Charles MacNeill 5:89031b2f5316 782 {
Charles MacNeill 5:89031b2f5316 783
Charles MacNeill 5:89031b2f5316 784 return VL53LX_get_dynamic_config( Dev,pdata);
Charles MacNeill 5:89031b2f5316 785
Charles MacNeill 5:89031b2f5316 786 }
Charles MacNeill 5:89031b2f5316 787
Charles MacNeill 5:89031b2f5316 788 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_system_control(
Charles MacNeill 5:89031b2f5316 789 VL53LX_system_control_t *pdata,
Charles MacNeill 5:89031b2f5316 790 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 791 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 792 {
Charles MacNeill 5:89031b2f5316 793
Charles MacNeill 5:89031b2f5316 794 return VL53LX_i2c_encode_system_control( pdata,
Charles MacNeill 5:89031b2f5316 795 buf_size,
Charles MacNeill 5:89031b2f5316 796 pbuffer);
Charles MacNeill 5:89031b2f5316 797
Charles MacNeill 5:89031b2f5316 798 }
Charles MacNeill 5:89031b2f5316 799
Charles MacNeill 5:89031b2f5316 800 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_system_control(
Charles MacNeill 5:89031b2f5316 801 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 802 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 803 VL53LX_system_control_t *pdata)
Charles MacNeill 5:89031b2f5316 804 {
Charles MacNeill 5:89031b2f5316 805
Charles MacNeill 5:89031b2f5316 806
Charles MacNeill 5:89031b2f5316 807 return VL53LX_i2c_decode_system_control(
Charles MacNeill 5:89031b2f5316 808 buf_size,
Charles MacNeill 5:89031b2f5316 809 pbuffer,
Charles MacNeill 5:89031b2f5316 810 pdata);
Charles MacNeill 5:89031b2f5316 811
Charles MacNeill 5:89031b2f5316 812
Charles MacNeill 5:89031b2f5316 813
Charles MacNeill 5:89031b2f5316 814 }
Charles MacNeill 5:89031b2f5316 815
Charles MacNeill 5:89031b2f5316 816
Charles MacNeill 5:89031b2f5316 817 VL53LX_Error VL53L3CX::VL53L3CX_set_system_control(
Charles MacNeill 5:89031b2f5316 818 VL53LX_system_control_t *pdata)
Charles MacNeill 5:89031b2f5316 819 {
Charles MacNeill 5:89031b2f5316 820
Charles MacNeill 5:89031b2f5316 821 return VL53LX_set_system_control(Dev,pdata);
Charles MacNeill 5:89031b2f5316 822
Charles MacNeill 5:89031b2f5316 823 }
Charles MacNeill 5:89031b2f5316 824
Charles MacNeill 5:89031b2f5316 825
Charles MacNeill 5:89031b2f5316 826 VL53LX_Error VL53L3CX::VL53L3CX_get_system_control(
Charles MacNeill 5:89031b2f5316 827 VL53LX_system_control_t *pdata)
Charles MacNeill 5:89031b2f5316 828 {
Charles MacNeill 5:89031b2f5316 829
Charles MacNeill 5:89031b2f5316 830 return VL53LX_get_system_control(Dev,pdata);
Charles MacNeill 5:89031b2f5316 831
Charles MacNeill 5:89031b2f5316 832 }
Charles MacNeill 5:89031b2f5316 833
Charles MacNeill 5:89031b2f5316 834
Charles MacNeill 5:89031b2f5316 835 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_system_results(
Charles MacNeill 5:89031b2f5316 836 VL53LX_system_results_t *pdata,
Charles MacNeill 5:89031b2f5316 837 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 838 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 839 {
Charles MacNeill 5:89031b2f5316 840
Charles MacNeill 5:89031b2f5316 841 return VL53LX_i2c_encode_system_results(pdata,
Charles MacNeill 5:89031b2f5316 842 buf_size,
Charles MacNeill 5:89031b2f5316 843 pbuffer);
Charles MacNeill 5:89031b2f5316 844
Charles MacNeill 5:89031b2f5316 845 }
Charles MacNeill 5:89031b2f5316 846
Charles MacNeill 5:89031b2f5316 847 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_system_results(
Charles MacNeill 5:89031b2f5316 848 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 849 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 850 VL53LX_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 851 {
Charles MacNeill 5:89031b2f5316 852
Charles MacNeill 5:89031b2f5316 853
Charles MacNeill 5:89031b2f5316 854 return VL53LX_i2c_decode_system_results( buf_size,pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 855
Charles MacNeill 5:89031b2f5316 856 }
Charles MacNeill 5:89031b2f5316 857
Charles MacNeill 5:89031b2f5316 858 VL53LX_Error VL53L3CX::VL53L3CX_set_system_results(
Charles MacNeill 5:89031b2f5316 859 VL53LX_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 860 {
Charles MacNeill 5:89031b2f5316 861
Charles MacNeill 5:89031b2f5316 862 return VL53LX_set_system_results(Dev,pdata);
Charles MacNeill 5:89031b2f5316 863
Charles MacNeill 5:89031b2f5316 864 }
Charles MacNeill 5:89031b2f5316 865
Charles MacNeill 5:89031b2f5316 866 VL53LX_Error VL53L3CX::VL53L3CX_get_system_results(
Charles MacNeill 5:89031b2f5316 867 VL53LX_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 868 {
Charles MacNeill 5:89031b2f5316 869
Charles MacNeill 5:89031b2f5316 870 return VL53LX_get_system_results(Dev,pdata);
Charles MacNeill 5:89031b2f5316 871
Charles MacNeill 5:89031b2f5316 872 }
Charles MacNeill 5:89031b2f5316 873 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_core_results(
Charles MacNeill 5:89031b2f5316 874 VL53LX_core_results_t *pdata,
Charles MacNeill 5:89031b2f5316 875 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 876 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 877 {
Charles MacNeill 5:89031b2f5316 878
Charles MacNeill 5:89031b2f5316 879
Charles MacNeill 5:89031b2f5316 880 return VL53LX_i2c_encode_core_results(
Charles MacNeill 5:89031b2f5316 881 pdata,
Charles MacNeill 5:89031b2f5316 882 buf_size,
Charles MacNeill 5:89031b2f5316 883 pbuffer);
Charles MacNeill 5:89031b2f5316 884
Charles MacNeill 5:89031b2f5316 885 }
Charles MacNeill 5:89031b2f5316 886
Charles MacNeill 5:89031b2f5316 887
Charles MacNeill 5:89031b2f5316 888 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_core_results(
Charles MacNeill 5:89031b2f5316 889 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 890 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 891 VL53LX_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 892 {
Charles MacNeill 5:89031b2f5316 893
Charles MacNeill 5:89031b2f5316 894
Charles MacNeill 5:89031b2f5316 895 return VL53LX_i2c_decode_core_results( buf_size,
Charles MacNeill 5:89031b2f5316 896 pbuffer,
Charles MacNeill 5:89031b2f5316 897 pdata);
Charles MacNeill 5:89031b2f5316 898 }
Charles MacNeill 5:89031b2f5316 899
Charles MacNeill 5:89031b2f5316 900 VL53LX_Error VL53L3CX::VL53L3CX_set_core_results(
Charles MacNeill 5:89031b2f5316 901 VL53LX_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 902 {
Charles MacNeill 5:89031b2f5316 903
Charles MacNeill 5:89031b2f5316 904 return VL53LX_set_core_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 905
Charles MacNeill 5:89031b2f5316 906 }
Charles MacNeill 5:89031b2f5316 907
Charles MacNeill 5:89031b2f5316 908
Charles MacNeill 5:89031b2f5316 909 VL53LX_Error VL53L3CX::VL53L3CX_get_core_results(
Charles MacNeill 5:89031b2f5316 910 VL53LX_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 911 {
Charles MacNeill 5:89031b2f5316 912
Charles MacNeill 5:89031b2f5316 913 return VL53LX_get_core_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 914
Charles MacNeill 5:89031b2f5316 915 }
Charles MacNeill 5:89031b2f5316 916
Charles MacNeill 5:89031b2f5316 917 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_debug_results(
Charles MacNeill 5:89031b2f5316 918 VL53LX_debug_results_t *pdata,
Charles MacNeill 5:89031b2f5316 919 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 920 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 921 {
Charles MacNeill 5:89031b2f5316 922
Charles MacNeill 5:89031b2f5316 923 return VL53LX_i2c_encode_debug_results(pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 924
Charles MacNeill 5:89031b2f5316 925
Charles MacNeill 5:89031b2f5316 926 }
Charles MacNeill 5:89031b2f5316 927
Charles MacNeill 5:89031b2f5316 928 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_debug_results(
Charles MacNeill 5:89031b2f5316 929 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 930 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 931 VL53LX_debug_results_t *pdata)
Charles MacNeill 5:89031b2f5316 932 {
Charles MacNeill 5:89031b2f5316 933
Charles MacNeill 5:89031b2f5316 934 return VL53LX_i2c_decode_debug_results(buf_size,pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 935
Charles MacNeill 5:89031b2f5316 936 }
Charles MacNeill 5:89031b2f5316 937
Charles MacNeill 5:89031b2f5316 938 VL53LX_Error VL53L3CX::VL53L3CX_set_debug_results(
Charles MacNeill 5:89031b2f5316 939 VL53LX_debug_results_t *pdata)
Charles MacNeill 5:89031b2f5316 940 {
Charles MacNeill 5:89031b2f5316 941
Charles MacNeill 5:89031b2f5316 942 return VL53LX_set_debug_results(Dev, pdata);
Charles MacNeill 5:89031b2f5316 943
Charles MacNeill 5:89031b2f5316 944 }
Charles MacNeill 5:89031b2f5316 945
Charles MacNeill 5:89031b2f5316 946 VL53LX_Error VL53L3CX::VL53L3CX_get_debug_results(
Charles MacNeill 5:89031b2f5316 947 VL53LX_debug_results_t *pdata)
Charles MacNeill 5:89031b2f5316 948 {
Charles MacNeill 5:89031b2f5316 949
Charles MacNeill 5:89031b2f5316 950 return VL53LX_get_debug_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 951
Charles MacNeill 5:89031b2f5316 952 }
Charles MacNeill 5:89031b2f5316 953
Charles MacNeill 5:89031b2f5316 954 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_nvm_copy_data(
Charles MacNeill 5:89031b2f5316 955 VL53LX_nvm_copy_data_t *pdata,
Charles MacNeill 5:89031b2f5316 956 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 957 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 958 {
Charles MacNeill 5:89031b2f5316 959
Charles MacNeill 5:89031b2f5316 960 return VL53LX_i2c_encode_nvm_copy_data(pdata,buf_size,pbuffer);
Charles MacNeill 5:89031b2f5316 961
Charles MacNeill 5:89031b2f5316 962 }
Charles MacNeill 5:89031b2f5316 963
Charles MacNeill 5:89031b2f5316 964
Charles MacNeill 5:89031b2f5316 965
Charles MacNeill 5:89031b2f5316 966 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_nvm_copy_data(
Charles MacNeill 5:89031b2f5316 967 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 968 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 969 VL53LX_nvm_copy_data_t *pdata)
Charles MacNeill 5:89031b2f5316 970 {
Charles MacNeill 5:89031b2f5316 971
Charles MacNeill 5:89031b2f5316 972 return VL53LX_i2c_decode_nvm_copy_data(
Charles MacNeill 5:89031b2f5316 973 buf_size,
Charles MacNeill 5:89031b2f5316 974 pbuffer,
Charles MacNeill 5:89031b2f5316 975 pdata);
Charles MacNeill 5:89031b2f5316 976
Charles MacNeill 5:89031b2f5316 977 }
Charles MacNeill 5:89031b2f5316 978
Charles MacNeill 5:89031b2f5316 979
Charles MacNeill 5:89031b2f5316 980 VL53LX_Error VL53L3CX::VL53L3CX_set_nvm_copy_data(
Charles MacNeill 5:89031b2f5316 981 VL53LX_nvm_copy_data_t *pdata)
Charles MacNeill 5:89031b2f5316 982 {
Charles MacNeill 5:89031b2f5316 983
Charles MacNeill 5:89031b2f5316 984 return VL53LX_set_nvm_copy_data( Dev, pdata);
Charles MacNeill 5:89031b2f5316 985
Charles MacNeill 5:89031b2f5316 986 }
Charles MacNeill 5:89031b2f5316 987
Charles MacNeill 5:89031b2f5316 988 VL53LX_Error VL53L3CX::VL53L3CX_get_nvm_copy_data(
Charles MacNeill 5:89031b2f5316 989 VL53LX_nvm_copy_data_t *pdata)
Charles MacNeill 5:89031b2f5316 990 {
Charles MacNeill 5:89031b2f5316 991
Charles MacNeill 5:89031b2f5316 992 return VL53LX_get_nvm_copy_data(Dev, pdata);
Charles MacNeill 5:89031b2f5316 993
Charles MacNeill 5:89031b2f5316 994 }
Charles MacNeill 5:89031b2f5316 995
Charles MacNeill 5:89031b2f5316 996
Charles MacNeill 5:89031b2f5316 997 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_prev_shadow_system_results(
Charles MacNeill 5:89031b2f5316 998 VL53LX_prev_shadow_system_results_t *pdata,
Charles MacNeill 5:89031b2f5316 999 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1000 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1001 {
Charles MacNeill 5:89031b2f5316 1002
Charles MacNeill 5:89031b2f5316 1003 return VL53LX_i2c_encode_prev_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1004 pdata,
Charles MacNeill 5:89031b2f5316 1005 buf_size,
Charles MacNeill 5:89031b2f5316 1006 pbuffer);
Charles MacNeill 5:89031b2f5316 1007
Charles MacNeill 5:89031b2f5316 1008 }
Charles MacNeill 5:89031b2f5316 1009
Charles MacNeill 5:89031b2f5316 1010
Charles MacNeill 5:89031b2f5316 1011
Charles MacNeill 5:89031b2f5316 1012 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_prev_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1013 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1014 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1015 VL53LX_prev_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1016 {
Charles MacNeill 5:89031b2f5316 1017
Charles MacNeill 5:89031b2f5316 1018 return VL53LX_i2c_decode_prev_shadow_system_results( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1019
Charles MacNeill 5:89031b2f5316 1020 }
Charles MacNeill 5:89031b2f5316 1021
Charles MacNeill 5:89031b2f5316 1022 VL53LX_Error VL53L3CX::VL53L3CX_set_prev_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1023 VL53LX_prev_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1024 {
Charles MacNeill 5:89031b2f5316 1025
Charles MacNeill 5:89031b2f5316 1026 return VL53LX_set_prev_shadow_system_results( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1027
Charles MacNeill 5:89031b2f5316 1028 }
Charles MacNeill 5:89031b2f5316 1029
Charles MacNeill 5:89031b2f5316 1030 VL53LX_Error VL53L3CX::VL53L3CX_get_prev_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1031 VL53LX_prev_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1032 {
Charles MacNeill 5:89031b2f5316 1033
Charles MacNeill 5:89031b2f5316 1034 return VL53LX_get_prev_shadow_system_results( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1035
Charles MacNeill 5:89031b2f5316 1036 }
Charles MacNeill 5:89031b2f5316 1037 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_prev_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1038 VL53LX_prev_shadow_core_results_t *pdata,
Charles MacNeill 5:89031b2f5316 1039 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1040 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1041 {
Charles MacNeill 5:89031b2f5316 1042
Charles MacNeill 5:89031b2f5316 1043 return VL53LX_i2c_encode_prev_shadow_core_results( pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 1044
Charles MacNeill 5:89031b2f5316 1045 }
Charles MacNeill 5:89031b2f5316 1046
Charles MacNeill 5:89031b2f5316 1047 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_prev_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1048 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1049 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1050 VL53LX_prev_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1051 {
Charles MacNeill 5:89031b2f5316 1052
Charles MacNeill 5:89031b2f5316 1053 return VL53LX_i2c_decode_prev_shadow_core_results( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1054
Charles MacNeill 5:89031b2f5316 1055 }
Charles MacNeill 5:89031b2f5316 1056
Charles MacNeill 5:89031b2f5316 1057 VL53LX_Error VL53L3CX::VL53L3CX_set_prev_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1058 VL53LX_prev_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1059 {
Charles MacNeill 5:89031b2f5316 1060
Charles MacNeill 5:89031b2f5316 1061 return VL53LX_set_prev_shadow_core_results(Dev, pdata);
Charles MacNeill 5:89031b2f5316 1062
Charles MacNeill 5:89031b2f5316 1063 }
Charles MacNeill 5:89031b2f5316 1064
Charles MacNeill 5:89031b2f5316 1065 VL53LX_Error VL53L3CX::VL53L3CX_get_prev_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1066 VL53LX_prev_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1067 {
Charles MacNeill 5:89031b2f5316 1068
Charles MacNeill 5:89031b2f5316 1069 return VL53LX_get_prev_shadow_core_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1070
Charles MacNeill 5:89031b2f5316 1071 }
Charles MacNeill 5:89031b2f5316 1072
Charles MacNeill 5:89031b2f5316 1073 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_patch_debug(
Charles MacNeill 5:89031b2f5316 1074 VL53LX_patch_debug_t *pdata,
Charles MacNeill 5:89031b2f5316 1075 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1076 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1077 {
Charles MacNeill 5:89031b2f5316 1078
Charles MacNeill 5:89031b2f5316 1079 return VL53LX_i2c_encode_patch_debug(
Charles MacNeill 5:89031b2f5316 1080 pdata,
Charles MacNeill 5:89031b2f5316 1081 buf_size,
Charles MacNeill 5:89031b2f5316 1082 pbuffer);
Charles MacNeill 5:89031b2f5316 1083
Charles MacNeill 5:89031b2f5316 1084 }
Charles MacNeill 5:89031b2f5316 1085
Charles MacNeill 5:89031b2f5316 1086 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_patch_debug(
Charles MacNeill 5:89031b2f5316 1087 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1088 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1089 VL53LX_patch_debug_t *pdata)
Charles MacNeill 5:89031b2f5316 1090 {
Charles MacNeill 5:89031b2f5316 1091
Charles MacNeill 5:89031b2f5316 1092 return VL53LX_i2c_decode_patch_debug(
Charles MacNeill 5:89031b2f5316 1093 buf_size,
Charles MacNeill 5:89031b2f5316 1094 pbuffer,
Charles MacNeill 5:89031b2f5316 1095 pdata);
Charles MacNeill 5:89031b2f5316 1096
Charles MacNeill 5:89031b2f5316 1097 }
Charles MacNeill 5:89031b2f5316 1098
Charles MacNeill 5:89031b2f5316 1099 VL53LX_Error VL53L3CX::VL53L3CX_set_patch_debug(
Charles MacNeill 5:89031b2f5316 1100 VL53LX_patch_debug_t *pdata)
Charles MacNeill 5:89031b2f5316 1101 {
Charles MacNeill 5:89031b2f5316 1102
Charles MacNeill 5:89031b2f5316 1103 return VL53LX_set_patch_debug( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1104
Charles MacNeill 5:89031b2f5316 1105 }
Charles MacNeill 5:89031b2f5316 1106
Charles MacNeill 5:89031b2f5316 1107 VL53LX_Error VL53L3CX::VL53L3CX_get_patch_debug(
Charles MacNeill 5:89031b2f5316 1108 VL53LX_patch_debug_t *pdata)
Charles MacNeill 5:89031b2f5316 1109 {
Charles MacNeill 5:89031b2f5316 1110
Charles MacNeill 5:89031b2f5316 1111 return VL53LX_get_patch_debug( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1112
Charles MacNeill 5:89031b2f5316 1113 }
Charles MacNeill 5:89031b2f5316 1114 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_gph_general_config(
Charles MacNeill 5:89031b2f5316 1115 VL53LX_gph_general_config_t *pdata,
Charles MacNeill 5:89031b2f5316 1116 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1117 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1118 {
Charles MacNeill 5:89031b2f5316 1119
Charles MacNeill 5:89031b2f5316 1120 return VL53LX_i2c_encode_gph_general_config( pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 1121
Charles MacNeill 5:89031b2f5316 1122 }
Charles MacNeill 5:89031b2f5316 1123 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_gph_general_config(
Charles MacNeill 5:89031b2f5316 1124 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1125 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1126 VL53LX_gph_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1127 {
Charles MacNeill 5:89031b2f5316 1128
Charles MacNeill 5:89031b2f5316 1129 return VL53LX_i2c_decode_gph_general_config( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1130
Charles MacNeill 5:89031b2f5316 1131 }
Charles MacNeill 5:89031b2f5316 1132
Charles MacNeill 5:89031b2f5316 1133 VL53LX_Error VL53L3CX::VL53L3CX_set_gph_general_config(
Charles MacNeill 5:89031b2f5316 1134 VL53LX_gph_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1135 {
Charles MacNeill 5:89031b2f5316 1136
Charles MacNeill 5:89031b2f5316 1137 return VL53LX_set_gph_general_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1138
Charles MacNeill 5:89031b2f5316 1139 }
Charles MacNeill 5:89031b2f5316 1140 VL53LX_Error VL53L3CX::VL53L3CX_get_gph_general_config(
Charles MacNeill 5:89031b2f5316 1141 VL53LX_gph_general_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1142 {
Charles MacNeill 5:89031b2f5316 1143
Charles MacNeill 5:89031b2f5316 1144 return VL53LX_get_gph_general_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1145
Charles MacNeill 5:89031b2f5316 1146 }
Charles MacNeill 5:89031b2f5316 1147
Charles MacNeill 5:89031b2f5316 1148 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_gph_static_config(
Charles MacNeill 5:89031b2f5316 1149 VL53LX_gph_static_config_t *pdata,
Charles MacNeill 5:89031b2f5316 1150 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1151 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1152 {
Charles MacNeill 5:89031b2f5316 1153
Charles MacNeill 5:89031b2f5316 1154
Charles MacNeill 5:89031b2f5316 1155 return VL53LX_i2c_encode_gph_static_config(
Charles MacNeill 5:89031b2f5316 1156 pdata,
Charles MacNeill 5:89031b2f5316 1157 buf_size,
Charles MacNeill 5:89031b2f5316 1158 pbuffer);
Charles MacNeill 5:89031b2f5316 1159
Charles MacNeill 5:89031b2f5316 1160
Charles MacNeill 5:89031b2f5316 1161 }
Charles MacNeill 5:89031b2f5316 1162 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_gph_static_config(
Charles MacNeill 5:89031b2f5316 1163 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1164 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1165 VL53LX_gph_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1166 {
Charles MacNeill 5:89031b2f5316 1167
Charles MacNeill 5:89031b2f5316 1168 return VL53LX_i2c_decode_gph_static_config(
Charles MacNeill 5:89031b2f5316 1169 buf_size,
Charles MacNeill 5:89031b2f5316 1170 pbuffer,
Charles MacNeill 5:89031b2f5316 1171 pdata);
Charles MacNeill 5:89031b2f5316 1172
Charles MacNeill 5:89031b2f5316 1173 }
Charles MacNeill 5:89031b2f5316 1174 VL53LX_Error VL53L3CX::VL53L3CX_set_gph_static_config(
Charles MacNeill 5:89031b2f5316 1175 VL53LX_gph_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1176 {
Charles MacNeill 5:89031b2f5316 1177
Charles MacNeill 5:89031b2f5316 1178 return VL53LX_set_gph_static_config( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1179
Charles MacNeill 5:89031b2f5316 1180 }
Charles MacNeill 5:89031b2f5316 1181
Charles MacNeill 5:89031b2f5316 1182 VL53LX_Error VL53L3CX::VL53L3CX_get_gph_static_config(
Charles MacNeill 5:89031b2f5316 1183 VL53LX_gph_static_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1184 {
Charles MacNeill 5:89031b2f5316 1185
Charles MacNeill 5:89031b2f5316 1186 return VL53LX_get_gph_static_config( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1187
Charles MacNeill 5:89031b2f5316 1188 }
Charles MacNeill 5:89031b2f5316 1189
Charles MacNeill 5:89031b2f5316 1190 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_gph_timing_config(
Charles MacNeill 5:89031b2f5316 1191 VL53LX_gph_timing_config_t *pdata,
Charles MacNeill 5:89031b2f5316 1192 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1193 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1194 {
Charles MacNeill 5:89031b2f5316 1195
Charles MacNeill 5:89031b2f5316 1196 return VL53LX_i2c_encode_gph_timing_config( pdata,
Charles MacNeill 5:89031b2f5316 1197 buf_size,
Charles MacNeill 5:89031b2f5316 1198 pbuffer);
Charles MacNeill 5:89031b2f5316 1199
Charles MacNeill 5:89031b2f5316 1200
Charles MacNeill 5:89031b2f5316 1201 }
Charles MacNeill 5:89031b2f5316 1202
Charles MacNeill 5:89031b2f5316 1203
Charles MacNeill 5:89031b2f5316 1204 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_gph_timing_config(
Charles MacNeill 5:89031b2f5316 1205 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1206 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1207 VL53LX_gph_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1208 {
Charles MacNeill 5:89031b2f5316 1209
Charles MacNeill 5:89031b2f5316 1210 return VL53LX_i2c_decode_gph_timing_config(
Charles MacNeill 5:89031b2f5316 1211 buf_size,
Charles MacNeill 5:89031b2f5316 1212 pbuffer,
Charles MacNeill 5:89031b2f5316 1213 pdata);
Charles MacNeill 5:89031b2f5316 1214
Charles MacNeill 5:89031b2f5316 1215 }
Charles MacNeill 5:89031b2f5316 1216
Charles MacNeill 5:89031b2f5316 1217 VL53LX_Error VL53L3CX::VL53L3CX_set_gph_timing_config(
Charles MacNeill 5:89031b2f5316 1218 VL53LX_gph_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1219 {
Charles MacNeill 5:89031b2f5316 1220
Charles MacNeill 5:89031b2f5316 1221 return VL53LX_set_gph_timing_config( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1222
Charles MacNeill 5:89031b2f5316 1223 }
Charles MacNeill 5:89031b2f5316 1224
Charles MacNeill 5:89031b2f5316 1225 VL53LX_Error VL53L3CX::VL53L3CX_get_gph_timing_config(
Charles MacNeill 5:89031b2f5316 1226 VL53LX_gph_timing_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1227 {
Charles MacNeill 5:89031b2f5316 1228
Charles MacNeill 5:89031b2f5316 1229 return VL53LX_get_gph_timing_config(Dev, pdata);
Charles MacNeill 5:89031b2f5316 1230
Charles MacNeill 5:89031b2f5316 1231 }
Charles MacNeill 5:89031b2f5316 1232
Charles MacNeill 5:89031b2f5316 1233 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_fw_internal(
Charles MacNeill 5:89031b2f5316 1234 VL53LX_fw_internal_t *pdata,
Charles MacNeill 5:89031b2f5316 1235 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1236 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1237 {
Charles MacNeill 5:89031b2f5316 1238
Charles MacNeill 5:89031b2f5316 1239 return VL53LX_i2c_encode_fw_internal(
Charles MacNeill 5:89031b2f5316 1240 pdata,
Charles MacNeill 5:89031b2f5316 1241 buf_size,
Charles MacNeill 5:89031b2f5316 1242 pbuffer);
Charles MacNeill 5:89031b2f5316 1243
Charles MacNeill 5:89031b2f5316 1244 }
Charles MacNeill 5:89031b2f5316 1245
Charles MacNeill 5:89031b2f5316 1246 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_fw_internal(
Charles MacNeill 5:89031b2f5316 1247 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1248 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1249 VL53LX_fw_internal_t *pdata)
Charles MacNeill 5:89031b2f5316 1250 {
Charles MacNeill 5:89031b2f5316 1251
Charles MacNeill 5:89031b2f5316 1252 return VL53LX_i2c_decode_fw_internal( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1253
Charles MacNeill 5:89031b2f5316 1254 }
Charles MacNeill 5:89031b2f5316 1255
Charles MacNeill 5:89031b2f5316 1256 VL53LX_Error VL53L3CX::VL53L3CX_set_fw_internal(
Charles MacNeill 5:89031b2f5316 1257 VL53LX_fw_internal_t *pdata)
Charles MacNeill 5:89031b2f5316 1258 {
Charles MacNeill 5:89031b2f5316 1259
Charles MacNeill 5:89031b2f5316 1260 return VL53LX_set_fw_internal( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1261
Charles MacNeill 5:89031b2f5316 1262 }
Charles MacNeill 5:89031b2f5316 1263 VL53LX_Error VL53L3CX::VL53L3CX_get_fw_internal(
Charles MacNeill 5:89031b2f5316 1264 VL53LX_fw_internal_t *pdata)
Charles MacNeill 5:89031b2f5316 1265 {
Charles MacNeill 5:89031b2f5316 1266
Charles MacNeill 5:89031b2f5316 1267 return VL53LX_get_fw_internal( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1268
Charles MacNeill 5:89031b2f5316 1269 }
Charles MacNeill 5:89031b2f5316 1270
Charles MacNeill 5:89031b2f5316 1271 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_patch_results(
Charles MacNeill 5:89031b2f5316 1272 VL53LX_patch_results_t *pdata,
Charles MacNeill 5:89031b2f5316 1273 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1274 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1275 {
Charles MacNeill 5:89031b2f5316 1276
Charles MacNeill 5:89031b2f5316 1277 return VL53LX_i2c_encode_patch_results(pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 1278
Charles MacNeill 5:89031b2f5316 1279 }
Charles MacNeill 5:89031b2f5316 1280
Charles MacNeill 5:89031b2f5316 1281 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_patch_results(
Charles MacNeill 5:89031b2f5316 1282 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1283 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1284 VL53LX_patch_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1285 {
Charles MacNeill 5:89031b2f5316 1286 return VL53LX_i2c_decode_patch_results( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1287 }
Charles MacNeill 5:89031b2f5316 1288
Charles MacNeill 5:89031b2f5316 1289
Charles MacNeill 5:89031b2f5316 1290 VL53LX_Error VL53L3CX::VL53L3CX_set_patch_results(
Charles MacNeill 5:89031b2f5316 1291 VL53LX_patch_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1292 {
Charles MacNeill 5:89031b2f5316 1293
Charles MacNeill 5:89031b2f5316 1294 return VL53LX_set_patch_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1295
Charles MacNeill 5:89031b2f5316 1296 }
Charles MacNeill 5:89031b2f5316 1297
Charles MacNeill 5:89031b2f5316 1298 VL53LX_Error VL53L3CX::VL53L3CX_get_patch_results(
Charles MacNeill 5:89031b2f5316 1299 VL53LX_patch_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1300 {
Charles MacNeill 5:89031b2f5316 1301
Charles MacNeill 5:89031b2f5316 1302 return VL53LX_get_patch_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1303 }
Charles MacNeill 5:89031b2f5316 1304
Charles MacNeill 5:89031b2f5316 1305 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1306 VL53LX_shadow_system_results_t *pdata,
Charles MacNeill 5:89031b2f5316 1307 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1308 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1309 {
Charles MacNeill 5:89031b2f5316 1310 return VL53LX_i2c_encode_shadow_system_results(pdata,buf_size,pbuffer);
Charles MacNeill 5:89031b2f5316 1311 }
Charles MacNeill 5:89031b2f5316 1312
Charles MacNeill 5:89031b2f5316 1313 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1314 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1315 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1316 VL53LX_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1317 {
Charles MacNeill 5:89031b2f5316 1318 return VL53LX_i2c_decode_shadow_system_results( buf_size, pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 1319 }
Charles MacNeill 5:89031b2f5316 1320
Charles MacNeill 5:89031b2f5316 1321 VL53LX_Error VL53L3CX::VL53L3CX_set_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1322 VL53LX_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1323 {
Charles MacNeill 5:89031b2f5316 1324
Charles MacNeill 5:89031b2f5316 1325 return VL53LX_set_shadow_system_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1326
Charles MacNeill 5:89031b2f5316 1327 }
Charles MacNeill 5:89031b2f5316 1328
Charles MacNeill 5:89031b2f5316 1329
Charles MacNeill 5:89031b2f5316 1330 VL53LX_Error VL53L3CX::VL53L3CX_get_shadow_system_results(
Charles MacNeill 5:89031b2f5316 1331 VL53LX_shadow_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1332 {
Charles MacNeill 5:89031b2f5316 1333
Charles MacNeill 5:89031b2f5316 1334 return VL53LX_get_shadow_system_results( Dev, pdata);
Charles MacNeill 5:89031b2f5316 1335
Charles MacNeill 5:89031b2f5316 1336 }
Charles MacNeill 5:89031b2f5316 1337
Charles MacNeill 5:89031b2f5316 1338 VL53LX_Error VL53L3CX::VL53L3CX_i2c_encode_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1339 VL53LX_shadow_core_results_t *pdata,
Charles MacNeill 5:89031b2f5316 1340 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1341 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1342 {
Charles MacNeill 5:89031b2f5316 1343
Charles MacNeill 5:89031b2f5316 1344 return VL53LX_i2c_encode_shadow_core_results( pdata, buf_size, pbuffer);
Charles MacNeill 5:89031b2f5316 1345
Charles MacNeill 5:89031b2f5316 1346 }
Charles MacNeill 5:89031b2f5316 1347
Charles MacNeill 5:89031b2f5316 1348 VL53LX_Error VL53L3CX::VL53L3CX_i2c_decode_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1349 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1350 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1351 VL53LX_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1352 {
Charles MacNeill 5:89031b2f5316 1353
Charles MacNeill 5:89031b2f5316 1354 return VL53LX_i2c_decode_shadow_core_results( buf_size,pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 1355
Charles MacNeill 5:89031b2f5316 1356 }
Charles MacNeill 5:89031b2f5316 1357
Charles MacNeill 5:89031b2f5316 1358 VL53LX_Error VL53L3CX::VL53L3CX_set_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1359 VL53LX_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1360 {
Charles MacNeill 5:89031b2f5316 1361
Charles MacNeill 5:89031b2f5316 1362 return VL53LX_set_shadow_core_results( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1363
Charles MacNeill 5:89031b2f5316 1364 }
Charles MacNeill 5:89031b2f5316 1365
Charles MacNeill 5:89031b2f5316 1366 VL53LX_Error VL53L3CX::VL53L3CX_get_shadow_core_results(
Charles MacNeill 5:89031b2f5316 1367 VL53LX_shadow_core_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1368 {
Charles MacNeill 5:89031b2f5316 1369
Charles MacNeill 5:89031b2f5316 1370 return VL53LX_get_shadow_core_results( Dev,pdata);
Charles MacNeill 5:89031b2f5316 1371
Charles MacNeill 5:89031b2f5316 1372 }
Charles MacNeill 5:89031b2f5316 1373
Charles MacNeill 5:89031b2f5316 1374
Charles MacNeill 5:89031b2f5316 1375 /* vl53lx_nvm.c */
Charles MacNeill 5:89031b2f5316 1376
Charles MacNeill 5:89031b2f5316 1377 VL53LX_Error VL53L3CX::VL53L3CX_nvm_enable(
Charles MacNeill 5:89031b2f5316 1378 uint16_t nvm_ctrl_pulse_width,
Charles MacNeill 5:89031b2f5316 1379 int32_t nvm_power_up_delay_us)
Charles MacNeill 5:89031b2f5316 1380 {
Charles MacNeill 5:89031b2f5316 1381
Charles MacNeill 5:89031b2f5316 1382 return VL53LX_nvm_enable(Dev, nvm_ctrl_pulse_width, nvm_power_up_delay_us);
Charles MacNeill 5:89031b2f5316 1383
Charles MacNeill 5:89031b2f5316 1384 }
Charles MacNeill 5:89031b2f5316 1385
Charles MacNeill 5:89031b2f5316 1386 VL53LX_Error VL53L3CX::VL53L3CX_nvm_read(
Charles MacNeill 5:89031b2f5316 1387 uint8_t start_address,
Charles MacNeill 5:89031b2f5316 1388 uint8_t count,
Charles MacNeill 5:89031b2f5316 1389 uint8_t *pdata)
Charles MacNeill 5:89031b2f5316 1390 {
Charles MacNeill 5:89031b2f5316 1391
Charles MacNeill 5:89031b2f5316 1392 return VL53LX_nvm_read( Dev, start_address, count, pdata);
Charles MacNeill 5:89031b2f5316 1393
Charles MacNeill 5:89031b2f5316 1394 }
Charles MacNeill 5:89031b2f5316 1395
Charles MacNeill 5:89031b2f5316 1396 VL53LX_Error VL53L3CX::VL53L3CX_nvm_disable()
Charles MacNeill 5:89031b2f5316 1397 {
Charles MacNeill 5:89031b2f5316 1398
Charles MacNeill 5:89031b2f5316 1399 return VL53LX_nvm_disable( Dev );
Charles MacNeill 5:89031b2f5316 1400
Charles MacNeill 5:89031b2f5316 1401 }
Charles MacNeill 5:89031b2f5316 1402
Charles MacNeill 5:89031b2f5316 1403
Charles MacNeill 5:89031b2f5316 1404 VL53LX_Error VL53L3CX::VL53L3CX_nvm_format_decode(
Charles MacNeill 5:89031b2f5316 1405 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1406 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1407 VL53LX_decoded_nvm_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1408 {
Charles MacNeill 5:89031b2f5316 1409
Charles MacNeill 5:89031b2f5316 1410 return VL53LX_nvm_disable( Dev );
Charles MacNeill 5:89031b2f5316 1411
Charles MacNeill 5:89031b2f5316 1412 }
Charles MacNeill 5:89031b2f5316 1413 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_optical_centre(
Charles MacNeill 5:89031b2f5316 1414 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1415 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1416 VL53LX_optical_centre_t *pdata)
Charles MacNeill 5:89031b2f5316 1417 {
Charles MacNeill 5:89031b2f5316 1418
Charles MacNeill 5:89031b2f5316 1419 return VL53LX_nvm_decode_optical_centre( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1420
Charles MacNeill 5:89031b2f5316 1421 }
Charles MacNeill 5:89031b2f5316 1422
Charles MacNeill 5:89031b2f5316 1423 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_cal_peak_rate_map(
Charles MacNeill 5:89031b2f5316 1424 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1425 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1426 VL53LX_cal_peak_rate_map_t *pdata)
Charles MacNeill 5:89031b2f5316 1427 {
Charles MacNeill 5:89031b2f5316 1428
Charles MacNeill 5:89031b2f5316 1429 return VL53LX_nvm_decode_cal_peak_rate_map( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1430
Charles MacNeill 5:89031b2f5316 1431 }
Charles MacNeill 5:89031b2f5316 1432
Charles MacNeill 5:89031b2f5316 1433 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_additional_offset_cal_data(
Charles MacNeill 5:89031b2f5316 1434 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1435 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1436 VL53LX_additional_offset_cal_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1437 {
Charles MacNeill 5:89031b2f5316 1438
Charles MacNeill 5:89031b2f5316 1439 return VL53LX_nvm_decode_additional_offset_cal_data( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1440
Charles MacNeill 5:89031b2f5316 1441 }
Charles MacNeill 5:89031b2f5316 1442
Charles MacNeill 5:89031b2f5316 1443
Charles MacNeill 5:89031b2f5316 1444 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_fmt_range_results_data(
Charles MacNeill 5:89031b2f5316 1445 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1446 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1447 VL53LX_decoded_nvm_fmt_range_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1448 {
Charles MacNeill 5:89031b2f5316 1449
Charles MacNeill 5:89031b2f5316 1450 return VL53LX_nvm_decode_fmt_range_results_data( buf_size, pbuffer,pdata);
Charles MacNeill 5:89031b2f5316 1451
Charles MacNeill 5:89031b2f5316 1452 }
Charles MacNeill 5:89031b2f5316 1453
Charles MacNeill 5:89031b2f5316 1454
Charles MacNeill 5:89031b2f5316 1455 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_fmt_info(
Charles MacNeill 5:89031b2f5316 1456 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1457 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1458 VL53LX_decoded_nvm_fmt_info_t *pdata)
Charles MacNeill 5:89031b2f5316 1459 {
Charles MacNeill 5:89031b2f5316 1460
Charles MacNeill 5:89031b2f5316 1461 return VL53LX_nvm_decode_fmt_info( buf_size, pbuffer, pdata);
Charles MacNeill 5:89031b2f5316 1462
Charles MacNeill 5:89031b2f5316 1463 }
Charles MacNeill 5:89031b2f5316 1464
Charles MacNeill 5:89031b2f5316 1465
Charles MacNeill 5:89031b2f5316 1466 VL53LX_Error VL53L3CX::VL53L3CX_nvm_decode_ews_info(
Charles MacNeill 5:89031b2f5316 1467 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 1468 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 1469 VL53LX_decoded_nvm_ews_info_t *pdata)
Charles MacNeill 5:89031b2f5316 1470 {
Charles MacNeill 5:89031b2f5316 1471
Charles MacNeill 5:89031b2f5316 1472
Charles MacNeill 5:89031b2f5316 1473 return VL53LX_nvm_decode_ews_info(
Charles MacNeill 5:89031b2f5316 1474 buf_size,
Charles MacNeill 5:89031b2f5316 1475 pbuffer,
Charles MacNeill 5:89031b2f5316 1476 pdata);
Charles MacNeill 5:89031b2f5316 1477
Charles MacNeill 5:89031b2f5316 1478
Charles MacNeill 5:89031b2f5316 1479 }
Charles MacNeill 5:89031b2f5316 1480
Charles MacNeill 5:89031b2f5316 1481
Charles MacNeill 5:89031b2f5316 1482 void VL53L3CX::VL53L3CX_nvm_format_encode(
Charles MacNeill 5:89031b2f5316 1483 VL53LX_decoded_nvm_data_t *pnvm_info,
Charles MacNeill 5:89031b2f5316 1484 uint8_t *pnvm_data)
Charles MacNeill 5:89031b2f5316 1485 {
Charles MacNeill 5:89031b2f5316 1486 SUPPRESS_UNUSED_WARNING(pnvm_info);
Charles MacNeill 5:89031b2f5316 1487 SUPPRESS_UNUSED_WARNING(pnvm_data);
Charles MacNeill 5:89031b2f5316 1488 }
Charles MacNeill 5:89031b2f5316 1489
Charles MacNeill 5:89031b2f5316 1490 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm_raw_data(
Charles MacNeill 5:89031b2f5316 1491 uint8_t start_address,
Charles MacNeill 5:89031b2f5316 1492 uint8_t count,
Charles MacNeill 5:89031b2f5316 1493 uint8_t *pnvm_raw_data)
Charles MacNeill 5:89031b2f5316 1494 {
Charles MacNeill 5:89031b2f5316 1495
Charles MacNeill 5:89031b2f5316 1496 return VL53LX_read_nvm_raw_data(
Charles MacNeill 5:89031b2f5316 1497 Dev,
Charles MacNeill 5:89031b2f5316 1498 start_address,
Charles MacNeill 5:89031b2f5316 1499 count,
Charles MacNeill 5:89031b2f5316 1500 pnvm_raw_data);
Charles MacNeill 5:89031b2f5316 1501
Charles MacNeill 5:89031b2f5316 1502 }
Charles MacNeill 5:89031b2f5316 1503
Charles MacNeill 5:89031b2f5316 1504 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm(
Charles MacNeill 5:89031b2f5316 1505 uint8_t nvm_format,
Charles MacNeill 5:89031b2f5316 1506 VL53LX_decoded_nvm_data_t *pnvm_info)
Charles MacNeill 5:89031b2f5316 1507 {
Charles MacNeill 5:89031b2f5316 1508
Charles MacNeill 5:89031b2f5316 1509 return VL53LX_read_nvm(Dev, nvm_format,pnvm_info);
Charles MacNeill 5:89031b2f5316 1510
Charles MacNeill 5:89031b2f5316 1511 }
Charles MacNeill 5:89031b2f5316 1512
Charles MacNeill 5:89031b2f5316 1513 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm_optical_centre(
Charles MacNeill 5:89031b2f5316 1514 VL53LX_optical_centre_t *pcentre)
Charles MacNeill 5:89031b2f5316 1515 {
Charles MacNeill 5:89031b2f5316 1516
Charles MacNeill 5:89031b2f5316 1517 return VL53LX_read_nvm_optical_centre(
Charles MacNeill 5:89031b2f5316 1518 Dev,
Charles MacNeill 5:89031b2f5316 1519 pcentre);
Charles MacNeill 5:89031b2f5316 1520
Charles MacNeill 5:89031b2f5316 1521 }
Charles MacNeill 5:89031b2f5316 1522
Charles MacNeill 5:89031b2f5316 1523 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm_cal_peak_rate_map(
Charles MacNeill 5:89031b2f5316 1524 VL53LX_cal_peak_rate_map_t *pcal_data)
Charles MacNeill 5:89031b2f5316 1525 {
Charles MacNeill 5:89031b2f5316 1526
Charles MacNeill 5:89031b2f5316 1527
Charles MacNeill 5:89031b2f5316 1528 return VL53LX_read_nvm_cal_peak_rate_map(
Charles MacNeill 5:89031b2f5316 1529 Dev,
Charles MacNeill 5:89031b2f5316 1530 pcal_data);
Charles MacNeill 5:89031b2f5316 1531
Charles MacNeill 5:89031b2f5316 1532 }
Charles MacNeill 5:89031b2f5316 1533
Charles MacNeill 5:89031b2f5316 1534
Charles MacNeill 5:89031b2f5316 1535 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm_additional_offset_cal_data(
Charles MacNeill 5:89031b2f5316 1536 VL53LX_additional_offset_cal_data_t *pcal_data)
Charles MacNeill 5:89031b2f5316 1537 {
Charles MacNeill 5:89031b2f5316 1538
Charles MacNeill 5:89031b2f5316 1539 return VL53LX_read_nvm_additional_offset_cal_data(
Charles MacNeill 5:89031b2f5316 1540 Dev,
Charles MacNeill 5:89031b2f5316 1541 pcal_data);
Charles MacNeill 5:89031b2f5316 1542
Charles MacNeill 5:89031b2f5316 1543 }
Charles MacNeill 5:89031b2f5316 1544
Charles MacNeill 5:89031b2f5316 1545 VL53LX_Error VL53L3CX::VL53L3CX_read_nvm_fmt_range_results_data(
Charles MacNeill 5:89031b2f5316 1546 uint16_t range_results_select,
Charles MacNeill 5:89031b2f5316 1547 VL53LX_decoded_nvm_fmt_range_data_t *prange_data)
Charles MacNeill 5:89031b2f5316 1548 {
Charles MacNeill 5:89031b2f5316 1549 return VL53LX_read_nvm_fmt_range_results_data(
Charles MacNeill 5:89031b2f5316 1550 Dev,
Charles MacNeill 5:89031b2f5316 1551 range_results_select,
Charles MacNeill 5:89031b2f5316 1552 prange_data);
Charles MacNeill 5:89031b2f5316 1553
Charles MacNeill 5:89031b2f5316 1554 }
Charles MacNeill 5:89031b2f5316 1555
Charles MacNeill 5:89031b2f5316 1556 /* vl53lx_platform_ipp.c */
Charles MacNeill 5:89031b2f5316 1557
Charles MacNeill 5:89031b2f5316 1558 VL53LX_Error VL53L3CX::VL53L3CX_ipp_hist_process_data(
Charles MacNeill 5:89031b2f5316 1559 VL53LX_dmax_calibration_data_t *pdmax_cal,
Charles MacNeill 5:89031b2f5316 1560 VL53LX_hist_gen3_dmax_config_t *pdmax_cfg,
Charles MacNeill 5:89031b2f5316 1561 VL53LX_hist_post_process_config_t *ppost_cfg,
Charles MacNeill 5:89031b2f5316 1562 VL53LX_histogram_bin_data_t *pbins,
Charles MacNeill 5:89031b2f5316 1563 VL53LX_xtalk_histogram_data_t *pxtalk,
Charles MacNeill 5:89031b2f5316 1564 uint8_t *pArea1,
Charles MacNeill 5:89031b2f5316 1565 uint8_t *pArea2,
Charles MacNeill 5:89031b2f5316 1566 uint8_t *phisto_merge_nb,
Charles MacNeill 5:89031b2f5316 1567 VL53LX_range_results_t *presults)
Charles MacNeill 5:89031b2f5316 1568 {
Charles MacNeill 5:89031b2f5316 1569
Charles MacNeill 5:89031b2f5316 1570 return VL53L3CX_ipp_hist_process_data( pdmax_cal, pdmax_cfg,ppost_cfg,pbins,pxtalk,pArea1,pArea2,phisto_merge_nb,presults);
Charles MacNeill 5:89031b2f5316 1571
Charles MacNeill 5:89031b2f5316 1572 }
Charles MacNeill 5:89031b2f5316 1573
Charles MacNeill 5:89031b2f5316 1574
Charles MacNeill 5:89031b2f5316 1575 VL53LX_Error VL53L3CX::VL53L3CX_ipp_hist_ambient_dmax(
Charles MacNeill 5:89031b2f5316 1576 uint16_t target_reflectance,
Charles MacNeill 5:89031b2f5316 1577 VL53LX_dmax_calibration_data_t *pdmax_cal,
Charles MacNeill 5:89031b2f5316 1578 VL53LX_hist_gen3_dmax_config_t *pdmax_cfg,
Charles MacNeill 5:89031b2f5316 1579 VL53LX_histogram_bin_data_t *pbins,
Charles MacNeill 5:89031b2f5316 1580 int16_t *pambient_dmax_mm)
Charles MacNeill 5:89031b2f5316 1581 {
Charles MacNeill 5:89031b2f5316 1582
Charles MacNeill 5:89031b2f5316 1583
Charles MacNeill 5:89031b2f5316 1584 return VL53LX_ipp_hist_ambient_dmax( Dev,
Charles MacNeill 5:89031b2f5316 1585 target_reflectance,
Charles MacNeill 5:89031b2f5316 1586 pdmax_cal,
Charles MacNeill 5:89031b2f5316 1587 pdmax_cfg,
Charles MacNeill 5:89031b2f5316 1588 pbins,
Charles MacNeill 5:89031b2f5316 1589 pambient_dmax_mm);
Charles MacNeill 5:89031b2f5316 1590
Charles MacNeill 5:89031b2f5316 1591
Charles MacNeill 5:89031b2f5316 1592 }
Charles MacNeill 5:89031b2f5316 1593
Charles MacNeill 5:89031b2f5316 1594
Charles MacNeill 5:89031b2f5316 1595 VL53LX_Error VL53L3CX::VL53L3CX_ipp_xtalk_calibration_process_data(
Charles MacNeill 5:89031b2f5316 1596 VL53LX_xtalk_range_results_t *pxtalk_ranges,
Charles MacNeill 5:89031b2f5316 1597 VL53LX_xtalk_histogram_data_t *pxtalk_shape,
Charles MacNeill 5:89031b2f5316 1598 VL53LX_xtalk_calibration_results_t *pxtalk_cal)
Charles MacNeill 5:89031b2f5316 1599 {
Charles MacNeill 5:89031b2f5316 1600
Charles MacNeill 5:89031b2f5316 1601 return VL53LX_ipp_xtalk_calibration_process_data( Dev,
Charles MacNeill 5:89031b2f5316 1602 pxtalk_ranges,
Charles MacNeill 5:89031b2f5316 1603 pxtalk_shape,
Charles MacNeill 5:89031b2f5316 1604 pxtalk_cal);
Charles MacNeill 5:89031b2f5316 1605
Charles MacNeill 5:89031b2f5316 1606 }
Charles MacNeill 5:89031b2f5316 1607
Charles MacNeill 5:89031b2f5316 1608
Charles MacNeill 5:89031b2f5316 1609
Charles MacNeill 5:89031b2f5316 1610
Charles MacNeill 5:89031b2f5316 1611 /* vl53lx_hist_funcs.c */
Charles MacNeill 5:89031b2f5316 1612
Charles MacNeill 5:89031b2f5316 1613 VL53LX_Error VL53L3CX::VL53L3CX_hist_process_data(
Charles MacNeill 5:89031b2f5316 1614 VL53LX_dmax_calibration_data_t *pdmax_cal,
Charles MacNeill 5:89031b2f5316 1615 VL53LX_hist_gen3_dmax_config_t *pdmax_cfg,
Charles MacNeill 5:89031b2f5316 1616 VL53LX_hist_post_process_config_t *ppost_cfg,
Charles MacNeill 5:89031b2f5316 1617 VL53LX_histogram_bin_data_t *pbins_input,
Charles MacNeill 5:89031b2f5316 1618 VL53LX_xtalk_histogram_data_t *pxtalk_shape,
Charles MacNeill 5:89031b2f5316 1619 uint8_t *pArea1,
Charles MacNeill 5:89031b2f5316 1620 uint8_t *pArea2,
Charles MacNeill 5:89031b2f5316 1621 VL53LX_range_results_t *presults,
Charles MacNeill 5:89031b2f5316 1622 uint8_t *HistMergeNumber)
Charles MacNeill 5:89031b2f5316 1623 {
Charles MacNeill 5:89031b2f5316 1624
Charles MacNeill 5:89031b2f5316 1625 return VL53LX_hist_process_data(pdmax_cal,pdmax_cfg,ppost_cfg,pbins_input,
Charles MacNeill 5:89031b2f5316 1626 pxtalk_shape,pArea1,pArea2,presults,HistMergeNumber);
Charles MacNeill 5:89031b2f5316 1627
Charles MacNeill 5:89031b2f5316 1628 }
Charles MacNeill 5:89031b2f5316 1629
Charles MacNeill 5:89031b2f5316 1630 VL53LX_Error VL53L3CX::VL53L3CX_hist_ambient_dmax(
Charles MacNeill 5:89031b2f5316 1631 uint16_t target_reflectance,
Charles MacNeill 5:89031b2f5316 1632 VL53LX_dmax_calibration_data_t *pdmax_cal,
Charles MacNeill 5:89031b2f5316 1633 VL53LX_hist_gen3_dmax_config_t *pdmax_cfg,
Charles MacNeill 5:89031b2f5316 1634 VL53LX_histogram_bin_data_t *pbins,
Charles MacNeill 5:89031b2f5316 1635 int16_t *pambient_dmax_mm)
Charles MacNeill 5:89031b2f5316 1636 {
Charles MacNeill 5:89031b2f5316 1637
Charles MacNeill 5:89031b2f5316 1638 return VL53LX_hist_ambient_dmax(target_reflectance, pdmax_cal, pdmax_cfg, pbins,pambient_dmax_mm);
Charles MacNeill 5:89031b2f5316 1639
Charles MacNeill 5:89031b2f5316 1640 }
Charles MacNeill 5:89031b2f5316 1641
Charles MacNeill 5:89031b2f5316 1642 /* vl53lx_core_support.c */
Charles MacNeill 5:89031b2f5316 1643
Charles MacNeill 5:89031b2f5316 1644 uint32_t VL53L3CX::VL53L3CX_calc_pll_period_us(
Charles MacNeill 5:89031b2f5316 1645 uint16_t fast_osc_frequency)
Charles MacNeill 5:89031b2f5316 1646 {
Charles MacNeill 5:89031b2f5316 1647
Charles MacNeill 5:89031b2f5316 1648 return VL53LX_calc_pll_period_us(fast_osc_frequency);
Charles MacNeill 5:89031b2f5316 1649
Charles MacNeill 5:89031b2f5316 1650 }
Charles MacNeill 5:89031b2f5316 1651
Charles MacNeill 5:89031b2f5316 1652 uint32_t VL53L3CX::VL53L3CX_duration_maths(
Charles MacNeill 5:89031b2f5316 1653 uint32_t pll_period_us,
Charles MacNeill 5:89031b2f5316 1654 uint32_t vcsel_parm_pclks,
Charles MacNeill 5:89031b2f5316 1655 uint32_t window_vclks,
Charles MacNeill 5:89031b2f5316 1656 uint32_t elapsed_mclks)
Charles MacNeill 5:89031b2f5316 1657 {
Charles MacNeill 5:89031b2f5316 1658
Charles MacNeill 5:89031b2f5316 1659 return VL53LX_duration_maths( pll_period_us,vcsel_parm_pclks,window_vclks,elapsed_mclks);
Charles MacNeill 5:89031b2f5316 1660
Charles MacNeill 5:89031b2f5316 1661 }
Charles MacNeill 5:89031b2f5316 1662
Charles MacNeill 5:89031b2f5316 1663 uint32_t VL53L3CX::VL53L3CX_events_per_spad_maths(
Charles MacNeill 5:89031b2f5316 1664 int32_t VL53LX_p_010,
Charles MacNeill 5:89031b2f5316 1665 uint16_t num_spads,
Charles MacNeill 5:89031b2f5316 1666 uint32_t duration)
Charles MacNeill 5:89031b2f5316 1667 {
Charles MacNeill 5:89031b2f5316 1668
Charles MacNeill 5:89031b2f5316 1669 return VL53LX_events_per_spad_maths( VL53LX_p_010,num_spads, duration);
Charles MacNeill 5:89031b2f5316 1670
Charles MacNeill 5:89031b2f5316 1671 }
Charles MacNeill 5:89031b2f5316 1672
Charles MacNeill 5:89031b2f5316 1673 uint32_t VL53L3CX::VL53L3CX_isqrt(uint32_t num)
Charles MacNeill 5:89031b2f5316 1674 {
Charles MacNeill 5:89031b2f5316 1675
Charles MacNeill 5:89031b2f5316 1676 return VL53LX_isqrt(num);
Charles MacNeill 5:89031b2f5316 1677
Charles MacNeill 5:89031b2f5316 1678 }
Charles MacNeill 5:89031b2f5316 1679
Charles MacNeill 5:89031b2f5316 1680 void VL53L3CX::VL53L3CX_hist_calc_zero_distance_phase(
Charles MacNeill 5:89031b2f5316 1681 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1682 {
Charles MacNeill 5:89031b2f5316 1683
Charles MacNeill 5:89031b2f5316 1684 return VL53LX_hist_calc_zero_distance_phase(pdata);
Charles MacNeill 5:89031b2f5316 1685
Charles MacNeill 5:89031b2f5316 1686 }
Charles MacNeill 5:89031b2f5316 1687
Charles MacNeill 5:89031b2f5316 1688 void VL53L3CX::VL53L3CX_hist_estimate_ambient_from_thresholded_bins(
Charles MacNeill 5:89031b2f5316 1689 int32_t ambient_threshold_sigma,
Charles MacNeill 5:89031b2f5316 1690 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1691 {
Charles MacNeill 5:89031b2f5316 1692
Charles MacNeill 5:89031b2f5316 1693 return VL53LX_hist_estimate_ambient_from_thresholded_bins( ambient_threshold_sigma, pdata);
Charles MacNeill 5:89031b2f5316 1694
Charles MacNeill 5:89031b2f5316 1695 }
Charles MacNeill 5:89031b2f5316 1696
Charles MacNeill 5:89031b2f5316 1697
Charles MacNeill 5:89031b2f5316 1698 void VL53L3CX::VL53L3CX_hist_remove_ambient_bins(
Charles MacNeill 5:89031b2f5316 1699 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1700 {
Charles MacNeill 5:89031b2f5316 1701
Charles MacNeill 5:89031b2f5316 1702 return VL53LX_hist_remove_ambient_bins(pdata);
Charles MacNeill 5:89031b2f5316 1703
Charles MacNeill 5:89031b2f5316 1704 }
Charles MacNeill 5:89031b2f5316 1705
Charles MacNeill 5:89031b2f5316 1706
Charles MacNeill 5:89031b2f5316 1707 uint32_t VL53L3CX::VL53L3CX_calc_pll_period_mm(
Charles MacNeill 5:89031b2f5316 1708 uint16_t fast_osc_frequency)
Charles MacNeill 5:89031b2f5316 1709 {
Charles MacNeill 5:89031b2f5316 1710
Charles MacNeill 5:89031b2f5316 1711 return VL53LX_calc_pll_period_mm( fast_osc_frequency);
Charles MacNeill 5:89031b2f5316 1712
Charles MacNeill 5:89031b2f5316 1713 }
Charles MacNeill 5:89031b2f5316 1714
Charles MacNeill 5:89031b2f5316 1715
Charles MacNeill 5:89031b2f5316 1716 uint16_t VL53L3CX::VL53L3CX_rate_maths(
Charles MacNeill 5:89031b2f5316 1717 int32_t VL53LX_p_018,
Charles MacNeill 5:89031b2f5316 1718 uint32_t time_us)
Charles MacNeill 5:89031b2f5316 1719 {
Charles MacNeill 5:89031b2f5316 1720
Charles MacNeill 5:89031b2f5316 1721 return VL53LX_rate_maths( VL53LX_p_018 , time_us);
Charles MacNeill 5:89031b2f5316 1722
Charles MacNeill 5:89031b2f5316 1723 }
Charles MacNeill 5:89031b2f5316 1724
Charles MacNeill 5:89031b2f5316 1725 uint16_t VL53L3CX::VL53L3CX_rate_per_spad_maths(
Charles MacNeill 5:89031b2f5316 1726 uint32_t frac_bits,
Charles MacNeill 5:89031b2f5316 1727 uint32_t peak_count_rate,
Charles MacNeill 5:89031b2f5316 1728 uint16_t num_spads,
Charles MacNeill 5:89031b2f5316 1729 uint32_t max_output_value)
Charles MacNeill 5:89031b2f5316 1730 {
Charles MacNeill 5:89031b2f5316 1731
Charles MacNeill 5:89031b2f5316 1732 return VL53LX_rate_per_spad_maths( frac_bits,
Charles MacNeill 5:89031b2f5316 1733 peak_count_rate,
Charles MacNeill 5:89031b2f5316 1734 num_spads,
Charles MacNeill 5:89031b2f5316 1735 max_output_value);
Charles MacNeill 5:89031b2f5316 1736
Charles MacNeill 5:89031b2f5316 1737 }
Charles MacNeill 5:89031b2f5316 1738
Charles MacNeill 5:89031b2f5316 1739 int32_t VL53L3CX::VL53L3CX_range_maths(
Charles MacNeill 5:89031b2f5316 1740 uint16_t fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 1741 uint16_t VL53LX_p_014,
Charles MacNeill 5:89031b2f5316 1742 uint16_t zero_distance_phase,
Charles MacNeill 5:89031b2f5316 1743 uint8_t fractional_bits,
Charles MacNeill 5:89031b2f5316 1744 int32_t gain_factor,
Charles MacNeill 5:89031b2f5316 1745 int32_t range_offset_mm)
Charles MacNeill 5:89031b2f5316 1746 {
Charles MacNeill 5:89031b2f5316 1747
Charles MacNeill 5:89031b2f5316 1748 return VL53LX_range_maths( fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 1749 VL53LX_p_014,
Charles MacNeill 5:89031b2f5316 1750 zero_distance_phase,
Charles MacNeill 5:89031b2f5316 1751 fractional_bits,
Charles MacNeill 5:89031b2f5316 1752 gain_factor,
Charles MacNeill 5:89031b2f5316 1753 range_offset_mm);
Charles MacNeill 5:89031b2f5316 1754
Charles MacNeill 5:89031b2f5316 1755 }
Charles MacNeill 5:89031b2f5316 1756
Charles MacNeill 5:89031b2f5316 1757 uint8_t VL53L3CX::VL53L3CX_decode_vcsel_period(uint8_t vcsel_period_reg)
Charles MacNeill 5:89031b2f5316 1758 {
Charles MacNeill 5:89031b2f5316 1759 return VL53LX_decode_vcsel_period( vcsel_period_reg);
Charles MacNeill 5:89031b2f5316 1760
Charles MacNeill 5:89031b2f5316 1761 }
Charles MacNeill 5:89031b2f5316 1762
Charles MacNeill 5:89031b2f5316 1763
Charles MacNeill 5:89031b2f5316 1764 void VL53L3CX::VL53L3CX_copy_xtalk_bin_data_to_histogram_data_struct(
Charles MacNeill 5:89031b2f5316 1765 VL53LX_xtalk_histogram_shape_t *pxtalk,
Charles MacNeill 5:89031b2f5316 1766 VL53LX_histogram_bin_data_t *phist)
Charles MacNeill 5:89031b2f5316 1767 {
Charles MacNeill 5:89031b2f5316 1768
Charles MacNeill 5:89031b2f5316 1769 VL53LX_copy_xtalk_bin_data_to_histogram_data_struct( pxtalk, phist);
Charles MacNeill 5:89031b2f5316 1770
Charles MacNeill 5:89031b2f5316 1771 }
Charles MacNeill 5:89031b2f5316 1772
Charles MacNeill 5:89031b2f5316 1773 void VL53L3CX::VL53L3CX_init_histogram_bin_data_struct(
Charles MacNeill 5:89031b2f5316 1774 int32_t bin_value,
Charles MacNeill 5:89031b2f5316 1775 uint16_t VL53LX_p_021,
Charles MacNeill 5:89031b2f5316 1776 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1777 {
Charles MacNeill 5:89031b2f5316 1778
Charles MacNeill 5:89031b2f5316 1779 VL53LX_init_histogram_bin_data_struct( bin_value,
Charles MacNeill 5:89031b2f5316 1780 VL53LX_p_021,
Charles MacNeill 5:89031b2f5316 1781 pdata);
Charles MacNeill 5:89031b2f5316 1782
Charles MacNeill 5:89031b2f5316 1783 }
Charles MacNeill 5:89031b2f5316 1784
Charles MacNeill 5:89031b2f5316 1785 void VL53L3CX::VL53L3CX_decode_row_col(
Charles MacNeill 5:89031b2f5316 1786 uint8_t spad_number,
Charles MacNeill 5:89031b2f5316 1787 uint8_t *prow,
Charles MacNeill 5:89031b2f5316 1788 uint8_t *pcol)
Charles MacNeill 5:89031b2f5316 1789 {
Charles MacNeill 5:89031b2f5316 1790
Charles MacNeill 5:89031b2f5316 1791 VL53LX_decode_row_col( spad_number,
Charles MacNeill 5:89031b2f5316 1792 prow,
Charles MacNeill 5:89031b2f5316 1793 pcol);
Charles MacNeill 5:89031b2f5316 1794
Charles MacNeill 5:89031b2f5316 1795 }
Charles MacNeill 5:89031b2f5316 1796
Charles MacNeill 5:89031b2f5316 1797 void VL53L3CX::VL53L3CX_hist_find_min_max_bin_values(
Charles MacNeill 5:89031b2f5316 1798 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1799 {
Charles MacNeill 5:89031b2f5316 1800
Charles MacNeill 5:89031b2f5316 1801 VL53LX_hist_find_min_max_bin_values(pdata);
Charles MacNeill 5:89031b2f5316 1802
Charles MacNeill 5:89031b2f5316 1803 }
Charles MacNeill 5:89031b2f5316 1804
Charles MacNeill 5:89031b2f5316 1805 void VL53L3CX::VL53L3CX_hist_estimate_ambient_from_ambient_bins(
Charles MacNeill 5:89031b2f5316 1806 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 1807 {
Charles MacNeill 5:89031b2f5316 1808 VL53LX_hist_estimate_ambient_from_ambient_bins(pdata);
Charles MacNeill 5:89031b2f5316 1809
Charles MacNeill 5:89031b2f5316 1810 }
Charles MacNeill 5:89031b2f5316 1811 /* vl53lx_core.c */
Charles MacNeill 5:89031b2f5316 1812 void VL53L3CX::VL53L3CX_init_version()
Charles MacNeill 5:89031b2f5316 1813 {
Charles MacNeill 5:89031b2f5316 1814 VL53LX_init_version(Dev);
Charles MacNeill 5:89031b2f5316 1815
Charles MacNeill 5:89031b2f5316 1816 }
Charles MacNeill 5:89031b2f5316 1817
Charles MacNeill 5:89031b2f5316 1818 void VL53L3CX::VL53L3CX_init_ll_driver_state(
Charles MacNeill 5:89031b2f5316 1819 VL53LX_DeviceState device_state)
Charles MacNeill 5:89031b2f5316 1820 {
Charles MacNeill 5:89031b2f5316 1821
Charles MacNeill 5:89031b2f5316 1822 VL53LX_init_ll_driver_state(Dev, device_state);
Charles MacNeill 5:89031b2f5316 1823
Charles MacNeill 5:89031b2f5316 1824 }
Charles MacNeill 5:89031b2f5316 1825
Charles MacNeill 5:89031b2f5316 1826
Charles MacNeill 5:89031b2f5316 1827 VL53LX_Error VL53L3CX::VL53L3CX_update_ll_driver_rd_state()
Charles MacNeill 5:89031b2f5316 1828 {
Charles MacNeill 5:89031b2f5316 1829
Charles MacNeill 5:89031b2f5316 1830 return VL53LX_update_ll_driver_rd_state(Dev);
Charles MacNeill 5:89031b2f5316 1831
Charles MacNeill 5:89031b2f5316 1832 }
Charles MacNeill 5:89031b2f5316 1833
Charles MacNeill 5:89031b2f5316 1834 VL53LX_Error VL53L3CX::VL53L3CX_check_ll_driver_rd_state()
Charles MacNeill 5:89031b2f5316 1835 {
Charles MacNeill 5:89031b2f5316 1836
Charles MacNeill 5:89031b2f5316 1837 return VL53LX_check_ll_driver_rd_state(Dev);
Charles MacNeill 5:89031b2f5316 1838
Charles MacNeill 5:89031b2f5316 1839 }
Charles MacNeill 5:89031b2f5316 1840
Charles MacNeill 5:89031b2f5316 1841
Charles MacNeill 5:89031b2f5316 1842 VL53LX_Error VL53L3CX::VL53L3CX_update_ll_driver_cfg_state()
Charles MacNeill 5:89031b2f5316 1843 {
Charles MacNeill 5:89031b2f5316 1844
Charles MacNeill 5:89031b2f5316 1845 return VL53LX_update_ll_driver_cfg_state(Dev);
Charles MacNeill 5:89031b2f5316 1846
Charles MacNeill 5:89031b2f5316 1847 }
Charles MacNeill 5:89031b2f5316 1848
Charles MacNeill 5:89031b2f5316 1849 void VL53L3CX::VL53L3CX_copy_rtn_good_spads_to_buffer(
Charles MacNeill 5:89031b2f5316 1850 VL53LX_nvm_copy_data_t *pdata,
Charles MacNeill 5:89031b2f5316 1851 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1852 {
Charles MacNeill 5:89031b2f5316 1853
Charles MacNeill 5:89031b2f5316 1854 VL53LX_copy_rtn_good_spads_to_buffer( pdata,pbuffer);
Charles MacNeill 5:89031b2f5316 1855
Charles MacNeill 5:89031b2f5316 1856 }
Charles MacNeill 5:89031b2f5316 1857
Charles MacNeill 5:89031b2f5316 1858 void VL53L3CX::VL53L3CX_init_system_results(
Charles MacNeill 5:89031b2f5316 1859 VL53LX_system_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1860 {
Charles MacNeill 5:89031b2f5316 1861
Charles MacNeill 5:89031b2f5316 1862 VL53LX_init_system_results(pdata);
Charles MacNeill 5:89031b2f5316 1863
Charles MacNeill 5:89031b2f5316 1864 }
Charles MacNeill 5:89031b2f5316 1865 void VL53L3CX::VL53L3CX_init_zone_results_structure(
Charles MacNeill 5:89031b2f5316 1866 uint8_t active_zones,
Charles MacNeill 5:89031b2f5316 1867 VL53LX_zone_results_t *pdata)
Charles MacNeill 5:89031b2f5316 1868 {
Charles MacNeill 5:89031b2f5316 1869
Charles MacNeill 5:89031b2f5316 1870 V53L1_init_zone_results_structure(active_zones, pdata);
Charles MacNeill 5:89031b2f5316 1871
Charles MacNeill 5:89031b2f5316 1872 }
Charles MacNeill 5:89031b2f5316 1873
Charles MacNeill 5:89031b2f5316 1874 void VL53L3CX::VL53L3CX_init_zone_dss_configs()
Charles MacNeill 5:89031b2f5316 1875 {
Charles MacNeill 5:89031b2f5316 1876
Charles MacNeill 5:89031b2f5316 1877 V53L1_init_zone_dss_configs(Dev);
Charles MacNeill 5:89031b2f5316 1878
Charles MacNeill 5:89031b2f5316 1879 }
Charles MacNeill 5:89031b2f5316 1880
Charles MacNeill 5:89031b2f5316 1881 void VL53L3CX::VL53L3CX_init_histogram_config_structure(
Charles MacNeill 5:89031b2f5316 1882 uint8_t even_bin0,
Charles MacNeill 5:89031b2f5316 1883 uint8_t even_bin1,
Charles MacNeill 5:89031b2f5316 1884 uint8_t even_bin2,
Charles MacNeill 5:89031b2f5316 1885 uint8_t even_bin3,
Charles MacNeill 5:89031b2f5316 1886 uint8_t even_bin4,
Charles MacNeill 5:89031b2f5316 1887 uint8_t even_bin5,
Charles MacNeill 5:89031b2f5316 1888 uint8_t odd_bin0,
Charles MacNeill 5:89031b2f5316 1889 uint8_t odd_bin1,
Charles MacNeill 5:89031b2f5316 1890 uint8_t odd_bin2,
Charles MacNeill 5:89031b2f5316 1891 uint8_t odd_bin3,
Charles MacNeill 5:89031b2f5316 1892 uint8_t odd_bin4,
Charles MacNeill 5:89031b2f5316 1893 uint8_t odd_bin5,
Charles MacNeill 5:89031b2f5316 1894 VL53LX_histogram_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1895 {
Charles MacNeill 5:89031b2f5316 1896
Charles MacNeill 5:89031b2f5316 1897
Charles MacNeill 5:89031b2f5316 1898 VL53LX_init_histogram_config_structure(even_bin0,
Charles MacNeill 5:89031b2f5316 1899 even_bin1,
Charles MacNeill 5:89031b2f5316 1900 even_bin2,
Charles MacNeill 5:89031b2f5316 1901 even_bin3,
Charles MacNeill 5:89031b2f5316 1902 even_bin4,
Charles MacNeill 5:89031b2f5316 1903 even_bin5,
Charles MacNeill 5:89031b2f5316 1904 odd_bin0,
Charles MacNeill 5:89031b2f5316 1905 odd_bin1,
Charles MacNeill 5:89031b2f5316 1906 odd_bin2,
Charles MacNeill 5:89031b2f5316 1907 odd_bin3,
Charles MacNeill 5:89031b2f5316 1908 odd_bin4,
Charles MacNeill 5:89031b2f5316 1909 odd_bin5,
Charles MacNeill 5:89031b2f5316 1910 pdata);
Charles MacNeill 5:89031b2f5316 1911
Charles MacNeill 5:89031b2f5316 1912 }
Charles MacNeill 5:89031b2f5316 1913
Charles MacNeill 5:89031b2f5316 1914 void VL53L3CX::VL53L3CX_init_histogram_multizone_config_structure(
Charles MacNeill 5:89031b2f5316 1915 uint8_t even_bin0,
Charles MacNeill 5:89031b2f5316 1916 uint8_t even_bin1,
Charles MacNeill 5:89031b2f5316 1917 uint8_t even_bin2,
Charles MacNeill 5:89031b2f5316 1918 uint8_t even_bin3,
Charles MacNeill 5:89031b2f5316 1919 uint8_t even_bin4,
Charles MacNeill 5:89031b2f5316 1920 uint8_t even_bin5,
Charles MacNeill 5:89031b2f5316 1921 uint8_t odd_bin0,
Charles MacNeill 5:89031b2f5316 1922 uint8_t odd_bin1,
Charles MacNeill 5:89031b2f5316 1923 uint8_t odd_bin2,
Charles MacNeill 5:89031b2f5316 1924 uint8_t odd_bin3,
Charles MacNeill 5:89031b2f5316 1925 uint8_t odd_bin4,
Charles MacNeill 5:89031b2f5316 1926 uint8_t odd_bin5,
Charles MacNeill 5:89031b2f5316 1927 VL53LX_histogram_config_t *pdata)
Charles MacNeill 5:89031b2f5316 1928 {
Charles MacNeill 5:89031b2f5316 1929
Charles MacNeill 5:89031b2f5316 1930 VL53LX_init_histogram_multizone_config_structure( even_bin0,
Charles MacNeill 5:89031b2f5316 1931 even_bin1,
Charles MacNeill 5:89031b2f5316 1932 even_bin2,
Charles MacNeill 5:89031b2f5316 1933 even_bin3,
Charles MacNeill 5:89031b2f5316 1934 even_bin4,
Charles MacNeill 5:89031b2f5316 1935 even_bin5,
Charles MacNeill 5:89031b2f5316 1936 odd_bin0,
Charles MacNeill 5:89031b2f5316 1937 odd_bin1,
Charles MacNeill 5:89031b2f5316 1938 odd_bin2,
Charles MacNeill 5:89031b2f5316 1939 odd_bin3,
Charles MacNeill 5:89031b2f5316 1940 odd_bin4,
Charles MacNeill 5:89031b2f5316 1941 odd_bin5,
Charles MacNeill 5:89031b2f5316 1942 pdata);
Charles MacNeill 5:89031b2f5316 1943
Charles MacNeill 5:89031b2f5316 1944 }
Charles MacNeill 5:89031b2f5316 1945
Charles MacNeill 5:89031b2f5316 1946 void VL53L3CX::VL53L3CX_init_xtalk_bin_data_struct(
Charles MacNeill 5:89031b2f5316 1947 uint32_t bin_value,
Charles MacNeill 5:89031b2f5316 1948 uint16_t VL53LX_p_021,
Charles MacNeill 5:89031b2f5316 1949 VL53LX_xtalk_histogram_shape_t *pdata)
Charles MacNeill 5:89031b2f5316 1950 {
Charles MacNeill 5:89031b2f5316 1951
Charles MacNeill 5:89031b2f5316 1952 VL53LX_init_xtalk_bin_data_struct( bin_value,
Charles MacNeill 5:89031b2f5316 1953 VL53LX_p_021,
Charles MacNeill 5:89031b2f5316 1954 pdata);
Charles MacNeill 5:89031b2f5316 1955
Charles MacNeill 5:89031b2f5316 1956 }
Charles MacNeill 5:89031b2f5316 1957
Charles MacNeill 5:89031b2f5316 1958 void VL53L3CX::VL53L3CX_i2c_encode_uint16_t(
Charles MacNeill 5:89031b2f5316 1959 uint16_t ip_value,
Charles MacNeill 5:89031b2f5316 1960 uint16_t count,
Charles MacNeill 5:89031b2f5316 1961 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1962 {
Charles MacNeill 5:89031b2f5316 1963
Charles MacNeill 5:89031b2f5316 1964 VL53LX_i2c_encode_uint16_t( ip_value,
Charles MacNeill 5:89031b2f5316 1965 count,
Charles MacNeill 5:89031b2f5316 1966 pbuffer);
Charles MacNeill 5:89031b2f5316 1967
Charles MacNeill 5:89031b2f5316 1968 }
Charles MacNeill 5:89031b2f5316 1969
Charles MacNeill 5:89031b2f5316 1970 uint16_t VL53L3CX::VL53L3CX_i2c_decode_uint16_t(
Charles MacNeill 5:89031b2f5316 1971 uint16_t count,
Charles MacNeill 5:89031b2f5316 1972 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1973 {
Charles MacNeill 5:89031b2f5316 1974
Charles MacNeill 5:89031b2f5316 1975 return VL53LX_i2c_decode_uint16_t( count, pbuffer);
Charles MacNeill 5:89031b2f5316 1976
Charles MacNeill 5:89031b2f5316 1977 }
Charles MacNeill 5:89031b2f5316 1978
Charles MacNeill 5:89031b2f5316 1979 void VL53L3CX::VL53L3CX_i2c_encode_int16_t(
Charles MacNeill 5:89031b2f5316 1980 int16_t ip_value,
Charles MacNeill 5:89031b2f5316 1981 uint16_t count,
Charles MacNeill 5:89031b2f5316 1982 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1983 {
Charles MacNeill 5:89031b2f5316 1984
Charles MacNeill 5:89031b2f5316 1985 return VL53LX_i2c_encode_uint16_t( ip_value, count, pbuffer);
Charles MacNeill 5:89031b2f5316 1986
Charles MacNeill 5:89031b2f5316 1987 }
Charles MacNeill 5:89031b2f5316 1988
Charles MacNeill 5:89031b2f5316 1989 int16_t VL53L3CX::VL53L3CX_i2c_decode_int16_t(
Charles MacNeill 5:89031b2f5316 1990 uint16_t count,
Charles MacNeill 5:89031b2f5316 1991 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 1992 {
Charles MacNeill 5:89031b2f5316 1993
Charles MacNeill 5:89031b2f5316 1994 return VL53LX_i2c_decode_int16_t(count,pbuffer);
Charles MacNeill 5:89031b2f5316 1995
Charles MacNeill 5:89031b2f5316 1996 }
Charles MacNeill 5:89031b2f5316 1997
Charles MacNeill 5:89031b2f5316 1998 void VL53L3CX::VL53L3CX_i2c_encode_uint32_t(
Charles MacNeill 5:89031b2f5316 1999 uint32_t ip_value,
Charles MacNeill 5:89031b2f5316 2000 uint16_t count,
Charles MacNeill 5:89031b2f5316 2001 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 2002 {
Charles MacNeill 5:89031b2f5316 2003
Charles MacNeill 5:89031b2f5316 2004 VL53LX_i2c_encode_uint32_t(ip_value,count,pbuffer);
Charles MacNeill 5:89031b2f5316 2005
Charles MacNeill 5:89031b2f5316 2006 }
Charles MacNeill 5:89031b2f5316 2007
Charles MacNeill 5:89031b2f5316 2008
Charles MacNeill 5:89031b2f5316 2009 uint32_t VL53L3CX::VL53L3CX_i2c_decode_uint32_t(
Charles MacNeill 5:89031b2f5316 2010 uint16_t count,
Charles MacNeill 5:89031b2f5316 2011 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 2012 {
Charles MacNeill 5:89031b2f5316 2013
Charles MacNeill 5:89031b2f5316 2014 return VL53LX_i2c_decode_uint32_t( count, pbuffer);
Charles MacNeill 5:89031b2f5316 2015
Charles MacNeill 5:89031b2f5316 2016 }
Charles MacNeill 5:89031b2f5316 2017
Charles MacNeill 5:89031b2f5316 2018 uint32_t VL53L3CX::VL53L3CX_i2c_decode_with_mask(
Charles MacNeill 5:89031b2f5316 2019 uint16_t count,
Charles MacNeill 5:89031b2f5316 2020 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 2021 uint32_t bit_mask,
Charles MacNeill 5:89031b2f5316 2022 uint32_t down_shift,
Charles MacNeill 5:89031b2f5316 2023 uint32_t offset)
Charles MacNeill 5:89031b2f5316 2024 {
Charles MacNeill 5:89031b2f5316 2025
Charles MacNeill 5:89031b2f5316 2026 return VL53LX_i2c_decode_with_mask( count, pbuffer, bit_mask,down_shift,offset);
Charles MacNeill 5:89031b2f5316 2027
Charles MacNeill 5:89031b2f5316 2028 }
Charles MacNeill 5:89031b2f5316 2029
Charles MacNeill 5:89031b2f5316 2030 void VL53L3CX::VL53L3CX_i2c_encode_int32_t(
Charles MacNeill 5:89031b2f5316 2031 int32_t ip_value,
Charles MacNeill 5:89031b2f5316 2032 uint16_t count,
Charles MacNeill 5:89031b2f5316 2033 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 2034 {
Charles MacNeill 5:89031b2f5316 2035
Charles MacNeill 5:89031b2f5316 2036 return VL53LX_i2c_encode_int32_t( ip_value, count, pbuffer);
Charles MacNeill 5:89031b2f5316 2037
Charles MacNeill 5:89031b2f5316 2038 }
Charles MacNeill 5:89031b2f5316 2039
Charles MacNeill 5:89031b2f5316 2040 int32_t VL53L3CX::VL53L3CX_i2c_decode_int32_t(
Charles MacNeill 5:89031b2f5316 2041 uint16_t count,
Charles MacNeill 5:89031b2f5316 2042 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 2043 {
Charles MacNeill 5:89031b2f5316 2044
Charles MacNeill 5:89031b2f5316 2045 return VL53LX_i2c_decode_int32_t( count,pbuffer);
Charles MacNeill 5:89031b2f5316 2046
Charles MacNeill 5:89031b2f5316 2047 }
Charles MacNeill 5:89031b2f5316 2048
Charles MacNeill 5:89031b2f5316 2049 VL53LX_Error VL53L3CX::VL53L3CX_start_test(
Charles MacNeill 5:89031b2f5316 2050 uint8_t test_mode__ctrl)
Charles MacNeill 5:89031b2f5316 2051 {
Charles MacNeill 5:89031b2f5316 2052
Charles MacNeill 5:89031b2f5316 2053 return VL53LX_start_test(Dev,test_mode__ctrl);
Charles MacNeill 5:89031b2f5316 2054
Charles MacNeill 5:89031b2f5316 2055 }
Charles MacNeill 5:89031b2f5316 2056 VL53LX_Error VL53L3CX::VL53L3CX_set_firmware_enable_register(uint8_t value)
Charles MacNeill 5:89031b2f5316 2057 {
Charles MacNeill 5:89031b2f5316 2058
Charles MacNeill 5:89031b2f5316 2059 return VL53LX_set_firmware_enable_register(Dev,value);
Charles MacNeill 5:89031b2f5316 2060
Charles MacNeill 5:89031b2f5316 2061 }
Charles MacNeill 5:89031b2f5316 2062
Charles MacNeill 5:89031b2f5316 2063 VL53LX_Error VL53L3CX::VL53L3CX_enable_firmware()
Charles MacNeill 5:89031b2f5316 2064 {
Charles MacNeill 5:89031b2f5316 2065
Charles MacNeill 5:89031b2f5316 2066 return VL53LX_enable_firmware(Dev);
Charles MacNeill 5:89031b2f5316 2067
Charles MacNeill 5:89031b2f5316 2068 }
Charles MacNeill 5:89031b2f5316 2069
Charles MacNeill 5:89031b2f5316 2070 VL53LX_Error VL53L3CX::VL53L3CX_disable_firmware()
Charles MacNeill 5:89031b2f5316 2071 {
Charles MacNeill 5:89031b2f5316 2072 return VL53LX_disable_firmware(Dev);
Charles MacNeill 5:89031b2f5316 2073 }
Charles MacNeill 5:89031b2f5316 2074
Charles MacNeill 5:89031b2f5316 2075
Charles MacNeill 5:89031b2f5316 2076 VL53LX_Error VL53L3CX::VL53L3CX_set_powerforce_register(
Charles MacNeill 5:89031b2f5316 2077 uint8_t value)
Charles MacNeill 5:89031b2f5316 2078 {
Charles MacNeill 5:89031b2f5316 2079
Charles MacNeill 5:89031b2f5316 2080 return VL53LX_set_powerforce_register(Dev, value);
Charles MacNeill 5:89031b2f5316 2081
Charles MacNeill 5:89031b2f5316 2082 }
Charles MacNeill 5:89031b2f5316 2083
Charles MacNeill 5:89031b2f5316 2084
Charles MacNeill 5:89031b2f5316 2085 VL53LX_Error VL53L3CX::VL53L3CX_enable_powerforce()
Charles MacNeill 5:89031b2f5316 2086 {
Charles MacNeill 5:89031b2f5316 2087
Charles MacNeill 5:89031b2f5316 2088 return VL53LX_enable_powerforce(Dev);
Charles MacNeill 5:89031b2f5316 2089
Charles MacNeill 5:89031b2f5316 2090 }
Charles MacNeill 5:89031b2f5316 2091
Charles MacNeill 5:89031b2f5316 2092 VL53LX_Error VL53L3CX::VL53L3CX_disable_powerforce()
Charles MacNeill 5:89031b2f5316 2093 {
Charles MacNeill 5:89031b2f5316 2094
Charles MacNeill 5:89031b2f5316 2095 return VL53LX_disable_powerforce(Dev);
Charles MacNeill 5:89031b2f5316 2096
Charles MacNeill 5:89031b2f5316 2097 }
Charles MacNeill 5:89031b2f5316 2098
Charles MacNeill 5:89031b2f5316 2099 VL53LX_Error VL53L3CX::VL53L3CX_clear_interrupt()
Charles MacNeill 5:89031b2f5316 2100 {
Charles MacNeill 5:89031b2f5316 2101
Charles MacNeill 5:89031b2f5316 2102 return VL53LX_clear_interrupt(Dev);
Charles MacNeill 5:89031b2f5316 2103
Charles MacNeill 5:89031b2f5316 2104 }
Charles MacNeill 5:89031b2f5316 2105
Charles MacNeill 5:89031b2f5316 2106
Charles MacNeill 5:89031b2f5316 2107 VL53LX_Error VL53L3CX::VL53L3CX_force_shadow_stream_count_to_zero()
Charles MacNeill 5:89031b2f5316 2108 {
Charles MacNeill 5:89031b2f5316 2109
Charles MacNeill 5:89031b2f5316 2110 return VL53LX_force_shadow_stream_count_to_zero(Dev);
Charles MacNeill 5:89031b2f5316 2111
Charles MacNeill 5:89031b2f5316 2112 }
Charles MacNeill 5:89031b2f5316 2113
Charles MacNeill 5:89031b2f5316 2114 uint32_t VL53L3CX::VL53L3CX_calc_macro_period_us(
Charles MacNeill 5:89031b2f5316 2115 uint16_t fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 2116 uint8_t VL53LX_p_005)
Charles MacNeill 5:89031b2f5316 2117 {
Charles MacNeill 5:89031b2f5316 2118
Charles MacNeill 5:89031b2f5316 2119 return VL53LX_calc_macro_period_us(
Charles MacNeill 5:89031b2f5316 2120 fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 2121 VL53LX_p_005);
Charles MacNeill 5:89031b2f5316 2122
Charles MacNeill 5:89031b2f5316 2123 }
Charles MacNeill 5:89031b2f5316 2124
Charles MacNeill 5:89031b2f5316 2125 uint16_t VL53L3CX::VL53L3CX_calc_range_ignore_threshold(
Charles MacNeill 5:89031b2f5316 2126 uint32_t central_rate,
Charles MacNeill 5:89031b2f5316 2127 int16_t x_gradient,
Charles MacNeill 5:89031b2f5316 2128 int16_t y_gradient,
Charles MacNeill 5:89031b2f5316 2129 uint8_t rate_mult)
Charles MacNeill 5:89031b2f5316 2130 {
Charles MacNeill 5:89031b2f5316 2131
Charles MacNeill 5:89031b2f5316 2132 return VL53LX_calc_range_ignore_threshold( central_rate,
Charles MacNeill 5:89031b2f5316 2133 x_gradient,
Charles MacNeill 5:89031b2f5316 2134 y_gradient,
Charles MacNeill 5:89031b2f5316 2135 rate_mult);
Charles MacNeill 5:89031b2f5316 2136
Charles MacNeill 5:89031b2f5316 2137
Charles MacNeill 5:89031b2f5316 2138 }
Charles MacNeill 5:89031b2f5316 2139
Charles MacNeill 5:89031b2f5316 2140 uint32_t VL53L3CX::VL53L3CX_calc_timeout_mclks(
Charles MacNeill 5:89031b2f5316 2141 uint32_t timeout_us,
Charles MacNeill 5:89031b2f5316 2142 uint32_t macro_period_us)
Charles MacNeill 5:89031b2f5316 2143 {
Charles MacNeill 5:89031b2f5316 2144
Charles MacNeill 5:89031b2f5316 2145 return VL53LX_calc_timeout_mclks(timeout_us, macro_period_us);
Charles MacNeill 5:89031b2f5316 2146
Charles MacNeill 5:89031b2f5316 2147 }
Charles MacNeill 5:89031b2f5316 2148 uint16_t VL53L3CX::VL53L3CX_calc_encoded_timeout(
Charles MacNeill 5:89031b2f5316 2149 uint32_t timeout_us,
Charles MacNeill 5:89031b2f5316 2150 uint32_t macro_period_us)
Charles MacNeill 5:89031b2f5316 2151 {
Charles MacNeill 5:89031b2f5316 2152
Charles MacNeill 5:89031b2f5316 2153 return VL53LX_calc_encoded_timeout(timeout_us,
Charles MacNeill 5:89031b2f5316 2154 macro_period_us);
Charles MacNeill 5:89031b2f5316 2155 }
Charles MacNeill 5:89031b2f5316 2156
Charles MacNeill 5:89031b2f5316 2157 uint32_t VL53L3CX::VL53L3CX_calc_timeout_us(
Charles MacNeill 5:89031b2f5316 2158 uint32_t timeout_mclks,
Charles MacNeill 5:89031b2f5316 2159 uint32_t macro_period_us)
Charles MacNeill 5:89031b2f5316 2160 {
Charles MacNeill 5:89031b2f5316 2161
Charles MacNeill 5:89031b2f5316 2162 return VL53LX_calc_timeout_us(timeout_mclks,
Charles MacNeill 5:89031b2f5316 2163 macro_period_us);
Charles MacNeill 5:89031b2f5316 2164
Charles MacNeill 5:89031b2f5316 2165 }
Charles MacNeill 5:89031b2f5316 2166
Charles MacNeill 5:89031b2f5316 2167 uint32_t VL53L3CX::VL53L3CX_calc_crosstalk_plane_offset_with_margin(
Charles MacNeill 5:89031b2f5316 2168 uint32_t plane_offset_kcps,
Charles MacNeill 5:89031b2f5316 2169 int16_t margin_offset_kcps)
Charles MacNeill 5:89031b2f5316 2170 {
Charles MacNeill 5:89031b2f5316 2171
Charles MacNeill 5:89031b2f5316 2172 return VL53LX_calc_crosstalk_plane_offset_with_margin( plane_offset_kcps,
Charles MacNeill 5:89031b2f5316 2173 margin_offset_kcps);
Charles MacNeill 5:89031b2f5316 2174 }
Charles MacNeill 5:89031b2f5316 2175
Charles MacNeill 5:89031b2f5316 2176 uint32_t VL53L3CX::VL53L3CX_calc_decoded_timeout_us(
Charles MacNeill 5:89031b2f5316 2177 uint16_t timeout_encoded,
Charles MacNeill 5:89031b2f5316 2178 uint32_t macro_period_us)
Charles MacNeill 5:89031b2f5316 2179 {
Charles MacNeill 5:89031b2f5316 2180
Charles MacNeill 5:89031b2f5316 2181 return VL53LX_calc_decoded_timeout_us( timeout_encoded,
Charles MacNeill 5:89031b2f5316 2182 macro_period_us);
Charles MacNeill 5:89031b2f5316 2183
Charles MacNeill 5:89031b2f5316 2184 }
Charles MacNeill 5:89031b2f5316 2185
Charles MacNeill 5:89031b2f5316 2186 uint16_t VL53L3CX::VL53L3CX_encode_timeout(uint32_t timeout_mclks)
Charles MacNeill 5:89031b2f5316 2187 {
Charles MacNeill 5:89031b2f5316 2188
Charles MacNeill 5:89031b2f5316 2189 return VL53LX_encode_timeout(timeout_mclks);
Charles MacNeill 5:89031b2f5316 2190
Charles MacNeill 5:89031b2f5316 2191 }
Charles MacNeill 5:89031b2f5316 2192
Charles MacNeill 5:89031b2f5316 2193 uint32_t VL53L3CX::VL53L3CX_decode_timeout(uint16_t encoded_timeout)
Charles MacNeill 5:89031b2f5316 2194 {
Charles MacNeill 5:89031b2f5316 2195
Charles MacNeill 5:89031b2f5316 2196 return VL53LX_decode_timeout(encoded_timeout);
Charles MacNeill 5:89031b2f5316 2197
Charles MacNeill 5:89031b2f5316 2198 }
Charles MacNeill 5:89031b2f5316 2199
Charles MacNeill 5:89031b2f5316 2200
Charles MacNeill 5:89031b2f5316 2201
Charles MacNeill 5:89031b2f5316 2202
Charles MacNeill 5:89031b2f5316 2203 VL53LX_Error VL53L3CX::VL53L3CX_calc_timeout_register_values(
Charles MacNeill 5:89031b2f5316 2204 uint32_t phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2205 uint32_t mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2206 uint32_t range_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2207 uint16_t fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 2208 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 2209 VL53LX_timing_config_t *ptiming)
Charles MacNeill 5:89031b2f5316 2210 {
Charles MacNeill 5:89031b2f5316 2211
Charles MacNeill 5:89031b2f5316 2212 return VL53LX_calc_timeout_register_values(
Charles MacNeill 5:89031b2f5316 2213 phasecal_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2214 mm_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2215 range_config_timeout_us,
Charles MacNeill 5:89031b2f5316 2216 fast_osc_frequency,
Charles MacNeill 5:89031b2f5316 2217 pgeneral,
Charles MacNeill 5:89031b2f5316 2218 ptiming);
Charles MacNeill 5:89031b2f5316 2219
Charles MacNeill 5:89031b2f5316 2220
Charles MacNeill 5:89031b2f5316 2221 }
Charles MacNeill 5:89031b2f5316 2222
Charles MacNeill 5:89031b2f5316 2223 uint8_t VL53L3CX::VL53L3CX_encode_vcsel_period(uint8_t VL53LX_p_030)
Charles MacNeill 5:89031b2f5316 2224 {
Charles MacNeill 5:89031b2f5316 2225
Charles MacNeill 5:89031b2f5316 2226 return VL53LX_encode_vcsel_period(VL53LX_p_030);
Charles MacNeill 5:89031b2f5316 2227
Charles MacNeill 5:89031b2f5316 2228 }
Charles MacNeill 5:89031b2f5316 2229
Charles MacNeill 5:89031b2f5316 2230 uint32_t VL53L3CX::VL53L3CX_decode_unsigned_integer(
Charles MacNeill 5:89031b2f5316 2231 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 2232 uint8_t no_of_bytes)
Charles MacNeill 5:89031b2f5316 2233 {
Charles MacNeill 5:89031b2f5316 2234
Charles MacNeill 5:89031b2f5316 2235 return VL53LX_decode_unsigned_integer(pbuffer, no_of_bytes);
Charles MacNeill 5:89031b2f5316 2236
Charles MacNeill 5:89031b2f5316 2237 }
Charles MacNeill 5:89031b2f5316 2238
Charles MacNeill 5:89031b2f5316 2239
Charles MacNeill 5:89031b2f5316 2240 void VL53L3CX::VL53L3CX_encode_unsigned_integer(
Charles MacNeill 5:89031b2f5316 2241 uint32_t ip_value,
Charles MacNeill 5:89031b2f5316 2242 uint8_t no_of_bytes,
Charles MacNeill 5:89031b2f5316 2243 uint8_t *pbuffer)
Charles MacNeill 5:89031b2f5316 2244 {
Charles MacNeill 5:89031b2f5316 2245
Charles MacNeill 5:89031b2f5316 2246 VL53LX_encode_unsigned_integer( ip_value,
Charles MacNeill 5:89031b2f5316 2247 no_of_bytes,
Charles MacNeill 5:89031b2f5316 2248 pbuffer);
Charles MacNeill 5:89031b2f5316 2249
Charles MacNeill 5:89031b2f5316 2250 }
Charles MacNeill 5:89031b2f5316 2251
Charles MacNeill 5:89031b2f5316 2252 VL53LX_Error VL53L3CX::VL53L3CX_hist_copy_and_scale_ambient_info(
Charles MacNeill 5:89031b2f5316 2253 VL53LX_zone_hist_info_t *pidata,
Charles MacNeill 5:89031b2f5316 2254 VL53LX_histogram_bin_data_t *podata)
Charles MacNeill 5:89031b2f5316 2255 {
Charles MacNeill 5:89031b2f5316 2256
Charles MacNeill 5:89031b2f5316 2257 return VL53LX_hist_copy_and_scale_ambient_info( pidata,
Charles MacNeill 5:89031b2f5316 2258 podata);
Charles MacNeill 5:89031b2f5316 2259
Charles MacNeill 5:89031b2f5316 2260
Charles MacNeill 5:89031b2f5316 2261 }
Charles MacNeill 5:89031b2f5316 2262
Charles MacNeill 5:89031b2f5316 2263
Charles MacNeill 5:89031b2f5316 2264 void VL53L3CX::VL53L3CX_hist_get_bin_sequence_config(
Charles MacNeill 5:89031b2f5316 2265 VL53LX_histogram_bin_data_t *pdata)
Charles MacNeill 5:89031b2f5316 2266 {
Charles MacNeill 5:89031b2f5316 2267
Charles MacNeill 5:89031b2f5316 2268 VL53LX_hist_get_bin_sequence_config(Dev, pdata);
Charles MacNeill 5:89031b2f5316 2269
Charles MacNeill 5:89031b2f5316 2270 }
Charles MacNeill 5:89031b2f5316 2271
Charles MacNeill 5:89031b2f5316 2272
Charles MacNeill 5:89031b2f5316 2273 VL53LX_Error VL53L3CX::VL53L3CX_hist_phase_consistency_check(
Charles MacNeill 5:89031b2f5316 2274 VL53LX_zone_hist_info_t *phist_prev,
Charles MacNeill 5:89031b2f5316 2275 VL53LX_zone_objects_t *prange_prev,
Charles MacNeill 5:89031b2f5316 2276 VL53LX_range_results_t *prange_curr)
Charles MacNeill 5:89031b2f5316 2277 {
Charles MacNeill 5:89031b2f5316 2278
Charles MacNeill 5:89031b2f5316 2279 return VL53LX_hist_phase_consistency_check(
Charles MacNeill 5:89031b2f5316 2280 Dev,
Charles MacNeill 5:89031b2f5316 2281 phist_prev,
Charles MacNeill 5:89031b2f5316 2282 prange_prev,
Charles MacNeill 5:89031b2f5316 2283 prange_curr);
Charles MacNeill 5:89031b2f5316 2284
Charles MacNeill 5:89031b2f5316 2285 }
Charles MacNeill 5:89031b2f5316 2286
Charles MacNeill 5:89031b2f5316 2287
Charles MacNeill 5:89031b2f5316 2288
Charles MacNeill 5:89031b2f5316 2289 VL53LX_Error VL53L3CX::VL53L3CX_hist_events_consistency_check(
Charles MacNeill 5:89031b2f5316 2290 uint8_t event_sigma,
Charles MacNeill 5:89031b2f5316 2291 uint16_t min_effective_spad_count,
Charles MacNeill 5:89031b2f5316 2292 VL53LX_zone_hist_info_t *phist_prev,
Charles MacNeill 5:89031b2f5316 2293 VL53LX_object_data_t *prange_prev,
Charles MacNeill 5:89031b2f5316 2294 VL53LX_range_data_t *prange_curr,
Charles MacNeill 5:89031b2f5316 2295 int32_t *pevents_tolerance,
Charles MacNeill 5:89031b2f5316 2296 int32_t *pevents_delta,
Charles MacNeill 5:89031b2f5316 2297 VL53LX_DeviceError *prange_status)
Charles MacNeill 5:89031b2f5316 2298 {
Charles MacNeill 5:89031b2f5316 2299
Charles MacNeill 5:89031b2f5316 2300 return VL53LX_hist_events_consistency_check( event_sigma,
Charles MacNeill 5:89031b2f5316 2301 min_effective_spad_count,
Charles MacNeill 5:89031b2f5316 2302 phist_prev,
Charles MacNeill 5:89031b2f5316 2303 prange_prev,
Charles MacNeill 5:89031b2f5316 2304 prange_curr,
Charles MacNeill 5:89031b2f5316 2305 pevents_tolerance,
Charles MacNeill 5:89031b2f5316 2306 pevents_delta,
Charles MacNeill 5:89031b2f5316 2307 prange_status);
Charles MacNeill 5:89031b2f5316 2308
Charles MacNeill 5:89031b2f5316 2309 }
Charles MacNeill 5:89031b2f5316 2310
Charles MacNeill 5:89031b2f5316 2311
Charles MacNeill 5:89031b2f5316 2312 VL53LX_Error VL53L3CX::VL53L3CX_hist_merged_pulse_check(
Charles MacNeill 5:89031b2f5316 2313 int16_t min_max_tolerance_mm,
Charles MacNeill 5:89031b2f5316 2314 VL53LX_range_data_t *pdata,
Charles MacNeill 5:89031b2f5316 2315 VL53LX_DeviceError *prange_status)
Charles MacNeill 5:89031b2f5316 2316 {
Charles MacNeill 5:89031b2f5316 2317
Charles MacNeill 5:89031b2f5316 2318 return VL53LX_hist_merged_pulse_check( min_max_tolerance_mm,
Charles MacNeill 5:89031b2f5316 2319 pdata,
Charles MacNeill 5:89031b2f5316 2320 prange_status);
Charles MacNeill 5:89031b2f5316 2321
Charles MacNeill 5:89031b2f5316 2322 }
Charles MacNeill 5:89031b2f5316 2323
Charles MacNeill 5:89031b2f5316 2324
Charles MacNeill 5:89031b2f5316 2325 VL53LX_Error VL53L3CX::VL53L3CX_hist_xmonitor_consistency_check(
Charles MacNeill 5:89031b2f5316 2326 VL53LX_zone_hist_info_t *phist_prev,
Charles MacNeill 5:89031b2f5316 2327 VL53LX_zone_objects_t *prange_prev,
Charles MacNeill 5:89031b2f5316 2328 VL53LX_range_data_t *prange_curr)
Charles MacNeill 5:89031b2f5316 2329 {
Charles MacNeill 5:89031b2f5316 2330
Charles MacNeill 5:89031b2f5316 2331 return VL53LX_hist_xmonitor_consistency_check(
Charles MacNeill 5:89031b2f5316 2332 Dev,
Charles MacNeill 5:89031b2f5316 2333 phist_prev,
Charles MacNeill 5:89031b2f5316 2334 prange_prev,
Charles MacNeill 5:89031b2f5316 2335 prange_curr);
Charles MacNeill 5:89031b2f5316 2336
Charles MacNeill 5:89031b2f5316 2337 }
Charles MacNeill 5:89031b2f5316 2338
Charles MacNeill 5:89031b2f5316 2339 VL53LX_Error VL53L3CX::VL53L3CX_hist_wrap_dmax(
Charles MacNeill 5:89031b2f5316 2340 VL53LX_hist_post_process_config_t *phistpostprocess,
Charles MacNeill 5:89031b2f5316 2341 VL53LX_histogram_bin_data_t *pcurrent,
Charles MacNeill 5:89031b2f5316 2342 int16_t *pwrap_dmax_mm)
Charles MacNeill 5:89031b2f5316 2343 {
Charles MacNeill 5:89031b2f5316 2344
Charles MacNeill 5:89031b2f5316 2345
Charles MacNeill 5:89031b2f5316 2346 return VL53LX_hist_wrap_dmax( phistpostprocess,
Charles MacNeill 5:89031b2f5316 2347 pcurrent,
Charles MacNeill 5:89031b2f5316 2348 pwrap_dmax_mm);
Charles MacNeill 5:89031b2f5316 2349
Charles MacNeill 5:89031b2f5316 2350 }
Charles MacNeill 5:89031b2f5316 2351
Charles MacNeill 5:89031b2f5316 2352
Charles MacNeill 5:89031b2f5316 2353 void VL53L3CX::VL53L3CX_hist_combine_mm1_mm2_offsets(
Charles MacNeill 5:89031b2f5316 2354 int16_t mm1_offset_mm,
Charles MacNeill 5:89031b2f5316 2355 int16_t mm2_offset_mm,
Charles MacNeill 5:89031b2f5316 2356 uint8_t encoded_mm_roi_centre,
Charles MacNeill 5:89031b2f5316 2357 uint8_t encoded_mm_roi_size,
Charles MacNeill 5:89031b2f5316 2358 uint8_t encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2359 uint8_t encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2360 VL53LX_additional_offset_cal_data_t *pcal_data,
Charles MacNeill 5:89031b2f5316 2361 uint8_t *pgood_spads,
Charles MacNeill 5:89031b2f5316 2362 uint16_t aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2363 int16_t *prange_offset_mm)
Charles MacNeill 5:89031b2f5316 2364 {
Charles MacNeill 5:89031b2f5316 2365
Charles MacNeill 5:89031b2f5316 2366 return VL53LX_hist_combine_mm1_mm2_offsets(
Charles MacNeill 5:89031b2f5316 2367 mm1_offset_mm,
Charles MacNeill 5:89031b2f5316 2368 mm2_offset_mm,
Charles MacNeill 5:89031b2f5316 2369 encoded_mm_roi_centre,
Charles MacNeill 5:89031b2f5316 2370 encoded_mm_roi_size,
Charles MacNeill 5:89031b2f5316 2371 encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2372 encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2373 pcal_data,
Charles MacNeill 5:89031b2f5316 2374 pgood_spads,
Charles MacNeill 5:89031b2f5316 2375 aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2376 prange_offset_mm);
Charles MacNeill 5:89031b2f5316 2377
Charles MacNeill 5:89031b2f5316 2378 }
Charles MacNeill 5:89031b2f5316 2379
Charles MacNeill 5:89031b2f5316 2380 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_calc_window(
Charles MacNeill 5:89031b2f5316 2381 int16_t target_distance_mm,
Charles MacNeill 5:89031b2f5316 2382 uint16_t target_width_oversize,
Charles MacNeill 5:89031b2f5316 2383 VL53LX_histogram_bin_data_t *phist_bins,
Charles MacNeill 5:89031b2f5316 2384 VL53LX_hist_xtalk_extract_data_t *pxtalk_data)
Charles MacNeill 5:89031b2f5316 2385 {
Charles MacNeill 5:89031b2f5316 2386
Charles MacNeill 5:89031b2f5316 2387 return VL53LX_hist_xtalk_extract_calc_window( target_distance_mm,
Charles MacNeill 5:89031b2f5316 2388 target_width_oversize,
Charles MacNeill 5:89031b2f5316 2389 phist_bins,
Charles MacNeill 5:89031b2f5316 2390 pxtalk_data);
Charles MacNeill 5:89031b2f5316 2391
Charles MacNeill 5:89031b2f5316 2392 }
Charles MacNeill 5:89031b2f5316 2393
Charles MacNeill 5:89031b2f5316 2394
Charles MacNeill 5:89031b2f5316 2395 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_calc_event_sums(
Charles MacNeill 5:89031b2f5316 2396 VL53LX_histogram_bin_data_t *phist_bins,
Charles MacNeill 5:89031b2f5316 2397 VL53LX_hist_xtalk_extract_data_t *pxtalk_data)
Charles MacNeill 5:89031b2f5316 2398 {
Charles MacNeill 5:89031b2f5316 2399
Charles MacNeill 5:89031b2f5316 2400 return VL53LX_hist_xtalk_extract_calc_event_sums( phist_bins, pxtalk_data);
Charles MacNeill 5:89031b2f5316 2401
Charles MacNeill 5:89031b2f5316 2402 }
Charles MacNeill 5:89031b2f5316 2403 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_calc_rate_per_spad(
Charles MacNeill 5:89031b2f5316 2404 VL53LX_hist_xtalk_extract_data_t *pxtalk_data)
Charles MacNeill 5:89031b2f5316 2405 {
Charles MacNeill 5:89031b2f5316 2406
Charles MacNeill 5:89031b2f5316 2407 return VL53LX_hist_xtalk_extract_calc_rate_per_spad( pxtalk_data );
Charles MacNeill 5:89031b2f5316 2408
Charles MacNeill 5:89031b2f5316 2409 }
Charles MacNeill 5:89031b2f5316 2410
Charles MacNeill 5:89031b2f5316 2411 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_calc_shape(
Charles MacNeill 5:89031b2f5316 2412 VL53LX_hist_xtalk_extract_data_t *pxtalk_data,
Charles MacNeill 5:89031b2f5316 2413 VL53LX_xtalk_histogram_shape_t *pxtalk_shape)
Charles MacNeill 5:89031b2f5316 2414 {
Charles MacNeill 5:89031b2f5316 2415
Charles MacNeill 5:89031b2f5316 2416 return VL53LX_hist_xtalk_extract_calc_shape( pxtalk_data, pxtalk_shape);
Charles MacNeill 5:89031b2f5316 2417
Charles MacNeill 5:89031b2f5316 2418 }
Charles MacNeill 5:89031b2f5316 2419
Charles MacNeill 5:89031b2f5316 2420
Charles MacNeill 5:89031b2f5316 2421
Charles MacNeill 5:89031b2f5316 2422 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_shape_model(
Charles MacNeill 5:89031b2f5316 2423 uint16_t events_per_bin,
Charles MacNeill 5:89031b2f5316 2424 uint16_t pulse_centre,
Charles MacNeill 5:89031b2f5316 2425 uint16_t pulse_width,
Charles MacNeill 5:89031b2f5316 2426 VL53LX_xtalk_histogram_shape_t *pxtalk_shape)
Charles MacNeill 5:89031b2f5316 2427 {
Charles MacNeill 5:89031b2f5316 2428
Charles MacNeill 5:89031b2f5316 2429
Charles MacNeill 5:89031b2f5316 2430 VL53LX_Error status = VL53LX_ERROR_NONE;
Charles MacNeill 5:89031b2f5316 2431
Charles MacNeill 5:89031b2f5316 2432 uint32_t phase_start = 0;
Charles MacNeill 5:89031b2f5316 2433 uint32_t phase_stop = 0;
Charles MacNeill 5:89031b2f5316 2434 uint32_t phase_bin = 0;
Charles MacNeill 5:89031b2f5316 2435
Charles MacNeill 5:89031b2f5316 2436 uint32_t bin_start = 0;
Charles MacNeill 5:89031b2f5316 2437 uint32_t bin_stop = 0;
Charles MacNeill 5:89031b2f5316 2438
Charles MacNeill 5:89031b2f5316 2439 uint32_t lb = 0;
Charles MacNeill 5:89031b2f5316 2440 uint16_t VL53LX_p_018 = 0;
Charles MacNeill 5:89031b2f5316 2441
Charles MacNeill 5:89031b2f5316 2442 pxtalk_shape->VL53LX_p_019 = 0;
Charles MacNeill 5:89031b2f5316 2443 pxtalk_shape->VL53LX_p_020 = VL53LX_XTALK_HISTO_BINS;
Charles MacNeill 5:89031b2f5316 2444 pxtalk_shape->VL53LX_p_021 = VL53LX_XTALK_HISTO_BINS;
Charles MacNeill 5:89031b2f5316 2445
Charles MacNeill 5:89031b2f5316 2446 pxtalk_shape->zero_distance_phase = pulse_centre;
Charles MacNeill 5:89031b2f5316 2447 pxtalk_shape->phasecal_result__reference_phase =
Charles MacNeill 5:89031b2f5316 2448 pulse_centre + (3 * 2048);
Charles MacNeill 5:89031b2f5316 2449
Charles MacNeill 5:89031b2f5316 2450
Charles MacNeill 5:89031b2f5316 2451 if (pulse_centre > (pulse_width >> 1))
Charles MacNeill 5:89031b2f5316 2452 phase_start = (uint32_t)pulse_centre -
Charles MacNeill 5:89031b2f5316 2453 ((uint32_t)pulse_width >> 1);
Charles MacNeill 5:89031b2f5316 2454 else {
Charles MacNeill 5:89031b2f5316 2455 phase_start = 0;
Charles MacNeill 5:89031b2f5316 2456 }
Charles MacNeill 5:89031b2f5316 2457
Charles MacNeill 5:89031b2f5316 2458 phase_stop = (uint32_t)pulse_centre +
Charles MacNeill 5:89031b2f5316 2459 ((uint32_t)pulse_width >> 1);
Charles MacNeill 5:89031b2f5316 2460
Charles MacNeill 5:89031b2f5316 2461
Charles MacNeill 5:89031b2f5316 2462 bin_start = (phase_start / 2048);
Charles MacNeill 5:89031b2f5316 2463 bin_stop = (phase_stop / 2048);
Charles MacNeill 5:89031b2f5316 2464
Charles MacNeill 5:89031b2f5316 2465 for (lb = 0; lb < VL53LX_XTALK_HISTO_BINS; lb++) {
Charles MacNeill 5:89031b2f5316 2466 VL53LX_p_018 = 0;
Charles MacNeill 5:89031b2f5316 2467
Charles MacNeill 5:89031b2f5316 2468
Charles MacNeill 5:89031b2f5316 2469 if (lb == bin_start && lb == bin_stop) {
Charles MacNeill 5:89031b2f5316 2470 VL53LX_p_018 =
Charles MacNeill 5:89031b2f5316 2471 VL53LX_hist_xtalk_shape_model_interp(
Charles MacNeill 5:89031b2f5316 2472 events_per_bin,
Charles MacNeill 5:89031b2f5316 2473 phase_stop - phase_start);
Charles MacNeill 5:89031b2f5316 2474
Charles MacNeill 5:89031b2f5316 2475 } else if (lb > bin_start && lb < bin_stop) {
Charles MacNeill 5:89031b2f5316 2476
Charles MacNeill 5:89031b2f5316 2477
Charles MacNeill 5:89031b2f5316 2478 VL53LX_p_018 = events_per_bin;
Charles MacNeill 5:89031b2f5316 2479
Charles MacNeill 5:89031b2f5316 2480 } else if (lb == bin_start) {
Charles MacNeill 5:89031b2f5316 2481
Charles MacNeill 5:89031b2f5316 2482
Charles MacNeill 5:89031b2f5316 2483 phase_bin = (lb + 1) * 2048;
Charles MacNeill 5:89031b2f5316 2484 VL53LX_p_018 =
Charles MacNeill 5:89031b2f5316 2485 VL53LX_hist_xtalk_shape_model_interp(
Charles MacNeill 5:89031b2f5316 2486 events_per_bin,
Charles MacNeill 5:89031b2f5316 2487 (phase_bin - phase_start));
Charles MacNeill 5:89031b2f5316 2488
Charles MacNeill 5:89031b2f5316 2489 } else if (lb == bin_stop) {
Charles MacNeill 5:89031b2f5316 2490
Charles MacNeill 5:89031b2f5316 2491
Charles MacNeill 5:89031b2f5316 2492 phase_bin = lb * 2048;
Charles MacNeill 5:89031b2f5316 2493 VL53LX_p_018 =
Charles MacNeill 5:89031b2f5316 2494 VL53LX_hist_xtalk_shape_model_interp(
Charles MacNeill 5:89031b2f5316 2495 events_per_bin,
Charles MacNeill 5:89031b2f5316 2496 (phase_stop - phase_bin));
Charles MacNeill 5:89031b2f5316 2497 }
Charles MacNeill 5:89031b2f5316 2498
Charles MacNeill 5:89031b2f5316 2499 pxtalk_shape->bin_data[lb] = VL53LX_p_018;
Charles MacNeill 5:89031b2f5316 2500 }
Charles MacNeill 5:89031b2f5316 2501
Charles MacNeill 5:89031b2f5316 2502
Charles MacNeill 5:89031b2f5316 2503 return status;
Charles MacNeill 5:89031b2f5316 2504 }
Charles MacNeill 5:89031b2f5316 2505
Charles MacNeill 5:89031b2f5316 2506 uint16_t VL53L3CX::VL53L3CX_hist_xtalk_shape_model_interp(
Charles MacNeill 5:89031b2f5316 2507 uint16_t events_per_bin,
Charles MacNeill 5:89031b2f5316 2508 uint32_t phase_delta)
Charles MacNeill 5:89031b2f5316 2509 {
Charles MacNeill 5:89031b2f5316 2510
Charles MacNeill 5:89031b2f5316 2511 return VL53LX_hist_xtalk_shape_model_interp( events_per_bin,phase_delta);
Charles MacNeill 5:89031b2f5316 2512
Charles MacNeill 5:89031b2f5316 2513 }
Charles MacNeill 5:89031b2f5316 2514
Charles MacNeill 5:89031b2f5316 2515 void VL53L3CX::VL53L3CX_spad_number_to_byte_bit_index(
Charles MacNeill 5:89031b2f5316 2516 uint8_t spad_number,
Charles MacNeill 5:89031b2f5316 2517 uint8_t *pbyte_index,
Charles MacNeill 5:89031b2f5316 2518 uint8_t *pbit_index,
Charles MacNeill 5:89031b2f5316 2519 uint8_t *pbit_mask)
Charles MacNeill 5:89031b2f5316 2520 {
Charles MacNeill 5:89031b2f5316 2521 VL53LX_spad_number_to_byte_bit_index(
Charles MacNeill 5:89031b2f5316 2522 spad_number,
Charles MacNeill 5:89031b2f5316 2523 pbyte_index,
Charles MacNeill 5:89031b2f5316 2524 pbit_index,
Charles MacNeill 5:89031b2f5316 2525 pbit_mask);
Charles MacNeill 5:89031b2f5316 2526
Charles MacNeill 5:89031b2f5316 2527 }
Charles MacNeill 5:89031b2f5316 2528
Charles MacNeill 5:89031b2f5316 2529 void VL53L3CX::VL53L3CX_encode_row_col(
Charles MacNeill 5:89031b2f5316 2530 uint8_t row,
Charles MacNeill 5:89031b2f5316 2531 uint8_t col,
Charles MacNeill 5:89031b2f5316 2532 uint8_t *pspad_number)
Charles MacNeill 5:89031b2f5316 2533 {
Charles MacNeill 5:89031b2f5316 2534
Charles MacNeill 5:89031b2f5316 2535 VL53LX_encode_row_col(row, col, pspad_number);
Charles MacNeill 5:89031b2f5316 2536
Charles MacNeill 5:89031b2f5316 2537 }
Charles MacNeill 5:89031b2f5316 2538 void VL53L3CX::VL53L3CX_decode_zone_size(
Charles MacNeill 5:89031b2f5316 2539 uint8_t encoded_xy_size,
Charles MacNeill 5:89031b2f5316 2540 uint8_t *pwidth,
Charles MacNeill 5:89031b2f5316 2541 uint8_t *pheight)
Charles MacNeill 5:89031b2f5316 2542 {
Charles MacNeill 5:89031b2f5316 2543
Charles MacNeill 5:89031b2f5316 2544 VL53LX_decode_zone_size(encoded_xy_size, pwidth, pheight);
Charles MacNeill 5:89031b2f5316 2545
Charles MacNeill 5:89031b2f5316 2546 }
Charles MacNeill 5:89031b2f5316 2547
Charles MacNeill 5:89031b2f5316 2548 void VL53L3CX::VL53L3CX_encode_zone_size(
Charles MacNeill 5:89031b2f5316 2549 uint8_t width,
Charles MacNeill 5:89031b2f5316 2550 uint8_t height,
Charles MacNeill 5:89031b2f5316 2551 uint8_t *pencoded_xy_size)
Charles MacNeill 5:89031b2f5316 2552 {
Charles MacNeill 5:89031b2f5316 2553
Charles MacNeill 5:89031b2f5316 2554 VL53LX_encode_zone_size(width, height, pencoded_xy_size);
Charles MacNeill 5:89031b2f5316 2555
Charles MacNeill 5:89031b2f5316 2556 }
Charles MacNeill 5:89031b2f5316 2557
Charles MacNeill 5:89031b2f5316 2558 void VL53L3CX::VL53L3CX_decode_zone_limits(
Charles MacNeill 5:89031b2f5316 2559 uint8_t encoded_xy_centre,
Charles MacNeill 5:89031b2f5316 2560 uint8_t encoded_xy_size,
Charles MacNeill 5:89031b2f5316 2561 int16_t *px_ll,
Charles MacNeill 5:89031b2f5316 2562 int16_t *py_ll,
Charles MacNeill 5:89031b2f5316 2563 int16_t *px_ur,
Charles MacNeill 5:89031b2f5316 2564 int16_t *py_ur)
Charles MacNeill 5:89031b2f5316 2565 {
Charles MacNeill 5:89031b2f5316 2566
Charles MacNeill 5:89031b2f5316 2567 VL53LX_decode_zone_limits(
Charles MacNeill 5:89031b2f5316 2568 encoded_xy_centre,
Charles MacNeill 5:89031b2f5316 2569 encoded_xy_size,
Charles MacNeill 5:89031b2f5316 2570 px_ll,
Charles MacNeill 5:89031b2f5316 2571 py_ll,
Charles MacNeill 5:89031b2f5316 2572 px_ur,
Charles MacNeill 5:89031b2f5316 2573 py_ur);
Charles MacNeill 5:89031b2f5316 2574
Charles MacNeill 5:89031b2f5316 2575 }
Charles MacNeill 5:89031b2f5316 2576
Charles MacNeill 5:89031b2f5316 2577 uint8_t VL53L3CX::VL53L3CX_is_aperture_location(
Charles MacNeill 5:89031b2f5316 2578 uint8_t row,
Charles MacNeill 5:89031b2f5316 2579 uint8_t col)
Charles MacNeill 5:89031b2f5316 2580 {
Charles MacNeill 5:89031b2f5316 2581
Charles MacNeill 5:89031b2f5316 2582 return VL53LX_is_aperture_location( row, col);
Charles MacNeill 5:89031b2f5316 2583
Charles MacNeill 5:89031b2f5316 2584 }
Charles MacNeill 5:89031b2f5316 2585
Charles MacNeill 5:89031b2f5316 2586 void VL53L3CX::VL53L3CX_calc_max_effective_spads(
Charles MacNeill 5:89031b2f5316 2587 uint8_t encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2588 uint8_t encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2589 uint8_t *pgood_spads,
Charles MacNeill 5:89031b2f5316 2590 uint16_t aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2591 uint16_t *pmax_effective_spads)
Charles MacNeill 5:89031b2f5316 2592 {
Charles MacNeill 5:89031b2f5316 2593
Charles MacNeill 5:89031b2f5316 2594 VL53LX_calc_max_effective_spads(encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2595 encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2596 pgood_spads,
Charles MacNeill 5:89031b2f5316 2597 aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2598 pmax_effective_spads);
Charles MacNeill 5:89031b2f5316 2599
Charles MacNeill 5:89031b2f5316 2600 }
Charles MacNeill 5:89031b2f5316 2601
Charles MacNeill 5:89031b2f5316 2602
Charles MacNeill 5:89031b2f5316 2603
Charles MacNeill 5:89031b2f5316 2604
Charles MacNeill 5:89031b2f5316 2605 void VL53L3CX::VL53L3CX_calc_mm_effective_spads(
Charles MacNeill 5:89031b2f5316 2606 uint8_t encoded_mm_roi_centre,
Charles MacNeill 5:89031b2f5316 2607 uint8_t encoded_mm_roi_size,
Charles MacNeill 5:89031b2f5316 2608 uint8_t encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2609 uint8_t encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2610 uint8_t *pgood_spads,
Charles MacNeill 5:89031b2f5316 2611 uint16_t aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2612 uint16_t *pmm_inner_effective_spads,
Charles MacNeill 5:89031b2f5316 2613 uint16_t *pmm_outer_effective_spads)
Charles MacNeill 5:89031b2f5316 2614 {
Charles MacNeill 5:89031b2f5316 2615
Charles MacNeill 5:89031b2f5316 2616 VL53LX_calc_mm_effective_spads( encoded_mm_roi_centre,
Charles MacNeill 5:89031b2f5316 2617 encoded_mm_roi_size,
Charles MacNeill 5:89031b2f5316 2618 encoded_zone_centre,
Charles MacNeill 5:89031b2f5316 2619 encoded_zone_size,
Charles MacNeill 5:89031b2f5316 2620 pgood_spads,
Charles MacNeill 5:89031b2f5316 2621 aperture_attenuation,
Charles MacNeill 5:89031b2f5316 2622 pmm_inner_effective_spads,
Charles MacNeill 5:89031b2f5316 2623 pmm_outer_effective_spads);
Charles MacNeill 5:89031b2f5316 2624
Charles MacNeill 5:89031b2f5316 2625 }
Charles MacNeill 5:89031b2f5316 2626
Charles MacNeill 5:89031b2f5316 2627
Charles MacNeill 5:89031b2f5316 2628 void VL53L3CX::VL53L3CX_hist_copy_results_to_sys_and_core(
Charles MacNeill 5:89031b2f5316 2629 VL53LX_histogram_bin_data_t *pbins,
Charles MacNeill 5:89031b2f5316 2630 VL53LX_range_results_t *phist,
Charles MacNeill 5:89031b2f5316 2631 VL53LX_system_results_t *psys,
Charles MacNeill 5:89031b2f5316 2632 VL53LX_core_results_t *pcore)
Charles MacNeill 5:89031b2f5316 2633 {
Charles MacNeill 5:89031b2f5316 2634
Charles MacNeill 5:89031b2f5316 2635 return VL53LX_hist_copy_results_to_sys_and_core(pbins,
Charles MacNeill 5:89031b2f5316 2636 phist,
Charles MacNeill 5:89031b2f5316 2637 psys,
Charles MacNeill 5:89031b2f5316 2638 pcore);
Charles MacNeill 5:89031b2f5316 2639
Charles MacNeill 5:89031b2f5316 2640
Charles MacNeill 5:89031b2f5316 2641 }
Charles MacNeill 5:89031b2f5316 2642
Charles MacNeill 5:89031b2f5316 2643
Charles MacNeill 5:89031b2f5316 2644
Charles MacNeill 5:89031b2f5316 2645
Charles MacNeill 5:89031b2f5316 2646
Charles MacNeill 5:89031b2f5316 2647 VL53LX_Error VL53L3CX::VL53L3CX_save_cfg_data()
Charles MacNeill 5:89031b2f5316 2648 {
Charles MacNeill 5:89031b2f5316 2649
Charles MacNeill 5:89031b2f5316 2650 return VL53LX_save_cfg_data(Dev);
Charles MacNeill 5:89031b2f5316 2651
Charles MacNeill 5:89031b2f5316 2652 }
Charles MacNeill 5:89031b2f5316 2653
Charles MacNeill 5:89031b2f5316 2654
Charles MacNeill 5:89031b2f5316 2655 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_zone_update(
Charles MacNeill 5:89031b2f5316 2656 VL53LX_range_results_t *presults)
Charles MacNeill 5:89031b2f5316 2657 {
Charles MacNeill 5:89031b2f5316 2658
Charles MacNeill 5:89031b2f5316 2659 return VL53LX_dynamic_zone_update(Dev, presults);
Charles MacNeill 5:89031b2f5316 2660
Charles MacNeill 5:89031b2f5316 2661 }
Charles MacNeill 5:89031b2f5316 2662
Charles MacNeill 5:89031b2f5316 2663 VL53LX_Error VL53L3CX::VL53L3CX_multizone_hist_bins_update()
Charles MacNeill 5:89031b2f5316 2664 {
Charles MacNeill 5:89031b2f5316 2665
Charles MacNeill 5:89031b2f5316 2666 return VL53LX_multizone_hist_bins_update(Dev);
Charles MacNeill 5:89031b2f5316 2667
Charles MacNeill 5:89031b2f5316 2668 }
Charles MacNeill 5:89031b2f5316 2669
Charles MacNeill 5:89031b2f5316 2670 VL53LX_Error VL53L3CX::VL53L3CX_update_internal_stream_counters(
Charles MacNeill 5:89031b2f5316 2671 uint8_t external_stream_count,
Charles MacNeill 5:89031b2f5316 2672 uint8_t *pinternal_stream_count,
Charles MacNeill 5:89031b2f5316 2673 uint8_t *pinternal_stream_count_val)
Charles MacNeill 5:89031b2f5316 2674 {
Charles MacNeill 5:89031b2f5316 2675
Charles MacNeill 5:89031b2f5316 2676
Charles MacNeill 5:89031b2f5316 2677 return VL53LX_update_internal_stream_counters( Dev,
Charles MacNeill 5:89031b2f5316 2678 external_stream_count,
Charles MacNeill 5:89031b2f5316 2679 pinternal_stream_count,
Charles MacNeill 5:89031b2f5316 2680 pinternal_stream_count_val);
Charles MacNeill 5:89031b2f5316 2681
Charles MacNeill 5:89031b2f5316 2682 }
Charles MacNeill 5:89031b2f5316 2683
Charles MacNeill 5:89031b2f5316 2684
Charles MacNeill 5:89031b2f5316 2685 VL53LX_Error VL53L3CX::VL53L3CX_set_histogram_multizone_initial_bin_config(
Charles MacNeill 5:89031b2f5316 2686 VL53LX_zone_config_t *pzone_cfg,
Charles MacNeill 5:89031b2f5316 2687 VL53LX_histogram_config_t *phist_cfg,
Charles MacNeill 5:89031b2f5316 2688 VL53LX_histogram_config_t *pmulti_hist)
Charles MacNeill 5:89031b2f5316 2689 {
Charles MacNeill 5:89031b2f5316 2690
Charles MacNeill 5:89031b2f5316 2691 return VL53LX_set_histogram_multizone_initial_bin_config(pzone_cfg,
Charles MacNeill 5:89031b2f5316 2692 phist_cfg,
Charles MacNeill 5:89031b2f5316 2693 pmulti_hist);
Charles MacNeill 5:89031b2f5316 2694
Charles MacNeill 5:89031b2f5316 2695 }
Charles MacNeill 5:89031b2f5316 2696
Charles MacNeill 5:89031b2f5316 2697 uint8_t VL53L3CX::VL53L3CX_encode_GPIO_interrupt_config(
Charles MacNeill 5:89031b2f5316 2698 VL53LX_GPIO_interrupt_config_t *pintconf)
Charles MacNeill 5:89031b2f5316 2699 {
Charles MacNeill 5:89031b2f5316 2700
Charles MacNeill 5:89031b2f5316 2701 return VL53LX_encode_GPIO_interrupt_config(pintconf);
Charles MacNeill 5:89031b2f5316 2702
Charles MacNeill 5:89031b2f5316 2703 }
Charles MacNeill 5:89031b2f5316 2704
Charles MacNeill 5:89031b2f5316 2705 VL53LX_GPIO_interrupt_config_t VL53L3CX::VL53L3CX_decode_GPIO_interrupt_config(
Charles MacNeill 5:89031b2f5316 2706 uint8_t system__interrupt_config)
Charles MacNeill 5:89031b2f5316 2707 {
Charles MacNeill 5:89031b2f5316 2708
Charles MacNeill 5:89031b2f5316 2709 return VL53LX_decode_GPIO_interrupt_config( system__interrupt_config);
Charles MacNeill 5:89031b2f5316 2710
Charles MacNeill 5:89031b2f5316 2711 }
Charles MacNeill 5:89031b2f5316 2712
Charles MacNeill 5:89031b2f5316 2713 VL53LX_Error VL53L3CX::VL53L3CX_set_GPIO_distance_threshold(
Charles MacNeill 5:89031b2f5316 2714 uint16_t threshold_high,
Charles MacNeill 5:89031b2f5316 2715 uint16_t threshold_low)
Charles MacNeill 5:89031b2f5316 2716 {
Charles MacNeill 5:89031b2f5316 2717
Charles MacNeill 5:89031b2f5316 2718 return VL53LX_set_GPIO_distance_threshold( Dev,
Charles MacNeill 5:89031b2f5316 2719 threshold_high,
Charles MacNeill 5:89031b2f5316 2720 threshold_low);
Charles MacNeill 5:89031b2f5316 2721
Charles MacNeill 5:89031b2f5316 2722 }
Charles MacNeill 5:89031b2f5316 2723
Charles MacNeill 5:89031b2f5316 2724
Charles MacNeill 5:89031b2f5316 2725 VL53LX_Error VL53L3CX::VL53L3CX_set_GPIO_rate_threshold(
Charles MacNeill 5:89031b2f5316 2726 uint16_t threshold_high,
Charles MacNeill 5:89031b2f5316 2727 uint16_t threshold_low)
Charles MacNeill 5:89031b2f5316 2728 {
Charles MacNeill 5:89031b2f5316 2729
Charles MacNeill 5:89031b2f5316 2730 return VL53LX_set_GPIO_rate_threshold( Dev,
Charles MacNeill 5:89031b2f5316 2731 threshold_high,
Charles MacNeill 5:89031b2f5316 2732 threshold_low);
Charles MacNeill 5:89031b2f5316 2733
Charles MacNeill 5:89031b2f5316 2734 }
Charles MacNeill 5:89031b2f5316 2735
Charles MacNeill 5:89031b2f5316 2736 VL53LX_Error VL53L3CX::VL53L3CX_set_GPIO_thresholds_from_struct(
Charles MacNeill 5:89031b2f5316 2737 VL53LX_GPIO_interrupt_config_t *pintconf)
Charles MacNeill 5:89031b2f5316 2738 {
Charles MacNeill 5:89031b2f5316 2739
Charles MacNeill 5:89031b2f5316 2740 return VL53LX_set_GPIO_thresholds_from_struct( Dev, pintconf);
Charles MacNeill 5:89031b2f5316 2741 }
Charles MacNeill 5:89031b2f5316 2742
Charles MacNeill 5:89031b2f5316 2743
Charles MacNeill 5:89031b2f5316 2744 VL53LX_Error VL53L3CX::VL53L3CX_set_ref_spad_char_config(
Charles MacNeill 5:89031b2f5316 2745 uint8_t vcsel_period_a,
Charles MacNeill 5:89031b2f5316 2746 uint32_t phasecal_timeout_us,
Charles MacNeill 5:89031b2f5316 2747 uint16_t total_rate_target_mcps,
Charles MacNeill 5:89031b2f5316 2748 uint16_t max_count_rate_rtn_limit_mcps,
Charles MacNeill 5:89031b2f5316 2749 uint16_t min_count_rate_rtn_limit_mcps,
Charles MacNeill 5:89031b2f5316 2750 uint16_t fast_osc_frequency)
Charles MacNeill 5:89031b2f5316 2751 {
Charles MacNeill 5:89031b2f5316 2752
Charles MacNeill 5:89031b2f5316 2753 return VL53LX_set_ref_spad_char_config(Dev,
Charles MacNeill 5:89031b2f5316 2754 vcsel_period_a,
Charles MacNeill 5:89031b2f5316 2755 phasecal_timeout_us,
Charles MacNeill 5:89031b2f5316 2756 total_rate_target_mcps,
Charles MacNeill 5:89031b2f5316 2757 max_count_rate_rtn_limit_mcps,
Charles MacNeill 5:89031b2f5316 2758 min_count_rate_rtn_limit_mcps,
Charles MacNeill 5:89031b2f5316 2759 fast_osc_frequency);
Charles MacNeill 5:89031b2f5316 2760
Charles MacNeill 5:89031b2f5316 2761 }
Charles MacNeill 5:89031b2f5316 2762
Charles MacNeill 5:89031b2f5316 2763 VL53LX_Error VL53L3CX::VL53L3CX_set_ssc_config(
Charles MacNeill 5:89031b2f5316 2764 VL53LX_ssc_config_t *pssc_cfg,
Charles MacNeill 5:89031b2f5316 2765 uint16_t fast_osc_frequency)
Charles MacNeill 5:89031b2f5316 2766 {
Charles MacNeill 5:89031b2f5316 2767
Charles MacNeill 5:89031b2f5316 2768 return VL53LX_set_ssc_config( Dev,
Charles MacNeill 5:89031b2f5316 2769 pssc_cfg,
Charles MacNeill 5:89031b2f5316 2770 fast_osc_frequency);
Charles MacNeill 5:89031b2f5316 2771
Charles MacNeill 5:89031b2f5316 2772
Charles MacNeill 5:89031b2f5316 2773 }
Charles MacNeill 5:89031b2f5316 2774
Charles MacNeill 5:89031b2f5316 2775
Charles MacNeill 5:89031b2f5316 2776 VL53LX_Error VL53L3CX::VL53L3CX_get_spad_rate_data(
Charles MacNeill 5:89031b2f5316 2777 VL53LX_spad_rate_data_t *pspad_rates)
Charles MacNeill 5:89031b2f5316 2778 {
Charles MacNeill 5:89031b2f5316 2779
Charles MacNeill 5:89031b2f5316 2780 return VL53LX_get_spad_rate_data( Dev, pspad_rates);
Charles MacNeill 5:89031b2f5316 2781
Charles MacNeill 5:89031b2f5316 2782 }
Charles MacNeill 5:89031b2f5316 2783
Charles MacNeill 5:89031b2f5316 2784 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_calc_required_samples()
Charles MacNeill 5:89031b2f5316 2785 {
Charles MacNeill 5:89031b2f5316 2786
Charles MacNeill 5:89031b2f5316 2787 return VL53LX_dynamic_xtalk_correction_calc_required_samples( Dev);
Charles MacNeill 5:89031b2f5316 2788 }
Charles MacNeill 5:89031b2f5316 2789
Charles MacNeill 5:89031b2f5316 2790 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_calc_new_xtalk(
Charles MacNeill 5:89031b2f5316 2791 uint32_t xtalk_offset_out,
Charles MacNeill 5:89031b2f5316 2792 VL53LX_smudge_corrector_config_t *pconfig,
Charles MacNeill 5:89031b2f5316 2793 VL53LX_smudge_corrector_data_t *pout,
Charles MacNeill 5:89031b2f5316 2794 uint8_t add_smudge,
Charles MacNeill 5:89031b2f5316 2795 uint8_t soft_update
Charles MacNeill 5:89031b2f5316 2796 )
Charles MacNeill 5:89031b2f5316 2797 {
Charles MacNeill 5:89031b2f5316 2798
Charles MacNeill 5:89031b2f5316 2799 return VL53LX_dynamic_xtalk_correction_calc_new_xtalk( Dev, xtalk_offset_out, pconfig, pout,add_smudge,soft_update);
Charles MacNeill 5:89031b2f5316 2800 }
Charles MacNeill 5:89031b2f5316 2801
Charles MacNeill 5:89031b2f5316 2802
Charles MacNeill 5:89031b2f5316 2803
Charles MacNeill 5:89031b2f5316 2804 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_corrector()
Charles MacNeill 5:89031b2f5316 2805 {
Charles MacNeill 5:89031b2f5316 2806
Charles MacNeill 5:89031b2f5316 2807 return VL53LX_dynamic_xtalk_correction_corrector( Dev);
Charles MacNeill 5:89031b2f5316 2808 }
Charles MacNeill 5:89031b2f5316 2809
Charles MacNeill 5:89031b2f5316 2810 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_data_init()
Charles MacNeill 5:89031b2f5316 2811 {
Charles MacNeill 5:89031b2f5316 2812 return VL53LX_dynamic_xtalk_correction_data_init( Dev);
Charles MacNeill 5:89031b2f5316 2813 }
Charles MacNeill 5:89031b2f5316 2814
Charles MacNeill 5:89031b2f5316 2815
Charles MacNeill 5:89031b2f5316 2816 VL53LX_Error VL53L3CX::VL53L3CX_dynamic_xtalk_correction_output_init(
Charles MacNeill 5:89031b2f5316 2817 VL53LX_LLDriverResults_t *pres
Charles MacNeill 5:89031b2f5316 2818 )
Charles MacNeill 5:89031b2f5316 2819 {
Charles MacNeill 5:89031b2f5316 2820
Charles MacNeill 5:89031b2f5316 2821 return VL53LX_dynamic_xtalk_correction_output_init(pres);
Charles MacNeill 5:89031b2f5316 2822
Charles MacNeill 5:89031b2f5316 2823 }
Charles MacNeill 5:89031b2f5316 2824
Charles MacNeill 5:89031b2f5316 2825 VL53LX_Error VL53L3CX::VL53L3CX_xtalk_cal_data_init()
Charles MacNeill 5:89031b2f5316 2826 {
Charles MacNeill 5:89031b2f5316 2827
Charles MacNeill 5:89031b2f5316 2828 return VL53LX_xtalk_cal_data_init( Dev );
Charles MacNeill 5:89031b2f5316 2829
Charles MacNeill 5:89031b2f5316 2830 }
Charles MacNeill 5:89031b2f5316 2831
Charles MacNeill 5:89031b2f5316 2832 VL53LX_Error VL53L3CX::VL53L3CX_low_power_auto_data_init()
Charles MacNeill 5:89031b2f5316 2833 {
Charles MacNeill 5:89031b2f5316 2834
Charles MacNeill 5:89031b2f5316 2835 return VL53LX_low_power_auto_data_init( Dev);
Charles MacNeill 5:89031b2f5316 2836
Charles MacNeill 5:89031b2f5316 2837 }
Charles MacNeill 5:89031b2f5316 2838
Charles MacNeill 5:89031b2f5316 2839 VL53LX_Error VL53L3CX::VL53L3CX_low_power_auto_data_stop_range()
Charles MacNeill 5:89031b2f5316 2840 {
Charles MacNeill 5:89031b2f5316 2841
Charles MacNeill 5:89031b2f5316 2842 return VL53LX_low_power_auto_data_stop_range(Dev);
Charles MacNeill 5:89031b2f5316 2843
Charles MacNeill 5:89031b2f5316 2844 }
Charles MacNeill 5:89031b2f5316 2845
Charles MacNeill 5:89031b2f5316 2846 VL53LX_Error VL53L3CX::VL53L3CX_config_low_power_auto_mode(
Charles MacNeill 5:89031b2f5316 2847 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 2848 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 2849 VL53LX_low_power_auto_data_t *plpadata
Charles MacNeill 5:89031b2f5316 2850 )
Charles MacNeill 5:89031b2f5316 2851 {
Charles MacNeill 5:89031b2f5316 2852
Charles MacNeill 5:89031b2f5316 2853 return VL53LX_config_low_power_auto_mode( pgeneral, pdynamic,plpadata);
Charles MacNeill 5:89031b2f5316 2854
Charles MacNeill 5:89031b2f5316 2855 }
Charles MacNeill 5:89031b2f5316 2856
Charles MacNeill 5:89031b2f5316 2857
Charles MacNeill 5:89031b2f5316 2858 VL53LX_Error VL53L3CX::VL53L3CX_low_power_auto_setup_manual_calibration()
Charles MacNeill 5:89031b2f5316 2859 {
Charles MacNeill 5:89031b2f5316 2860
Charles MacNeill 5:89031b2f5316 2861 return VL53LX_low_power_auto_setup_manual_calibration( Dev);
Charles MacNeill 5:89031b2f5316 2862 }
Charles MacNeill 5:89031b2f5316 2863
Charles MacNeill 5:89031b2f5316 2864
Charles MacNeill 5:89031b2f5316 2865 VL53LX_Error VL53L3CX::VL53L3CX_low_power_auto_update_DSS()
Charles MacNeill 5:89031b2f5316 2866 {
Charles MacNeill 5:89031b2f5316 2867
Charles MacNeill 5:89031b2f5316 2868 return VL53LX_low_power_auto_update_DSS( Dev );
Charles MacNeill 5:89031b2f5316 2869
Charles MacNeill 5:89031b2f5316 2870 }
Charles MacNeill 5:89031b2f5316 2871
Charles MacNeill 5:89031b2f5316 2872 VL53LX_Error VL53L3CX::VL53L3CX_compute_histo_merge_nb(uint8_t *histo_merge_nb)
Charles MacNeill 5:89031b2f5316 2873 {
Charles MacNeill 5:89031b2f5316 2874
Charles MacNeill 5:89031b2f5316 2875 return VL53LX_compute_histo_merge_nb( Dev, histo_merge_nb);
Charles MacNeill 5:89031b2f5316 2876
Charles MacNeill 5:89031b2f5316 2877 }
Charles MacNeill 5:89031b2f5316 2878
Charles MacNeill 5:89031b2f5316 2879 /* vl53lx_wait.c */
Charles MacNeill 5:89031b2f5316 2880
Charles MacNeill 5:89031b2f5316 2881
Charles MacNeill 5:89031b2f5316 2882 VL53LX_Error VL53L3CX::VL53L3CX_wait_for_boot_completion()
Charles MacNeill 5:89031b2f5316 2883 {
Charles MacNeill 5:89031b2f5316 2884
Charles MacNeill 5:89031b2f5316 2885 return VL53LX_wait_for_boot_completion(Dev);
Charles MacNeill 5:89031b2f5316 2886
Charles MacNeill 5:89031b2f5316 2887 }
Charles MacNeill 5:89031b2f5316 2888
Charles MacNeill 5:89031b2f5316 2889 VL53LX_Error VL53L3CX::VL53L3CX_wait_for_firmware_ready()
Charles MacNeill 5:89031b2f5316 2890 {
Charles MacNeill 5:89031b2f5316 2891
Charles MacNeill 5:89031b2f5316 2892 return VL53LX_wait_for_firmware_ready(Dev);
Charles MacNeill 5:89031b2f5316 2893
Charles MacNeill 5:89031b2f5316 2894 }
Charles MacNeill 5:89031b2f5316 2895
Charles MacNeill 5:89031b2f5316 2896
Charles MacNeill 5:89031b2f5316 2897 VL53LX_Error VL53L3CX::VL53L3CX_wait_for_range_completion()
Charles MacNeill 5:89031b2f5316 2898 {
Charles MacNeill 5:89031b2f5316 2899
Charles MacNeill 5:89031b2f5316 2900 return VL53LX_wait_for_range_completion(Dev);
Charles MacNeill 5:89031b2f5316 2901
Charles MacNeill 5:89031b2f5316 2902 }
Charles MacNeill 5:89031b2f5316 2903 VL53LX_Error VL53L3CX::VL53L3CX_wait_for_test_completion()
Charles MacNeill 5:89031b2f5316 2904 {
Charles MacNeill 5:89031b2f5316 2905 return VL53LX_wait_for_test_completion(Dev);
Charles MacNeill 5:89031b2f5316 2906 }
Charles MacNeill 5:89031b2f5316 2907
Charles MacNeill 5:89031b2f5316 2908 VL53LX_Error VL53L3CX::VL53L3CX_is_boot_complete(
Charles MacNeill 5:89031b2f5316 2909 uint8_t *pready)
Charles MacNeill 5:89031b2f5316 2910 {
Charles MacNeill 5:89031b2f5316 2911
Charles MacNeill 5:89031b2f5316 2912 return VL53LX_is_boot_complete( Dev,
Charles MacNeill 5:89031b2f5316 2913 pready);
Charles MacNeill 5:89031b2f5316 2914
Charles MacNeill 5:89031b2f5316 2915 }
Charles MacNeill 5:89031b2f5316 2916
Charles MacNeill 5:89031b2f5316 2917 VL53LX_Error VL53L3CX::VL53L3CX_is_firmware_ready(
Charles MacNeill 5:89031b2f5316 2918 uint8_t *pready)
Charles MacNeill 5:89031b2f5316 2919 {
Charles MacNeill 5:89031b2f5316 2920
Charles MacNeill 5:89031b2f5316 2921 return VL53LX_is_firmware_ready( Dev, pready);
Charles MacNeill 5:89031b2f5316 2922
Charles MacNeill 5:89031b2f5316 2923 }
Charles MacNeill 5:89031b2f5316 2924 VL53LX_Error VL53L3CX::VL53L3CX_is_new_data_ready(
Charles MacNeill 5:89031b2f5316 2925 uint8_t *pready)
Charles MacNeill 5:89031b2f5316 2926 {
Charles MacNeill 5:89031b2f5316 2927
Charles MacNeill 5:89031b2f5316 2928 return VL53LX_is_new_data_ready(Dev, pready);
Charles MacNeill 5:89031b2f5316 2929
Charles MacNeill 5:89031b2f5316 2930 }
Charles MacNeill 5:89031b2f5316 2931
Charles MacNeill 5:89031b2f5316 2932 VL53LX_Error VL53L3CX::VL53L3CX_poll_for_boot_completion(
Charles MacNeill 5:89031b2f5316 2933 uint32_t timeout_ms)
Charles MacNeill 5:89031b2f5316 2934 {
Charles MacNeill 5:89031b2f5316 2935
Charles MacNeill 5:89031b2f5316 2936 return VL53LX_poll_for_boot_completion(Dev,timeout_ms);
Charles MacNeill 5:89031b2f5316 2937
Charles MacNeill 5:89031b2f5316 2938 }
Charles MacNeill 5:89031b2f5316 2939
Charles MacNeill 5:89031b2f5316 2940 VL53LX_Error VL53L3CX::VL53L3CX_poll_for_firmware_ready(
Charles MacNeill 5:89031b2f5316 2941 uint32_t timeout_ms)
Charles MacNeill 5:89031b2f5316 2942 {
Charles MacNeill 5:89031b2f5316 2943
Charles MacNeill 5:89031b2f5316 2944 return VL53LX_poll_for_firmware_ready(Dev,timeout_ms);
Charles MacNeill 5:89031b2f5316 2945
Charles MacNeill 5:89031b2f5316 2946 }
Charles MacNeill 5:89031b2f5316 2947
Charles MacNeill 5:89031b2f5316 2948 VL53LX_Error VL53L3CX::VL53L3CX_poll_for_range_completion(
Charles MacNeill 5:89031b2f5316 2949 uint32_t timeout_ms)
Charles MacNeill 5:89031b2f5316 2950 {
Charles MacNeill 5:89031b2f5316 2951
Charles MacNeill 5:89031b2f5316 2952 return VL53LX_poll_for_range_completion(Dev, timeout_ms);
Charles MacNeill 5:89031b2f5316 2953
Charles MacNeill 5:89031b2f5316 2954 }
Charles MacNeill 5:89031b2f5316 2955
Charles MacNeill 5:89031b2f5316 2956 /* vl53lx_zone_presets.c */
Charles MacNeill 5:89031b2f5316 2957
Charles MacNeill 5:89031b2f5316 2958
Charles MacNeill 5:89031b2f5316 2959 VL53LX_Error VL53L3CX::VL53L3CX_init_zone_config_histogram_bins(
Charles MacNeill 5:89031b2f5316 2960 VL53LX_zone_config_t *pdata)
Charles MacNeill 5:89031b2f5316 2961 {
Charles MacNeill 5:89031b2f5316 2962
Charles MacNeill 5:89031b2f5316 2963 return VL53LX_init_zone_config_histogram_bins(pdata);
Charles MacNeill 5:89031b2f5316 2964
Charles MacNeill 5:89031b2f5316 2965 }
Charles MacNeill 5:89031b2f5316 2966
Charles MacNeill 5:89031b2f5316 2967 /* vl53lx_api_preset_modes.h */
Charles MacNeill 5:89031b2f5316 2968
Charles MacNeill 5:89031b2f5316 2969 VL53LX_Error VL53L3CX::VL53L3CX_init_refspadchar_config_struct(
Charles MacNeill 5:89031b2f5316 2970 VL53LX_refspadchar_config_t *pdata)
Charles MacNeill 5:89031b2f5316 2971 {
Charles MacNeill 5:89031b2f5316 2972
Charles MacNeill 5:89031b2f5316 2973 return VL53LX_init_refspadchar_config_struct(pdata);
Charles MacNeill 5:89031b2f5316 2974
Charles MacNeill 5:89031b2f5316 2975 }
Charles MacNeill 5:89031b2f5316 2976
Charles MacNeill 5:89031b2f5316 2977 VL53LX_Error VL53L3CX::VL53L3CX_init_ssc_config_struct(
Charles MacNeill 5:89031b2f5316 2978 VL53LX_ssc_config_t *pdata)
Charles MacNeill 5:89031b2f5316 2979 {
Charles MacNeill 5:89031b2f5316 2980
Charles MacNeill 5:89031b2f5316 2981 return VL53LX_init_ssc_config_struct(pdata);
Charles MacNeill 5:89031b2f5316 2982
Charles MacNeill 5:89031b2f5316 2983 }
Charles MacNeill 5:89031b2f5316 2984
Charles MacNeill 5:89031b2f5316 2985
Charles MacNeill 5:89031b2f5316 2986 VL53LX_Error VL53L3CX::VL53L3CX_init_xtalk_config_struct(
Charles MacNeill 5:89031b2f5316 2987 VL53LX_customer_nvm_managed_t *pnvm,
Charles MacNeill 5:89031b2f5316 2988 VL53LX_xtalk_config_t *pdata)
Charles MacNeill 5:89031b2f5316 2989 {
Charles MacNeill 5:89031b2f5316 2990
Charles MacNeill 5:89031b2f5316 2991 return VL53LX_init_xtalk_config_struct(
Charles MacNeill 5:89031b2f5316 2992 pnvm,
Charles MacNeill 5:89031b2f5316 2993 pdata);
Charles MacNeill 5:89031b2f5316 2994
Charles MacNeill 5:89031b2f5316 2995 }
Charles MacNeill 5:89031b2f5316 2996
Charles MacNeill 5:89031b2f5316 2997 VL53LX_Error VL53L3CX::VL53L3CX_init_xtalk_extract_config_struct(
Charles MacNeill 5:89031b2f5316 2998 VL53LX_xtalkextract_config_t *pdata)
Charles MacNeill 5:89031b2f5316 2999 {
Charles MacNeill 5:89031b2f5316 3000
Charles MacNeill 5:89031b2f5316 3001 return VL53LX_init_xtalk_extract_config_struct(pdata);
Charles MacNeill 5:89031b2f5316 3002
Charles MacNeill 5:89031b2f5316 3003 }
Charles MacNeill 5:89031b2f5316 3004
Charles MacNeill 5:89031b2f5316 3005
Charles MacNeill 5:89031b2f5316 3006 VL53LX_Error VL53L3CX::VL53L3CX_init_offset_cal_config_struct(
Charles MacNeill 5:89031b2f5316 3007 VL53LX_offsetcal_config_t *pdata)
Charles MacNeill 5:89031b2f5316 3008 {
Charles MacNeill 5:89031b2f5316 3009
Charles MacNeill 5:89031b2f5316 3010 return VL53LX_init_offset_cal_config_struct(pdata);
Charles MacNeill 5:89031b2f5316 3011
Charles MacNeill 5:89031b2f5316 3012 }
Charles MacNeill 5:89031b2f5316 3013
Charles MacNeill 5:89031b2f5316 3014 VL53LX_Error VL53L3CX::VL53L3CX_init_zone_cal_config_struct(
Charles MacNeill 5:89031b2f5316 3015 VL53LX_zonecal_config_t *pdata)
Charles MacNeill 5:89031b2f5316 3016 {
Charles MacNeill 5:89031b2f5316 3017
Charles MacNeill 5:89031b2f5316 3018 return VL53LX_init_zone_cal_config_struct(pdata);
Charles MacNeill 5:89031b2f5316 3019
Charles MacNeill 5:89031b2f5316 3020 }
Charles MacNeill 5:89031b2f5316 3021
Charles MacNeill 5:89031b2f5316 3022 VL53LX_Error VL53L3CX::VL53L3CX_init_hist_post_process_config_struct(
Charles MacNeill 5:89031b2f5316 3023 uint8_t xtalk_compensation_enable,
Charles MacNeill 5:89031b2f5316 3024 VL53LX_hist_post_process_config_t *pdata)
Charles MacNeill 5:89031b2f5316 3025 {
Charles MacNeill 5:89031b2f5316 3026
Charles MacNeill 5:89031b2f5316 3027 return VL53LX_init_hist_post_process_config_struct(
Charles MacNeill 5:89031b2f5316 3028 xtalk_compensation_enable,
Charles MacNeill 5:89031b2f5316 3029 pdata);
Charles MacNeill 5:89031b2f5316 3030
Charles MacNeill 5:89031b2f5316 3031 }
Charles MacNeill 5:89031b2f5316 3032
Charles MacNeill 5:89031b2f5316 3033
Charles MacNeill 5:89031b2f5316 3034 VL53LX_Error VL53L3CX::VL53L3CX_init_dmax_calibration_data_struct(
Charles MacNeill 5:89031b2f5316 3035 VL53LX_dmax_calibration_data_t *pdata)
Charles MacNeill 5:89031b2f5316 3036 {
Charles MacNeill 5:89031b2f5316 3037
Charles MacNeill 5:89031b2f5316 3038 return VL53LX_init_dmax_calibration_data_struct( pdata );
Charles MacNeill 5:89031b2f5316 3039
Charles MacNeill 5:89031b2f5316 3040 }
Charles MacNeill 5:89031b2f5316 3041
Charles MacNeill 5:89031b2f5316 3042 VL53LX_Error VL53L3CX::VL53L3CX_init_tuning_parm_storage_struct(
Charles MacNeill 5:89031b2f5316 3043 VL53LX_tuning_parm_storage_t *pdata)
Charles MacNeill 5:89031b2f5316 3044 {
Charles MacNeill 5:89031b2f5316 3045
Charles MacNeill 5:89031b2f5316 3046 return VL53LX_init_tuning_parm_storage_struct( pdata );
Charles MacNeill 5:89031b2f5316 3047
Charles MacNeill 5:89031b2f5316 3048 }
Charles MacNeill 5:89031b2f5316 3049
Charles MacNeill 5:89031b2f5316 3050 VL53LX_Error VL53L3CX::VL53L3CX_init_hist_gen3_dmax_config_struct(
Charles MacNeill 5:89031b2f5316 3051 VL53LX_hist_gen3_dmax_config_t *pdata)
Charles MacNeill 5:89031b2f5316 3052 {
Charles MacNeill 5:89031b2f5316 3053 return VL53LX_init_hist_gen3_dmax_config_struct( pdata);
Charles MacNeill 5:89031b2f5316 3054 }
Charles MacNeill 5:89031b2f5316 3055
Charles MacNeill 5:89031b2f5316 3056
Charles MacNeill 5:89031b2f5316 3057 VL53LX_Error VL53L3CX::VL53L3CX_preset_mode_standard_ranging(
Charles MacNeill 5:89031b2f5316 3058 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3059 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3060 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 3061 VL53LX_timing_config_t *ptiming,
Charles MacNeill 5:89031b2f5316 3062 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 3063 VL53LX_system_control_t *psystem,
Charles MacNeill 5:89031b2f5316 3064 VL53LX_tuning_parm_storage_t *ptuning_parms,
Charles MacNeill 5:89031b2f5316 3065 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 3066 {
Charles MacNeill 5:89031b2f5316 3067
Charles MacNeill 5:89031b2f5316 3068
Charles MacNeill 5:89031b2f5316 3069 return VL53LX_preset_mode_standard_ranging(
Charles MacNeill 5:89031b2f5316 3070 pstatic,
Charles MacNeill 5:89031b2f5316 3071 phistogram,
Charles MacNeill 5:89031b2f5316 3072 pgeneral,
Charles MacNeill 5:89031b2f5316 3073 ptiming,
Charles MacNeill 5:89031b2f5316 3074 pdynamic,
Charles MacNeill 5:89031b2f5316 3075 psystem,
Charles MacNeill 5:89031b2f5316 3076 ptuning_parms,
Charles MacNeill 5:89031b2f5316 3077 pzone_cfg);
Charles MacNeill 5:89031b2f5316 3078 }
Charles MacNeill 5:89031b2f5316 3079
Charles MacNeill 5:89031b2f5316 3080 VL53LX_Error VL53L3CX::VL53L3CX_preset_mode_histogram_ranging(
Charles MacNeill 5:89031b2f5316 3081 VL53LX_hist_post_process_config_t *phistpostprocess,
Charles MacNeill 5:89031b2f5316 3082 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3083 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3084 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 3085 VL53LX_timing_config_t *ptiming,
Charles MacNeill 5:89031b2f5316 3086 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 3087 VL53LX_system_control_t *psystem,
Charles MacNeill 5:89031b2f5316 3088 VL53LX_tuning_parm_storage_t *ptuning_parms,
Charles MacNeill 5:89031b2f5316 3089 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 3090 {
Charles MacNeill 5:89031b2f5316 3091
Charles MacNeill 5:89031b2f5316 3092 return VL53LX_preset_mode_histogram_ranging( phistpostprocess,
Charles MacNeill 5:89031b2f5316 3093 pstatic,
Charles MacNeill 5:89031b2f5316 3094 phistogram,
Charles MacNeill 5:89031b2f5316 3095 pgeneral,
Charles MacNeill 5:89031b2f5316 3096 ptiming,
Charles MacNeill 5:89031b2f5316 3097 pdynamic,
Charles MacNeill 5:89031b2f5316 3098 psystem,
Charles MacNeill 5:89031b2f5316 3099 ptuning_parms,
Charles MacNeill 5:89031b2f5316 3100 pzone_cfg);
Charles MacNeill 5:89031b2f5316 3101
Charles MacNeill 5:89031b2f5316 3102 }
Charles MacNeill 5:89031b2f5316 3103
Charles MacNeill 5:89031b2f5316 3104
Charles MacNeill 5:89031b2f5316 3105 VL53LX_Error VL53L3CX::VL53L3CX_preset_mode_histogram_long_range(
Charles MacNeill 5:89031b2f5316 3106 VL53LX_hist_post_process_config_t *phistpostprocess,
Charles MacNeill 5:89031b2f5316 3107 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3108 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3109 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 3110 VL53LX_timing_config_t *ptiming,
Charles MacNeill 5:89031b2f5316 3111 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 3112 VL53LX_system_control_t *psystem,
Charles MacNeill 5:89031b2f5316 3113 VL53LX_tuning_parm_storage_t *ptuning_parms,
Charles MacNeill 5:89031b2f5316 3114 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 3115 {
Charles MacNeill 5:89031b2f5316 3116
Charles MacNeill 5:89031b2f5316 3117 return VL53LX_preset_mode_histogram_long_range( phistpostprocess,
Charles MacNeill 5:89031b2f5316 3118 pstatic,
Charles MacNeill 5:89031b2f5316 3119 phistogram,
Charles MacNeill 5:89031b2f5316 3120 pgeneral,
Charles MacNeill 5:89031b2f5316 3121 ptiming,
Charles MacNeill 5:89031b2f5316 3122 pdynamic,
Charles MacNeill 5:89031b2f5316 3123 psystem,
Charles MacNeill 5:89031b2f5316 3124 ptuning_parms,
Charles MacNeill 5:89031b2f5316 3125 pzone_cfg);
Charles MacNeill 5:89031b2f5316 3126
Charles MacNeill 5:89031b2f5316 3127 }
Charles MacNeill 5:89031b2f5316 3128
Charles MacNeill 5:89031b2f5316 3129
Charles MacNeill 5:89031b2f5316 3130
Charles MacNeill 5:89031b2f5316 3131 VL53LX_Error VL53L3CX::VL53L3CX_preset_mode_histogram_medium_range(
Charles MacNeill 5:89031b2f5316 3132 VL53LX_hist_post_process_config_t *phistpostprocess,
Charles MacNeill 5:89031b2f5316 3133 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3134 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3135 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 3136 VL53LX_timing_config_t *ptiming,
Charles MacNeill 5:89031b2f5316 3137 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 3138 VL53LX_system_control_t *psystem,
Charles MacNeill 5:89031b2f5316 3139 VL53LX_tuning_parm_storage_t *ptuning_parms,
Charles MacNeill 5:89031b2f5316 3140 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 3141 {
Charles MacNeill 5:89031b2f5316 3142
Charles MacNeill 5:89031b2f5316 3143
Charles MacNeill 5:89031b2f5316 3144 return VL53LX_preset_mode_histogram_medium_range( phistpostprocess,
Charles MacNeill 5:89031b2f5316 3145 pstatic,
Charles MacNeill 5:89031b2f5316 3146 phistogram,
Charles MacNeill 5:89031b2f5316 3147 pgeneral,
Charles MacNeill 5:89031b2f5316 3148 ptiming,
Charles MacNeill 5:89031b2f5316 3149 pdynamic,
Charles MacNeill 5:89031b2f5316 3150 psystem,
Charles MacNeill 5:89031b2f5316 3151 ptuning_parms,
Charles MacNeill 5:89031b2f5316 3152 pzone_cfg);
Charles MacNeill 5:89031b2f5316 3153
Charles MacNeill 5:89031b2f5316 3154 }
Charles MacNeill 5:89031b2f5316 3155
Charles MacNeill 5:89031b2f5316 3156
Charles MacNeill 5:89031b2f5316 3157 VL53LX_Error VL53L3CX::VL53L3CX_preset_mode_histogram_short_range(
Charles MacNeill 5:89031b2f5316 3158 VL53LX_hist_post_process_config_t *phistpostprocess,
Charles MacNeill 5:89031b2f5316 3159 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3160 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3161 VL53LX_general_config_t *pgeneral,
Charles MacNeill 5:89031b2f5316 3162 VL53LX_timing_config_t *ptiming,
Charles MacNeill 5:89031b2f5316 3163 VL53LX_dynamic_config_t *pdynamic,
Charles MacNeill 5:89031b2f5316 3164 VL53LX_system_control_t *psystem,
Charles MacNeill 5:89031b2f5316 3165 VL53LX_tuning_parm_storage_t *ptuning_parms,
Charles MacNeill 5:89031b2f5316 3166 VL53LX_zone_config_t *pzone_cfg)
Charles MacNeill 5:89031b2f5316 3167 {
Charles MacNeill 5:89031b2f5316 3168
Charles MacNeill 5:89031b2f5316 3169
Charles MacNeill 5:89031b2f5316 3170 return VL53LX_preset_mode_histogram_short_range(phistpostprocess,
Charles MacNeill 5:89031b2f5316 3171 pstatic,
Charles MacNeill 5:89031b2f5316 3172 phistogram,
Charles MacNeill 5:89031b2f5316 3173 pgeneral,
Charles MacNeill 5:89031b2f5316 3174 ptiming,
Charles MacNeill 5:89031b2f5316 3175 pdynamic,
Charles MacNeill 5:89031b2f5316 3176 psystem,
Charles MacNeill 5:89031b2f5316 3177 ptuning_parms,
Charles MacNeill 5:89031b2f5316 3178 pzone_cfg);
Charles MacNeill 5:89031b2f5316 3179
Charles MacNeill 5:89031b2f5316 3180 }
Charles MacNeill 5:89031b2f5316 3181
Charles MacNeill 5:89031b2f5316 3182
Charles MacNeill 5:89031b2f5316 3183
Charles MacNeill 5:89031b2f5316 3184
Charles MacNeill 5:89031b2f5316 3185
Charles MacNeill 5:89031b2f5316 3186 void VL53L3CX::VL53L3CX_copy_hist_bins_to_static_cfg(
Charles MacNeill 5:89031b2f5316 3187 VL53LX_histogram_config_t *phistogram,
Charles MacNeill 5:89031b2f5316 3188 VL53LX_static_config_t *pstatic,
Charles MacNeill 5:89031b2f5316 3189 VL53LX_timing_config_t *ptiming)
Charles MacNeill 5:89031b2f5316 3190 {
Charles MacNeill 5:89031b2f5316 3191
Charles MacNeill 5:89031b2f5316 3192 return VL53LX_copy_hist_bins_to_static_cfg(phistogram,
Charles MacNeill 5:89031b2f5316 3193 pstatic,
Charles MacNeill 5:89031b2f5316 3194 ptiming);
Charles MacNeill 5:89031b2f5316 3195
Charles MacNeill 5:89031b2f5316 3196 }
Charles MacNeill 5:89031b2f5316 3197
Charles MacNeill 5:89031b2f5316 3198
Charles MacNeill 5:89031b2f5316 3199 /* vl53lx_silicon_core.c */
Charles MacNeill 5:89031b2f5316 3200
Charles MacNeill 5:89031b2f5316 3201 VL53LX_Error VL53L3CX::VL53L3CX_is_firmware_ready_silicon(
Charles MacNeill 5:89031b2f5316 3202 uint8_t *pready)
Charles MacNeill 5:89031b2f5316 3203 {
Charles MacNeill 5:89031b2f5316 3204
Charles MacNeill 5:89031b2f5316 3205 return VL53LX_is_firmware_ready_silicon( Dev, pready);
Charles MacNeill 5:89031b2f5316 3206
Charles MacNeill 5:89031b2f5316 3207 }
Charles MacNeill 5:89031b2f5316 3208
Charles MacNeill 5:89031b2f5316 3209 /* vl53lx_hist_core.c */
Charles MacNeill 5:89031b2f5316 3210
Charles MacNeill 5:89031b2f5316 3211
Charles MacNeill 5:89031b2f5316 3212 /* vl53lx_xtalk.c */
Charles MacNeill 5:89031b2f5316 3213
Charles MacNeill 5:89031b2f5316 3214
Charles MacNeill 5:89031b2f5316 3215 VL53LX_Error VL53L3CX::VL53L3CX_xtalk_calibration_process_data(
Charles MacNeill 5:89031b2f5316 3216 VL53LX_xtalk_range_results_t *pxtalk_results,
Charles MacNeill 5:89031b2f5316 3217 VL53LX_xtalk_histogram_data_t *pxtalk_shape,
Charles MacNeill 5:89031b2f5316 3218 VL53LX_xtalk_calibration_results_t *pxtalk_cal)
Charles MacNeill 5:89031b2f5316 3219 {
Charles MacNeill 5:89031b2f5316 3220
Charles MacNeill 5:89031b2f5316 3221 return VL53LX_xtalk_calibration_process_data( pxtalk_results,
Charles MacNeill 5:89031b2f5316 3222 pxtalk_shape,
Charles MacNeill 5:89031b2f5316 3223 pxtalk_cal);
Charles MacNeill 5:89031b2f5316 3224
Charles MacNeill 5:89031b2f5316 3225 }
Charles MacNeill 5:89031b2f5316 3226
Charles MacNeill 5:89031b2f5316 3227
Charles MacNeill 5:89031b2f5316 3228
Charles MacNeill 5:89031b2f5316 3229
Charles MacNeill 5:89031b2f5316 3230 /* vl53lx_sigma_estimate.c */
Charles MacNeill 5:89031b2f5316 3231
Charles MacNeill 5:89031b2f5316 3232
Charles MacNeill 5:89031b2f5316 3233
Charles MacNeill 5:89031b2f5316 3234 /* vl53lx_hist_algos_gen3.c */
Charles MacNeill 5:89031b2f5316 3235
Charles MacNeill 5:89031b2f5316 3236
Charles MacNeill 5:89031b2f5316 3237
Charles MacNeill 5:89031b2f5316 3238
Charles MacNeill 5:89031b2f5316 3239
Charles MacNeill 5:89031b2f5316 3240 /* vl53lx_hist_algos_gen4.c */
Charles MacNeill 5:89031b2f5316 3241
Charles MacNeill 5:89031b2f5316 3242
Charles MacNeill 5:89031b2f5316 3243
Charles MacNeill 5:89031b2f5316 3244
Charles MacNeill 5:89031b2f5316 3245
Charles MacNeill 5:89031b2f5316 3246 /* vl53lx_dmax.c */
Charles MacNeill 5:89031b2f5316 3247
Charles MacNeill 5:89031b2f5316 3248
Charles MacNeill 5:89031b2f5316 3249
Charles MacNeill 5:89031b2f5316 3250
Charles MacNeill 5:89031b2f5316 3251
Charles MacNeill 5:89031b2f5316 3252 /* vl53lx_api_calibration.c */
Charles MacNeill 5:89031b2f5316 3253
Charles MacNeill 5:89031b2f5316 3254
Charles MacNeill 5:89031b2f5316 3255 VL53LX_Error VL53L3CX::VL53L3CX_run_ref_spad_char(
Charles MacNeill 5:89031b2f5316 3256 VL53LX_Error *pcal_status)
Charles MacNeill 5:89031b2f5316 3257 {
Charles MacNeill 5:89031b2f5316 3258 return VL53LX_run_ref_spad_char(Dev, pcal_status);
Charles MacNeill 5:89031b2f5316 3259 }
Charles MacNeill 5:89031b2f5316 3260
Charles MacNeill 5:89031b2f5316 3261
Charles MacNeill 5:89031b2f5316 3262 VL53LX_Error VL53L3CX::VL53L3CX_get_and_avg_xtalk_samples(
Charles MacNeill 5:89031b2f5316 3263 uint8_t num_of_samples,
Charles MacNeill 5:89031b2f5316 3264 uint8_t measurement_mode,
Charles MacNeill 5:89031b2f5316 3265 int16_t xtalk_filter_thresh_max_mm,
Charles MacNeill 5:89031b2f5316 3266 int16_t xtalk_filter_thresh_min_mm,
Charles MacNeill 5:89031b2f5316 3267 uint16_t xtalk_max_valid_rate_kcps,
Charles MacNeill 5:89031b2f5316 3268 uint8_t xtalk_result_id,
Charles MacNeill 5:89031b2f5316 3269 uint8_t xtalk_histo_id,
Charles MacNeill 5:89031b2f5316 3270 VL53LX_xtalk_range_results_t *pXR,
Charles MacNeill 5:89031b2f5316 3271 VL53LX_histogram_bin_data_t *psum_histo,
Charles MacNeill 5:89031b2f5316 3272 VL53LX_histogram_bin_data_t *pavg_histo)
Charles MacNeill 5:89031b2f5316 3273 {
Charles MacNeill 5:89031b2f5316 3274
Charles MacNeill 5:89031b2f5316 3275 return VL53LX_get_and_avg_xtalk_samples( Dev,
Charles MacNeill 5:89031b2f5316 3276 num_of_samples,
Charles MacNeill 5:89031b2f5316 3277 measurement_mode,
Charles MacNeill 5:89031b2f5316 3278 xtalk_filter_thresh_max_mm,
Charles MacNeill 5:89031b2f5316 3279 xtalk_filter_thresh_min_mm,
Charles MacNeill 5:89031b2f5316 3280 xtalk_max_valid_rate_kcps,
Charles MacNeill 5:89031b2f5316 3281 xtalk_result_id,
Charles MacNeill 5:89031b2f5316 3282 xtalk_histo_id,
Charles MacNeill 5:89031b2f5316 3283 pXR,
Charles MacNeill 5:89031b2f5316 3284 psum_histo,
Charles MacNeill 5:89031b2f5316 3285 pavg_histo);
Charles MacNeill 5:89031b2f5316 3286
Charles MacNeill 5:89031b2f5316 3287 }
Charles MacNeill 5:89031b2f5316 3288
Charles MacNeill 5:89031b2f5316 3289
Charles MacNeill 5:89031b2f5316 3290
Charles MacNeill 5:89031b2f5316 3291 VL53LX_Error VL53L3CX::VL53L3CX_run_device_test(
Charles MacNeill 5:89031b2f5316 3292 VL53LX_DeviceTestMode device_test_mode)
Charles MacNeill 5:89031b2f5316 3293 {
Charles MacNeill 5:89031b2f5316 3294 return VL53LX_run_device_test( Dev, device_test_mode);
Charles MacNeill 5:89031b2f5316 3295 }
Charles MacNeill 5:89031b2f5316 3296
Charles MacNeill 5:89031b2f5316 3297 void VL53L3CX::VL53L3CX_hist_xtalk_extract_data_init(
Charles MacNeill 5:89031b2f5316 3298 VL53LX_hist_xtalk_extract_data_t *pxtalk_data)
Charles MacNeill 5:89031b2f5316 3299 {
Charles MacNeill 5:89031b2f5316 3300
Charles MacNeill 5:89031b2f5316 3301 VL53LX_hist_xtalk_extract_data_init(pxtalk_data);
Charles MacNeill 5:89031b2f5316 3302
Charles MacNeill 5:89031b2f5316 3303 }
Charles MacNeill 5:89031b2f5316 3304
Charles MacNeill 5:89031b2f5316 3305 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_update(
Charles MacNeill 5:89031b2f5316 3306 int16_t target_distance_mm,
Charles MacNeill 5:89031b2f5316 3307 uint16_t target_width_oversize,
Charles MacNeill 5:89031b2f5316 3308 VL53LX_histogram_bin_data_t *phist_bins,
Charles MacNeill 5:89031b2f5316 3309 VL53LX_hist_xtalk_extract_data_t *pxtalk_data)
Charles MacNeill 5:89031b2f5316 3310 {
Charles MacNeill 5:89031b2f5316 3311
Charles MacNeill 5:89031b2f5316 3312 return VL53LX_hist_xtalk_extract_update(target_distance_mm,
Charles MacNeill 5:89031b2f5316 3313 target_width_oversize,
Charles MacNeill 5:89031b2f5316 3314 phist_bins,
Charles MacNeill 5:89031b2f5316 3315 pxtalk_data);
Charles MacNeill 5:89031b2f5316 3316
Charles MacNeill 5:89031b2f5316 3317 }
Charles MacNeill 5:89031b2f5316 3318
Charles MacNeill 5:89031b2f5316 3319
Charles MacNeill 5:89031b2f5316 3320 VL53LX_Error VL53L3CX::VL53L3CX_hist_xtalk_extract_fini(
Charles MacNeill 5:89031b2f5316 3321 VL53LX_histogram_bin_data_t *phist_bins,
Charles MacNeill 5:89031b2f5316 3322 VL53LX_hist_xtalk_extract_data_t *pxtalk_data,
Charles MacNeill 5:89031b2f5316 3323 VL53LX_xtalk_calibration_results_t *pxtalk_cal,
Charles MacNeill 5:89031b2f5316 3324 VL53LX_xtalk_histogram_shape_t *pxtalk_shape)
Charles MacNeill 5:89031b2f5316 3325 {
Charles MacNeill 5:89031b2f5316 3326
Charles MacNeill 5:89031b2f5316 3327 return VL53LX_hist_xtalk_extract_fini( phist_bins,
Charles MacNeill 5:89031b2f5316 3328 pxtalk_data,
Charles MacNeill 5:89031b2f5316 3329 pxtalk_cal,
Charles MacNeill 5:89031b2f5316 3330 pxtalk_shape);
Charles MacNeill 5:89031b2f5316 3331
Charles MacNeill 5:89031b2f5316 3332 }
Charles MacNeill 5:89031b2f5316 3333
Charles MacNeill 5:89031b2f5316 3334
Charles MacNeill 5:89031b2f5316 3335 VL53LX_Error VL53L3CX::VL53L3CX_run_hist_xtalk_extraction(
Charles MacNeill 5:89031b2f5316 3336 int16_t cal_distance_mm,
Charles MacNeill 5:89031b2f5316 3337 VL53LX_Error *pcal_status)
Charles MacNeill 5:89031b2f5316 3338 {
Charles MacNeill 5:89031b2f5316 3339 return VL53LX_run_hist_xtalk_extraction(Dev, cal_distance_mm, pcal_status);
Charles MacNeill 5:89031b2f5316 3340 }
Charles MacNeill 5:89031b2f5316 3341
Charles MacNeill 5:89031b2f5316 3342 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3343
Charles MacNeill 5:89031b2f5316 3344 VL53LX_Error VL53L3CX::VL53L3CX_GetVersion(VL53LX_Version_t *pVersion)
Charles MacNeill 5:89031b2f5316 3345 {
Charles MacNeill 5:89031b2f5316 3346 return VL53LX_GetVersion( pVersion);
Charles MacNeill 5:89031b2f5316 3347 }
Charles MacNeill 5:89031b2f5316 3348
Charles MacNeill 5:89031b2f5316 3349 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3350 VL53LX_Error VL53L3CX::VL53L3CX_GetProductRevision(
Charles MacNeill 5:89031b2f5316 3351 uint8_t *pProductRevisionMajor, uint8_t *pProductRevisionMinor)
Charles MacNeill 5:89031b2f5316 3352 {
Charles MacNeill 5:89031b2f5316 3353 return VL53LX_GetProductRevision( Dev,
Charles MacNeill 5:89031b2f5316 3354 pProductRevisionMajor,
Charles MacNeill 5:89031b2f5316 3355 pProductRevisionMinor);
Charles MacNeill 5:89031b2f5316 3356 }
Charles MacNeill 5:89031b2f5316 3357
Charles MacNeill 5:89031b2f5316 3358 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3359 VL53LX_Error VL53L3CX::VL53L3CX_GetDeviceInfo(
Charles MacNeill 5:89031b2f5316 3360 VL53LX_DeviceInfo_t *pVL53LX_DeviceInfo)
Charles MacNeill 5:89031b2f5316 3361 {
Charles MacNeill 5:89031b2f5316 3362 return VL53LX_GetDeviceInfo( Dev,pVL53LX_DeviceInfo);
Charles MacNeill 5:89031b2f5316 3363 }
Charles MacNeill 5:89031b2f5316 3364
Charles MacNeill 5:89031b2f5316 3365 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3366 VL53LX_Error VL53L3CX::VL53L3CX_GetUID(uint64_t *pUid)
Charles MacNeill 5:89031b2f5316 3367 {
Charles MacNeill 5:89031b2f5316 3368 return VL53LX_GetUID( Dev, pUid);
Charles MacNeill 5:89031b2f5316 3369 }
Charles MacNeill 5:89031b2f5316 3370 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3371 VL53LX_Error VL53L3CX::VL53L3CX_SetDeviceAddress(uint8_t DeviceAddress)
Charles MacNeill 5:89031b2f5316 3372 {
Charles MacNeill 5:89031b2f5316 3373 return VL53LX_SetDeviceAddress(Dev, DeviceAddress);
Charles MacNeill 5:89031b2f5316 3374 }
Charles MacNeill 5:89031b2f5316 3375
Charles MacNeill 5:89031b2f5316 3376 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3377 VL53LX_Error VL53L3CX::VL53L3CX_DataInit()
Charles MacNeill 5:89031b2f5316 3378 {
Charles MacNeill 5:89031b2f5316 3379 return VL53LX_DataInit(Dev);
Charles MacNeill 5:89031b2f5316 3380 }
Charles MacNeill 5:89031b2f5316 3381
Charles MacNeill 5:89031b2f5316 3382 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3383 VL53LX_Error VL53L3CX::VL53L3CX_WaitDeviceBooted()
Charles MacNeill 5:89031b2f5316 3384 {
Charles MacNeill 5:89031b2f5316 3385 return VL53LX_WaitDeviceBooted(Dev);
Charles MacNeill 5:89031b2f5316 3386 }
Charles MacNeill 5:89031b2f5316 3387
Charles MacNeill 5:89031b2f5316 3388
Charles MacNeill 5:89031b2f5316 3389 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3390 VL53LX_Error VL53L3CX::VL53L3CX_SetDistanceMode(
Charles MacNeill 5:89031b2f5316 3391 VL53LX_DistanceModes DistanceMode)
Charles MacNeill 5:89031b2f5316 3392 {
Charles MacNeill 5:89031b2f5316 3393
Charles MacNeill 5:89031b2f5316 3394 return VL53LX_SetDistanceMode(Dev, DistanceMode);
Charles MacNeill 5:89031b2f5316 3395
Charles MacNeill 5:89031b2f5316 3396 }
Charles MacNeill 5:89031b2f5316 3397 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3398 VL53LX_Error VL53L3CX::VL53L3CX_GetDistanceMode(
Charles MacNeill 5:89031b2f5316 3399 VL53LX_DistanceModes *pDistanceMode)
Charles MacNeill 5:89031b2f5316 3400 {
Charles MacNeill 5:89031b2f5316 3401 return VL53LX_GetDistanceMode(Dev, pDistanceMode);;
Charles MacNeill 5:89031b2f5316 3402 }
Charles MacNeill 5:89031b2f5316 3403
Charles MacNeill 5:89031b2f5316 3404 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3405 VL53LX_Error VL53L3CX::VL53L3CX_SetMeasurementTimingBudgetMicroSeconds(
Charles MacNeill 5:89031b2f5316 3406 uint32_t MeasurementTimingBudgetMicroSeconds)
Charles MacNeill 5:89031b2f5316 3407 {
Charles MacNeill 5:89031b2f5316 3408
Charles MacNeill 5:89031b2f5316 3409 return VL53LX_SetMeasurementTimingBudgetMicroSeconds(Dev,
Charles MacNeill 5:89031b2f5316 3410 MeasurementTimingBudgetMicroSeconds);
Charles MacNeill 5:89031b2f5316 3411
Charles MacNeill 5:89031b2f5316 3412 }
Charles MacNeill 5:89031b2f5316 3413
Charles MacNeill 5:89031b2f5316 3414 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3415 VL53LX_Error VL53L3CX::VL53L3CX_GetMeasurementTimingBudgetMicroSeconds(
Charles MacNeill 5:89031b2f5316 3416 uint32_t *pMeasurementTimingBudgetMicroSeconds)
Charles MacNeill 5:89031b2f5316 3417 {
Charles MacNeill 5:89031b2f5316 3418 return VL53LX_GetMeasurementTimingBudgetMicroSeconds(Dev,pMeasurementTimingBudgetMicroSeconds);
Charles MacNeill 5:89031b2f5316 3419 }
Charles MacNeill 5:89031b2f5316 3420
Charles MacNeill 5:89031b2f5316 3421 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3422 VL53LX_Error VL53L3CX::VL53L3CX_StartMeasurement()
Charles MacNeill 5:89031b2f5316 3423 {
Charles MacNeill 5:89031b2f5316 3424 return VL53LX_StartMeasurement(Dev);
Charles MacNeill 5:89031b2f5316 3425 }
Charles MacNeill 5:89031b2f5316 3426
Charles MacNeill 5:89031b2f5316 3427 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3428 VL53LX_Error VL53L3CX::VL53L3CX_StopMeasurement()
Charles MacNeill 5:89031b2f5316 3429 {
Charles MacNeill 5:89031b2f5316 3430 return VL53LX_StopMeasurement(Dev);
Charles MacNeill 5:89031b2f5316 3431 }
Charles MacNeill 5:89031b2f5316 3432
Charles MacNeill 5:89031b2f5316 3433 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3434 VL53LX_Error VL53L3CX::VL53L3CX_ClearInterruptAndStartMeasurement()
Charles MacNeill 5:89031b2f5316 3435 {
Charles MacNeill 5:89031b2f5316 3436 return VL53LX_ClearInterruptAndStartMeasurement(Dev);
Charles MacNeill 5:89031b2f5316 3437 }
Charles MacNeill 5:89031b2f5316 3438
Charles MacNeill 5:89031b2f5316 3439 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3440 VL53LX_Error VL53L3CX::VL53L3CX_GetMeasurementDataReady(uint8_t *pMeasurementDataReady)
Charles MacNeill 5:89031b2f5316 3441 {
Charles MacNeill 5:89031b2f5316 3442 return VL53LX_GetMeasurementDataReady(Dev, pMeasurementDataReady);
Charles MacNeill 5:89031b2f5316 3443 }
Charles MacNeill 5:89031b2f5316 3444 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3445 VL53LX_Error VL53L3CX::VL53L3CX_WaitMeasurementDataReady()
Charles MacNeill 5:89031b2f5316 3446 {
Charles MacNeill 5:89031b2f5316 3447 return VL53LX_WaitMeasurementDataReady(Dev);
Charles MacNeill 5:89031b2f5316 3448 }
Charles MacNeill 5:89031b2f5316 3449
Charles MacNeill 5:89031b2f5316 3450
Charles MacNeill 5:89031b2f5316 3451
Charles MacNeill 5:89031b2f5316 3452 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3453 VL53LX_Error VL53L3CX::VL53L3CX_GetMultiRangingData(
Charles MacNeill 5:89031b2f5316 3454 VL53LX_MultiRangingData_t *pMultiRangingData)
Charles MacNeill 5:89031b2f5316 3455 {
Charles MacNeill 5:89031b2f5316 3456
Charles MacNeill 5:89031b2f5316 3457 return VL53LX_GetMultiRangingData(Dev, pMultiRangingData);
Charles MacNeill 5:89031b2f5316 3458
Charles MacNeill 5:89031b2f5316 3459 }
Charles MacNeill 5:89031b2f5316 3460 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3461 VL53LX_Error VL53L3CX::VL53L3CX_GetAdditionalData(VL53LX_AdditionalData_t *pAdditionalData)
Charles MacNeill 5:89031b2f5316 3462 {
Charles MacNeill 5:89031b2f5316 3463 return VL53LX_GetAdditionalData( Dev,pAdditionalData);
Charles MacNeill 5:89031b2f5316 3464 }
Charles MacNeill 5:89031b2f5316 3465
Charles MacNeill 5:89031b2f5316 3466 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3467 VL53LX_Error VL53L3CX::VL53L3CX_SetTuningParameter(
Charles MacNeill 5:89031b2f5316 3468 uint16_t TuningParameterId, int32_t TuningParameterValue)
Charles MacNeill 5:89031b2f5316 3469 {
Charles MacNeill 5:89031b2f5316 3470
Charles MacNeill 5:89031b2f5316 3471 return VL53LX_SetTuningParameter( Dev, TuningParameterId, TuningParameterValue);
Charles MacNeill 5:89031b2f5316 3472
Charles MacNeill 5:89031b2f5316 3473 }
Charles MacNeill 5:89031b2f5316 3474
Charles MacNeill 5:89031b2f5316 3475 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3476 VL53LX_Error VL53L3CX::VL53L3CX_GetTuningParameter(
Charles MacNeill 5:89031b2f5316 3477 uint16_t TuningParameterId, int32_t *pTuningParameterValue)
Charles MacNeill 5:89031b2f5316 3478 {
Charles MacNeill 5:89031b2f5316 3479
Charles MacNeill 5:89031b2f5316 3480 return VL53LX_GetTuningParameter( Dev, TuningParameterId, pTuningParameterValue);
Charles MacNeill 5:89031b2f5316 3481
Charles MacNeill 5:89031b2f5316 3482 }
Charles MacNeill 5:89031b2f5316 3483
Charles MacNeill 5:89031b2f5316 3484 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3485 VL53LX_Error VL53L3CX::VL53L3CX_PerformRefSpadManagement()
Charles MacNeill 5:89031b2f5316 3486 {
Charles MacNeill 5:89031b2f5316 3487
Charles MacNeill 5:89031b2f5316 3488 return VL53LX_PerformRefSpadManagement(Dev);
Charles MacNeill 5:89031b2f5316 3489
Charles MacNeill 5:89031b2f5316 3490 }
Charles MacNeill 5:89031b2f5316 3491
Charles MacNeill 5:89031b2f5316 3492 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3493 VL53LX_Error VL53L3CX::VL53L3CX_SmudgeCorrectionEnable(
Charles MacNeill 5:89031b2f5316 3494 VL53LX_SmudgeCorrectionModes Mode)
Charles MacNeill 5:89031b2f5316 3495 {
Charles MacNeill 5:89031b2f5316 3496
Charles MacNeill 5:89031b2f5316 3497 return VL53LX_SmudgeCorrectionEnable(Dev, Mode);
Charles MacNeill 5:89031b2f5316 3498
Charles MacNeill 5:89031b2f5316 3499 }
Charles MacNeill 5:89031b2f5316 3500
Charles MacNeill 5:89031b2f5316 3501 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3502 VL53LX_Error VL53L3CX::VL53L3CX_SetXTalkCompensationEnable(
Charles MacNeill 5:89031b2f5316 3503 uint8_t XTalkCompensationEnable)
Charles MacNeill 5:89031b2f5316 3504 {
Charles MacNeill 5:89031b2f5316 3505
Charles MacNeill 5:89031b2f5316 3506 return VL53LX_SetXTalkCompensationEnable( Dev, XTalkCompensationEnable );
Charles MacNeill 5:89031b2f5316 3507
Charles MacNeill 5:89031b2f5316 3508 }
Charles MacNeill 5:89031b2f5316 3509
Charles MacNeill 5:89031b2f5316 3510 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3511 VL53LX_Error VL53L3CX::VL53L3CX_GetXTalkCompensationEnable(
Charles MacNeill 5:89031b2f5316 3512 uint8_t *pXTalkCompensationEnable)
Charles MacNeill 5:89031b2f5316 3513 {
Charles MacNeill 5:89031b2f5316 3514
Charles MacNeill 5:89031b2f5316 3515 return VL53LX_GetXTalkCompensationEnable( Dev,pXTalkCompensationEnable);
Charles MacNeill 5:89031b2f5316 3516
Charles MacNeill 5:89031b2f5316 3517 }
Charles MacNeill 5:89031b2f5316 3518
Charles MacNeill 5:89031b2f5316 3519 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3520 VL53LX_Error VL53L3CX::VL53L3CX_PerformXTalkCalibration()
Charles MacNeill 5:89031b2f5316 3521 {
Charles MacNeill 5:89031b2f5316 3522
Charles MacNeill 5:89031b2f5316 3523 return VL53LX_PerformXTalkCalibration( Dev);
Charles MacNeill 5:89031b2f5316 3524
Charles MacNeill 5:89031b2f5316 3525 }
Charles MacNeill 5:89031b2f5316 3526
Charles MacNeill 5:89031b2f5316 3527 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3528 VL53LX_Error VL53L3CX::VL53L3CX_SetOffsetCorrectionMode(
Charles MacNeill 5:89031b2f5316 3529 VL53LX_OffsetCorrectionModes OffsetCorrectionMode)
Charles MacNeill 5:89031b2f5316 3530 {
Charles MacNeill 5:89031b2f5316 3531
Charles MacNeill 5:89031b2f5316 3532 return VL53LX_SetOffsetCorrectionMode(Dev, OffsetCorrectionMode);
Charles MacNeill 5:89031b2f5316 3533
Charles MacNeill 5:89031b2f5316 3534 }
Charles MacNeill 5:89031b2f5316 3535
Charles MacNeill 5:89031b2f5316 3536 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3537 VL53LX_Error VL53L3CX::VL53L3CX_PerformOffsetSimpleCalibration(
Charles MacNeill 5:89031b2f5316 3538 int32_t CalDistanceMilliMeter)
Charles MacNeill 5:89031b2f5316 3539 {
Charles MacNeill 5:89031b2f5316 3540
Charles MacNeill 5:89031b2f5316 3541 return VL53LX_PerformOffsetSimpleCalibration(Dev, CalDistanceMilliMeter);
Charles MacNeill 5:89031b2f5316 3542
Charles MacNeill 5:89031b2f5316 3543 }
Charles MacNeill 5:89031b2f5316 3544
Charles MacNeill 5:89031b2f5316 3545 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3546 VL53LX_Error VL53L3CX::VL53L3CX_PerformOffsetZeroDistanceCalibration()
Charles MacNeill 5:89031b2f5316 3547 {
Charles MacNeill 5:89031b2f5316 3548
Charles MacNeill 5:89031b2f5316 3549 return VL53LX_PerformOffsetZeroDistanceCalibration( Dev );
Charles MacNeill 5:89031b2f5316 3550
Charles MacNeill 5:89031b2f5316 3551 }
Charles MacNeill 5:89031b2f5316 3552
Charles MacNeill 5:89031b2f5316 3553 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3554 VL53LX_Error VL53L3CX::VL53L3CX_SetCalibrationData(
Charles MacNeill 5:89031b2f5316 3555 VL53LX_CalibrationData_t *pCalibrationData)
Charles MacNeill 5:89031b2f5316 3556 {
Charles MacNeill 5:89031b2f5316 3557
Charles MacNeill 5:89031b2f5316 3558 return VL53LX_SetCalibrationData(Dev, pCalibrationData);
Charles MacNeill 5:89031b2f5316 3559
Charles MacNeill 5:89031b2f5316 3560 }
Charles MacNeill 5:89031b2f5316 3561
Charles MacNeill 5:89031b2f5316 3562 /* vl53lx_api.c */
Charles MacNeill 5:89031b2f5316 3563 VL53LX_Error VL53L3CX::VL53L3CX_GetCalibrationData(
Charles MacNeill 5:89031b2f5316 3564 VL53LX_CalibrationData_t *pCalibrationData)
Charles MacNeill 5:89031b2f5316 3565 {
Charles MacNeill 5:89031b2f5316 3566
Charles MacNeill 5:89031b2f5316 3567 return VL53LX_GetCalibrationData(Dev,pCalibrationData);
Charles MacNeill 5:89031b2f5316 3568
Charles MacNeill 5:89031b2f5316 3569 }
Charles MacNeill 5:89031b2f5316 3570
Charles MacNeill 5:89031b2f5316 3571
Charles MacNeill 5:89031b2f5316 3572 VL53LX_Error VL53L3CX::VL53L3CX_PerformOffsetPerVcselCalibration(
Charles MacNeill 5:89031b2f5316 3573 int32_t CalDistanceMilliMeter)
Charles MacNeill 5:89031b2f5316 3574 {
Charles MacNeill 5:89031b2f5316 3575
Charles MacNeill 5:89031b2f5316 3576 return VL53LX_PerformOffsetPerVcselCalibration( Dev, CalDistanceMilliMeter);
Charles MacNeill 5:89031b2f5316 3577
Charles MacNeill 5:89031b2f5316 3578 }
Charles MacNeill 5:89031b2f5316 3579