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:
charlesmn
Date:
Wed Jul 14 14:36:12 2021 +0000
Revision:
6:df30b960b7dc
Parent:
5:89031b2f5316
Make compile

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"
charlesmn 6:df30b960b7dc 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