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 21 14:07:59 2021 +0000
Revision:
7:7f1bbf370283
Parent:
5:89031b2f5316
Moved vl53l3cx_class.cpp and .h to 53l3a2_RangingClass

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Charles MacNeill 5:89031b2f5316 1
Charles MacNeill 5:89031b2f5316 2 /* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */
Charles MacNeill 5:89031b2f5316 3 /******************************************************************************
Charles MacNeill 5:89031b2f5316 4 * Copyright (c) 2020, STMicroelectronics - All Rights Reserved
Charles MacNeill 5:89031b2f5316 5
Charles MacNeill 5:89031b2f5316 6 This file is part of VL53LX and is dual licensed,
Charles MacNeill 5:89031b2f5316 7 either GPL-2.0+
Charles MacNeill 5:89031b2f5316 8 or 'BSD 3-clause "New" or "Revised" License' , at your option.
Charles MacNeill 5:89031b2f5316 9 ******************************************************************************
Charles MacNeill 5:89031b2f5316 10 */
Charles MacNeill 5:89031b2f5316 11
Charles MacNeill 5:89031b2f5316 12
Charles MacNeill 5:89031b2f5316 13
Charles MacNeill 5:89031b2f5316 14
Charles MacNeill 5:89031b2f5316 15
Charles MacNeill 5:89031b2f5316 16
Charles MacNeill 5:89031b2f5316 17
Charles MacNeill 5:89031b2f5316 18 #ifndef _VL53LX_NVM_H_
Charles MacNeill 5:89031b2f5316 19 #define _VL53LX_NVM_H_
Charles MacNeill 5:89031b2f5316 20
Charles MacNeill 5:89031b2f5316 21 #include "vl53lx_platform.h"
Charles MacNeill 5:89031b2f5316 22 #include "vl53lx_ll_def.h"
Charles MacNeill 5:89031b2f5316 23
Charles MacNeill 5:89031b2f5316 24 #ifdef __cplusplus
Charles MacNeill 5:89031b2f5316 25 extern "C"
Charles MacNeill 5:89031b2f5316 26 {
Charles MacNeill 5:89031b2f5316 27 #endif
Charles MacNeill 5:89031b2f5316 28
Charles MacNeill 5:89031b2f5316 29 #define VL53LX_NVM_POWER_UP_DELAY_US 50
Charles MacNeill 5:89031b2f5316 30 #define VL53LX_NVM_READ_TRIGGER_DELAY_US 5
Charles MacNeill 5:89031b2f5316 31
Charles MacNeill 5:89031b2f5316 32
Charles MacNeill 5:89031b2f5316 33
Charles MacNeill 5:89031b2f5316 34 VL53LX_Error VL53LX_nvm_enable(
Charles MacNeill 5:89031b2f5316 35 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 36 uint16_t nvm_ctrl_pulse_width,
Charles MacNeill 5:89031b2f5316 37 int32_t nvm_power_up_delay_us);
Charles MacNeill 5:89031b2f5316 38
Charles MacNeill 5:89031b2f5316 39
Charles MacNeill 5:89031b2f5316 40
Charles MacNeill 5:89031b2f5316 41
Charles MacNeill 5:89031b2f5316 42 VL53LX_Error VL53LX_nvm_read(
Charles MacNeill 5:89031b2f5316 43 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 44 uint8_t start_address,
Charles MacNeill 5:89031b2f5316 45 uint8_t count,
Charles MacNeill 5:89031b2f5316 46 uint8_t *pdata);
Charles MacNeill 5:89031b2f5316 47
Charles MacNeill 5:89031b2f5316 48
Charles MacNeill 5:89031b2f5316 49
Charles MacNeill 5:89031b2f5316 50
Charles MacNeill 5:89031b2f5316 51 VL53LX_Error VL53LX_nvm_disable(
Charles MacNeill 5:89031b2f5316 52 VL53LX_DEV Dev);
Charles MacNeill 5:89031b2f5316 53
Charles MacNeill 5:89031b2f5316 54
Charles MacNeill 5:89031b2f5316 55
Charles MacNeill 5:89031b2f5316 56
Charles MacNeill 5:89031b2f5316 57 VL53LX_Error VL53LX_nvm_format_decode(
Charles MacNeill 5:89031b2f5316 58 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 59 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 60 VL53LX_decoded_nvm_data_t *pdata);
Charles MacNeill 5:89031b2f5316 61
Charles MacNeill 5:89031b2f5316 62
Charles MacNeill 5:89031b2f5316 63
Charles MacNeill 5:89031b2f5316 64
Charles MacNeill 5:89031b2f5316 65 VL53LX_Error VL53LX_nvm_decode_optical_centre(
Charles MacNeill 5:89031b2f5316 66 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 67 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 68 VL53LX_optical_centre_t *pdata);
Charles MacNeill 5:89031b2f5316 69
Charles MacNeill 5:89031b2f5316 70
Charles MacNeill 5:89031b2f5316 71
Charles MacNeill 5:89031b2f5316 72
Charles MacNeill 5:89031b2f5316 73 VL53LX_Error VL53LX_nvm_decode_cal_peak_rate_map(
Charles MacNeill 5:89031b2f5316 74 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 75 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 76 VL53LX_cal_peak_rate_map_t *pdata);
Charles MacNeill 5:89031b2f5316 77
Charles MacNeill 5:89031b2f5316 78
Charles MacNeill 5:89031b2f5316 79
Charles MacNeill 5:89031b2f5316 80
Charles MacNeill 5:89031b2f5316 81 VL53LX_Error VL53LX_nvm_decode_additional_offset_cal_data(
Charles MacNeill 5:89031b2f5316 82 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 83 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 84 VL53LX_additional_offset_cal_data_t *pdata);
Charles MacNeill 5:89031b2f5316 85
Charles MacNeill 5:89031b2f5316 86
Charles MacNeill 5:89031b2f5316 87
Charles MacNeill 5:89031b2f5316 88
Charles MacNeill 5:89031b2f5316 89 VL53LX_Error VL53LX_nvm_decode_fmt_range_results_data(
Charles MacNeill 5:89031b2f5316 90 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 91 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 92 VL53LX_decoded_nvm_fmt_range_data_t *pdata);
Charles MacNeill 5:89031b2f5316 93
Charles MacNeill 5:89031b2f5316 94
Charles MacNeill 5:89031b2f5316 95
Charles MacNeill 5:89031b2f5316 96
Charles MacNeill 5:89031b2f5316 97 VL53LX_Error VL53LX_nvm_decode_fmt_info(
Charles MacNeill 5:89031b2f5316 98 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 99 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 100 VL53LX_decoded_nvm_fmt_info_t *pdata);
Charles MacNeill 5:89031b2f5316 101
Charles MacNeill 5:89031b2f5316 102
Charles MacNeill 5:89031b2f5316 103
Charles MacNeill 5:89031b2f5316 104
Charles MacNeill 5:89031b2f5316 105 VL53LX_Error VL53LX_nvm_decode_ews_info(
Charles MacNeill 5:89031b2f5316 106 uint16_t buf_size,
Charles MacNeill 5:89031b2f5316 107 uint8_t *pbuffer,
Charles MacNeill 5:89031b2f5316 108 VL53LX_decoded_nvm_ews_info_t *pdata);
Charles MacNeill 5:89031b2f5316 109
Charles MacNeill 5:89031b2f5316 110
Charles MacNeill 5:89031b2f5316 111
Charles MacNeill 5:89031b2f5316 112
Charles MacNeill 5:89031b2f5316 113 void VL53LX_nvm_format_encode(
Charles MacNeill 5:89031b2f5316 114 VL53LX_decoded_nvm_data_t *pnvm_info,
Charles MacNeill 5:89031b2f5316 115 uint8_t *pnvm_data);
Charles MacNeill 5:89031b2f5316 116
Charles MacNeill 5:89031b2f5316 117
Charles MacNeill 5:89031b2f5316 118
Charles MacNeill 5:89031b2f5316 119
Charles MacNeill 5:89031b2f5316 120 VL53LX_Error VL53LX_read_nvm_raw_data(
Charles MacNeill 5:89031b2f5316 121 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 122 uint8_t start_address,
Charles MacNeill 5:89031b2f5316 123 uint8_t count,
Charles MacNeill 5:89031b2f5316 124 uint8_t *pnvm_raw_data);
Charles MacNeill 5:89031b2f5316 125
Charles MacNeill 5:89031b2f5316 126
Charles MacNeill 5:89031b2f5316 127
Charles MacNeill 5:89031b2f5316 128
Charles MacNeill 5:89031b2f5316 129 VL53LX_Error VL53LX_read_nvm(
Charles MacNeill 5:89031b2f5316 130 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 131 uint8_t nvm_format,
Charles MacNeill 5:89031b2f5316 132 VL53LX_decoded_nvm_data_t *pnvm_info);
Charles MacNeill 5:89031b2f5316 133
Charles MacNeill 5:89031b2f5316 134
Charles MacNeill 5:89031b2f5316 135
Charles MacNeill 5:89031b2f5316 136
Charles MacNeill 5:89031b2f5316 137 VL53LX_Error VL53LX_read_nvm_optical_centre(
Charles MacNeill 5:89031b2f5316 138 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 139 VL53LX_optical_centre_t *pcentre);
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_Error VL53LX_read_nvm_cal_peak_rate_map(
Charles MacNeill 5:89031b2f5316 145 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 146 VL53LX_cal_peak_rate_map_t *pcal_data);
Charles MacNeill 5:89031b2f5316 147
Charles MacNeill 5:89031b2f5316 148
Charles MacNeill 5:89031b2f5316 149
Charles MacNeill 5:89031b2f5316 150
Charles MacNeill 5:89031b2f5316 151 VL53LX_Error VL53LX_read_nvm_additional_offset_cal_data(
Charles MacNeill 5:89031b2f5316 152 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 153 VL53LX_additional_offset_cal_data_t *pcal_data);
Charles MacNeill 5:89031b2f5316 154
Charles MacNeill 5:89031b2f5316 155
Charles MacNeill 5:89031b2f5316 156
Charles MacNeill 5:89031b2f5316 157
Charles MacNeill 5:89031b2f5316 158 VL53LX_Error VL53LX_read_nvm_fmt_range_results_data(
Charles MacNeill 5:89031b2f5316 159 VL53LX_DEV Dev,
Charles MacNeill 5:89031b2f5316 160 uint16_t range_results_select,
Charles MacNeill 5:89031b2f5316 161 VL53LX_decoded_nvm_fmt_range_data_t *prange_data);
Charles MacNeill 5:89031b2f5316 162
Charles MacNeill 5:89031b2f5316 163
Charles MacNeill 5:89031b2f5316 164 #ifdef __cplusplus
Charles MacNeill 5:89031b2f5316 165 }
Charles MacNeill 5:89031b2f5316 166 #endif
Charles MacNeill 5:89031b2f5316 167
Charles MacNeill 5:89031b2f5316 168 #endif
Charles MacNeill 5:89031b2f5316 169