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 #ifndef _VL53LX_REGISTER_SETTINGS_H_
Charles MacNeill 5:89031b2f5316 16 #define _VL53LX_REGISTER_SETTINGS_H_
Charles MacNeill 5:89031b2f5316 17
Charles MacNeill 5:89031b2f5316 18
Charles MacNeill 5:89031b2f5316 19
Charles MacNeill 5:89031b2f5316 20
Charles MacNeill 5:89031b2f5316 21
Charles MacNeill 5:89031b2f5316 22
Charles MacNeill 5:89031b2f5316 23 #define VL53LX_DEVICESCHEDULERMODE_PSEUDO_SOLO 0x00
Charles MacNeill 5:89031b2f5316 24 #define VL53LX_DEVICESCHEDULERMODE_STREAMING 0x01
Charles MacNeill 5:89031b2f5316 25 #define VL53LX_DEVICESCHEDULERMODE_HISTOGRAM 0x02
Charles MacNeill 5:89031b2f5316 26
Charles MacNeill 5:89031b2f5316 27
Charles MacNeill 5:89031b2f5316 28
Charles MacNeill 5:89031b2f5316 29
Charles MacNeill 5:89031b2f5316 30
Charles MacNeill 5:89031b2f5316 31 #define VL53LX_DEVICEREADOUTMODE_SINGLE_SD (0x00 << 2)
Charles MacNeill 5:89031b2f5316 32 #define VL53LX_DEVICEREADOUTMODE_DUAL_SD (0x01 << 2)
Charles MacNeill 5:89031b2f5316 33 #define VL53LX_DEVICEREADOUTMODE_SPLIT_READOUT (0x02 << 2)
Charles MacNeill 5:89031b2f5316 34 #define VL53LX_DEVICEREADOUTMODE_SPLIT_MANUAL (0x03 << 2)
Charles MacNeill 5:89031b2f5316 35
Charles MacNeill 5:89031b2f5316 36
Charles MacNeill 5:89031b2f5316 37
Charles MacNeill 5:89031b2f5316 38
Charles MacNeill 5:89031b2f5316 39
Charles MacNeill 5:89031b2f5316 40
Charles MacNeill 5:89031b2f5316 41 #define VL53LX_DEVICEMEASUREMENTMODE_MODE_MASK 0xF0
Charles MacNeill 5:89031b2f5316 42 #define VL53LX_DEVICEMEASUREMENTMODE_STOP_MASK 0x0F
Charles MacNeill 5:89031b2f5316 43
Charles MacNeill 5:89031b2f5316 44 #define VL53LX_GROUPEDPARAMETERHOLD_ID_MASK 0x02
Charles MacNeill 5:89031b2f5316 45
Charles MacNeill 5:89031b2f5316 46
Charles MacNeill 5:89031b2f5316 47
Charles MacNeill 5:89031b2f5316 48 #define VL53LX_EWOK_I2C_DEV_ADDR_DEFAULT 0x29
Charles MacNeill 5:89031b2f5316 49
Charles MacNeill 5:89031b2f5316 50 #define VL53LX_OSC_FREQUENCY 0x00
Charles MacNeill 5:89031b2f5316 51 #define VL53LX_OSC_TRIM_DEFAULT 0x00
Charles MacNeill 5:89031b2f5316 52 #define VL53LX_OSC_FREQ_SET_DEFAULT 0x00
Charles MacNeill 5:89031b2f5316 53
Charles MacNeill 5:89031b2f5316 54 #define VL53LX_RANGE_HISTOGRAM_REF 0x08
Charles MacNeill 5:89031b2f5316 55 #define VL53LX_RANGE_HISTOGRAM_RET 0x10
Charles MacNeill 5:89031b2f5316 56 #define VL53LX_RANGE_HISTOGRAM_BOTH 0x18
Charles MacNeill 5:89031b2f5316 57 #define VL53LX_RANGE_HISTOGRAM_INIT 0x20
Charles MacNeill 5:89031b2f5316 58 #define VL53LX_RANGE_VHV_INIT 0x40
Charles MacNeill 5:89031b2f5316 59
Charles MacNeill 5:89031b2f5316 60
Charles MacNeill 5:89031b2f5316 61 #define VL53LX_RESULT_RANGE_STATUS 0x1F
Charles MacNeill 5:89031b2f5316 62
Charles MacNeill 5:89031b2f5316 63
Charles MacNeill 5:89031b2f5316 64 #define VL53LX_SYSTEM__SEED_CONFIG__MANUAL 0x00
Charles MacNeill 5:89031b2f5316 65 #define VL53LX_SYSTEM__SEED_CONFIG__STANDARD 0x01
Charles MacNeill 5:89031b2f5316 66 #define VL53LX_SYSTEM__SEED_CONFIG__EVEN_UPDATE_ONLY 0x02
Charles MacNeill 5:89031b2f5316 67
Charles MacNeill 5:89031b2f5316 68
Charles MacNeill 5:89031b2f5316 69 #define VL53LX_INTERRUPT_CONFIG_LEVEL_LOW 0x00
Charles MacNeill 5:89031b2f5316 70 #define VL53LX_INTERRUPT_CONFIG_LEVEL_HIGH 0x01
Charles MacNeill 5:89031b2f5316 71 #define VL53LX_INTERRUPT_CONFIG_OUT_OF_WINDOW 0x02
Charles MacNeill 5:89031b2f5316 72 #define VL53LX_INTERRUPT_CONFIG_IN_WINDOW 0x03
Charles MacNeill 5:89031b2f5316 73 #define VL53LX_INTERRUPT_CONFIG_NEW_SAMPLE_READY 0x20
Charles MacNeill 5:89031b2f5316 74
Charles MacNeill 5:89031b2f5316 75
Charles MacNeill 5:89031b2f5316 76 #define VL53LX_CLEAR_RANGE_INT 0x01
Charles MacNeill 5:89031b2f5316 77 #define VL53LX_CLEAR_ERROR_INT 0x02
Charles MacNeill 5:89031b2f5316 78
Charles MacNeill 5:89031b2f5316 79
Charles MacNeill 5:89031b2f5316 80 #define VL53LX_SEQUENCE_VHV_EN 0x01
Charles MacNeill 5:89031b2f5316 81 #define VL53LX_SEQUENCE_PHASECAL_EN 0x02
Charles MacNeill 5:89031b2f5316 82 #define VL53LX_SEQUENCE_REFERENCE_PHASE_EN 0x04
Charles MacNeill 5:89031b2f5316 83 #define VL53LX_SEQUENCE_DSS1_EN 0x08
Charles MacNeill 5:89031b2f5316 84 #define VL53LX_SEQUENCE_DSS2_EN 0x10
Charles MacNeill 5:89031b2f5316 85 #define VL53LX_SEQUENCE_MM1_EN 0x20
Charles MacNeill 5:89031b2f5316 86 #define VL53LX_SEQUENCE_MM2_EN 0x40
Charles MacNeill 5:89031b2f5316 87 #define VL53LX_SEQUENCE_RANGE_EN 0x80
Charles MacNeill 5:89031b2f5316 88
Charles MacNeill 5:89031b2f5316 89
Charles MacNeill 5:89031b2f5316 90 #define VL53LX_DSS_CONTROL__ROI_SUBTRACT 0x20
Charles MacNeill 5:89031b2f5316 91 #define VL53LX_DSS_CONTROL__ROI_INTERSECT 0x10
Charles MacNeill 5:89031b2f5316 92
Charles MacNeill 5:89031b2f5316 93 #define VL53LX_DSS_CONTROL__MODE_DISABLED 0x00
Charles MacNeill 5:89031b2f5316 94 #define VL53LX_DSS_CONTROL__MODE_TARGET_RATE 0x01
Charles MacNeill 5:89031b2f5316 95 #define VL53LX_DSS_CONTROL__MODE_EFFSPADS 0x02
Charles MacNeill 5:89031b2f5316 96 #define VL53LX_DSS_CONTROL__MODE_BLOCKSELECT 0x03
Charles MacNeill 5:89031b2f5316 97
Charles MacNeill 5:89031b2f5316 98
Charles MacNeill 5:89031b2f5316 99
Charles MacNeill 5:89031b2f5316 100 #define VL53LX_RANGING_CORE__SPAD_READOUT__STANDARD 0x45
Charles MacNeill 5:89031b2f5316 101 #define VL53LX_RANGING_CORE__SPAD_READOUT__RETURN_ARRAY_ONLY 0x05
Charles MacNeill 5:89031b2f5316 102 #define VL53LX_RANGING_CORE__SPAD_READOUT__REFERENCE_ARRAY_ONLY 0x55
Charles MacNeill 5:89031b2f5316 103 #define VL53LX_RANGING_CORE__SPAD_READOUT__RETURN_SPLIT_ARRAY 0x25
Charles MacNeill 5:89031b2f5316 104 #define VL53LX_RANGING_CORE__SPAD_READOUT__CALIB_PULSES 0xF5
Charles MacNeill 5:89031b2f5316 105
Charles MacNeill 5:89031b2f5316 106
Charles MacNeill 5:89031b2f5316 107 #define VL53LX_LASER_SAFETY__KEY_VALUE 0x6C
Charles MacNeill 5:89031b2f5316 108
Charles MacNeill 5:89031b2f5316 109
Charles MacNeill 5:89031b2f5316 110
Charles MacNeill 5:89031b2f5316 111 #define VL53LX_RANGE_STATUS__RANGE_STATUS_MASK 0x1F
Charles MacNeill 5:89031b2f5316 112 #define VL53LX_RANGE_STATUS__MAX_THRESHOLD_HIT_MASK 0x20
Charles MacNeill 5:89031b2f5316 113 #define VL53LX_RANGE_STATUS__MIN_THRESHOLD_HIT_MASK 0x40
Charles MacNeill 5:89031b2f5316 114 #define VL53LX_RANGE_STATUS__GPH_ID_RANGE_STATUS_MASK 0x80
Charles MacNeill 5:89031b2f5316 115
Charles MacNeill 5:89031b2f5316 116
Charles MacNeill 5:89031b2f5316 117
Charles MacNeill 5:89031b2f5316 118 #define VL53LX_INTERRUPT_STATUS__INT_STATUS_MASK 0x07
Charles MacNeill 5:89031b2f5316 119 #define VL53LX_INTERRUPT_STATUS__INT_ERROR_STATUS_MASK 0x18
Charles MacNeill 5:89031b2f5316 120 #define VL53LX_INTERRUPT_STATUS__GPH_ID_INT_STATUS_MASK 0x20
Charles MacNeill 5:89031b2f5316 121
Charles MacNeill 5:89031b2f5316 122
Charles MacNeill 5:89031b2f5316 123
Charles MacNeill 5:89031b2f5316 124
Charles MacNeill 5:89031b2f5316 125 #endif
Charles MacNeill 5:89031b2f5316 126
Charles MacNeill 5:89031b2f5316 127
Charles MacNeill 5:89031b2f5316 128
Charles MacNeill 5:89031b2f5316 129
Charles MacNeill 5:89031b2f5316 130