Kenji Arai / VL53L0X_simple

Dependents:   Check_VL53L0X_simple_with_three_ToF Check_VL53L0X_simple_ToF_Sensor Check_VL53L0X_simple_with_three_ToF Check_VL53L0X_simple_ToF_Sensor ... more

Fork of VL53L0X by ST

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers VL53L0X_1st.h Source File

VL53L0X_1st.h

00001 
00002 /**
00003  * The device model ID
00004  */
00005 #define IDENTIFICATION_MODEL_ID                 0x000
00006 
00007 
00008 #define STATUS_OK              0x00
00009 #define STATUS_FAIL            0x01
00010 
00011 #if ORIGINAL
00012 #define VL53L0X_OsDelay(...) wait_ms(2) // 2 msec delay. can also use wait(float secs)/wait_us(int)
00013 #endif
00014 
00015 #ifdef USE_EMPTY_STRING
00016 #define  VL53L0X_STRING_DEVICE_INFO_NAME                             ""
00017 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS0                         ""
00018 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS1                         ""
00019 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS2                         ""
00020 #define  VL53L0X_STRING_DEVICE_INFO_NAME_ES1                         ""
00021 #define  VL53L0X_STRING_DEVICE_INFO_TYPE                             ""
00022 
00023 /* PAL ERROR strings */
00024 #define  VL53L0X_STRING_ERROR_NONE                                   ""
00025 #define  VL53L0X_STRING_ERROR_CALIBRATION_WARNING                    ""
00026 #define  VL53L0X_STRING_ERROR_MIN_CLIPPED                            ""
00027 #define  VL53L0X_STRING_ERROR_UNDEFINED                              ""
00028 #define  VL53L0X_STRING_ERROR_INVALID_PARAMS                         ""
00029 #define  VL53L0X_STRING_ERROR_NOT_SUPPORTED                          ""
00030 #define  VL53L0X_STRING_ERROR_RANGE_ERROR                            ""
00031 #define  VL53L0X_STRING_ERROR_TIME_OUT                               ""
00032 #define  VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED                     ""
00033 #define  VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL                       ""
00034 #define  VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING                      ""
00035 #define  VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED       ""
00036 #define  VL53L0X_STRING_ERROR_CONTROL_INTERFACE                      ""
00037 #define  VL53L0X_STRING_ERROR_INVALID_COMMAND                        ""
00038 #define  VL53L0X_STRING_ERROR_DIVISION_BY_ZERO                       ""
00039 #define  VL53L0X_STRING_ERROR_REF_SPAD_INIT                          ""
00040 #define  VL53L0X_STRING_ERROR_NOT_IMPLEMENTED                        ""
00041 
00042 #define  VL53L0X_STRING_UNKNOW_ERROR_CODE                            ""
00043 
00044 
00045 
00046 /* Range Status */
00047 #define  VL53L0X_STRING_RANGESTATUS_NONE                             ""
00048 #define  VL53L0X_STRING_RANGESTATUS_RANGEVALID                       ""
00049 #define  VL53L0X_STRING_RANGESTATUS_SIGMA                            ""
00050 #define  VL53L0X_STRING_RANGESTATUS_SIGNAL                           ""
00051 #define  VL53L0X_STRING_RANGESTATUS_MINRANGE                         ""
00052 #define  VL53L0X_STRING_RANGESTATUS_PHASE                            ""
00053 #define  VL53L0X_STRING_RANGESTATUS_HW                               ""
00054 
00055 
00056 /* Range Status */
00057 #define  VL53L0X_STRING_STATE_POWERDOWN                              ""
00058 #define  VL53L0X_STRING_STATE_WAIT_STATICINIT                        ""
00059 #define  VL53L0X_STRING_STATE_STANDBY                                ""
00060 #define  VL53L0X_STRING_STATE_IDLE                                   ""
00061 #define  VL53L0X_STRING_STATE_RUNNING                                ""
00062 #define  VL53L0X_STRING_STATE_UNKNOWN                                ""
00063 #define  VL53L0X_STRING_STATE_ERROR                                  ""
00064 
00065 
00066 /* Device Specific */
00067 #define  VL53L0X_STRING_DEVICEERROR_NONE                             ""
00068 #define  VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE       ""
00069 #define  VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE         ""
00070 #define  VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND                  ""
00071 #define  VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET                     ""
00072 #define  VL53L0X_STRING_DEVICEERROR_SNRCHECK                         ""
00073 #define  VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK                  ""
00074 #define  VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK              ""
00075 #define  VL53L0X_STRING_DEVICEERROR_TCC                              ""
00076 #define  VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY                 ""
00077 #define  VL53L0X_STRING_DEVICEERROR_MINCLIP                          ""
00078 #define  VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE                    ""
00079 #define  VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW                    ""
00080 #define  VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW                     ""
00081 #define  VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD             ""
00082 #define  VL53L0X_STRING_DEVICEERROR_UNKNOWN                          ""
00083 
00084 /* Check Enable */
00085 #define  VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE                ""
00086 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE          ""
00087 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP                  ""
00088 #define  VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD           ""
00089 
00090 /* Sequence Step */
00091 #define  VL53L0X_STRING_SEQUENCESTEP_TCC                             ""
00092 #define  VL53L0X_STRING_SEQUENCESTEP_DSS                             ""
00093 #define  VL53L0X_STRING_SEQUENCESTEP_MSRC                            ""
00094 #define  VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE                       ""
00095 #define  VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE                     ""
00096 #else
00097 #define  VL53L0X_STRING_DEVICE_INFO_NAME          "VL53L0X cut1.0"
00098 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS0      "VL53L0X TS0"
00099 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS1      "VL53L0X TS1"
00100 #define  VL53L0X_STRING_DEVICE_INFO_NAME_TS2      "VL53L0X TS2"
00101 #define  VL53L0X_STRING_DEVICE_INFO_NAME_ES1      "VL53L0X ES1 or later"
00102 #define  VL53L0X_STRING_DEVICE_INFO_TYPE          "VL53L0X"
00103 
00104 /* PAL ERROR strings */
00105 #define  VL53L0X_STRING_ERROR_NONE \
00106             "No Error"
00107 #define  VL53L0X_STRING_ERROR_CALIBRATION_WARNING \
00108             "Calibration Warning Error"
00109 #define  VL53L0X_STRING_ERROR_MIN_CLIPPED \
00110             "Min clipped error"
00111 #define  VL53L0X_STRING_ERROR_UNDEFINED \
00112             "Undefined error"
00113 #define  VL53L0X_STRING_ERROR_INVALID_PARAMS \
00114             "Invalid parameters error"
00115 #define  VL53L0X_STRING_ERROR_NOT_SUPPORTED \
00116             "Not supported error"
00117 #define  VL53L0X_STRING_ERROR_RANGE_ERROR \
00118             "Range error"
00119 #define  VL53L0X_STRING_ERROR_TIME_OUT \
00120             "Time out error"
00121 #define  VL53L0X_STRING_ERROR_MODE_NOT_SUPPORTED \
00122             "Mode not supported error"
00123 #define  VL53L0X_STRING_ERROR_BUFFER_TOO_SMALL \
00124             "Buffer too small"
00125 #define  VL53L0X_STRING_ERROR_GPIO_NOT_EXISTING \
00126             "GPIO not existing"
00127 #define  VL53L0X_STRING_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED \
00128             "GPIO funct not supported"
00129 #define  VL53L0X_STRING_ERROR_INTERRUPT_NOT_CLEARED \
00130             "Interrupt not Cleared"
00131 #define  VL53L0X_STRING_ERROR_CONTROL_INTERFACE \
00132             "Control Interface Error"
00133 #define  VL53L0X_STRING_ERROR_INVALID_COMMAND \
00134             "Invalid Command Error"
00135 #define  VL53L0X_STRING_ERROR_DIVISION_BY_ZERO \
00136             "Division by zero Error"
00137 #define  VL53L0X_STRING_ERROR_REF_SPAD_INIT \
00138             "Reference Spad Init Error"
00139 #define  VL53L0X_STRING_ERROR_NOT_IMPLEMENTED \
00140             "Not implemented error"
00141 
00142 #define  VL53L0X_STRING_UNKNOW_ERROR_CODE \
00143             "Unknown Error Code"
00144 
00145 
00146 
00147 /* Range Status */
00148 #define  VL53L0X_STRING_RANGESTATUS_NONE                 "No Update"
00149 #define  VL53L0X_STRING_RANGESTATUS_RANGEVALID           "Range Valid"
00150 #define  VL53L0X_STRING_RANGESTATUS_SIGMA                "Sigma Fail"
00151 #define  VL53L0X_STRING_RANGESTATUS_SIGNAL               "Signal Fail"
00152 #define  VL53L0X_STRING_RANGESTATUS_MINRANGE             "Min Range Fail"
00153 #define  VL53L0X_STRING_RANGESTATUS_PHASE                "Phase Fail"
00154 #define  VL53L0X_STRING_RANGESTATUS_HW                   "Hardware Fail"
00155 
00156 
00157 /* Range Status */
00158 #define  VL53L0X_STRING_STATE_POWERDOWN               "POWERDOWN State"
00159 #define  VL53L0X_STRING_STATE_WAIT_STATICINIT \
00160             "Wait for staticinit State"
00161 #define  VL53L0X_STRING_STATE_STANDBY                 "STANDBY State"
00162 #define  VL53L0X_STRING_STATE_IDLE                    "IDLE State"
00163 #define  VL53L0X_STRING_STATE_RUNNING                 "RUNNING State"
00164 #define  VL53L0X_STRING_STATE_UNKNOWN                 "UNKNOWN State"
00165 #define  VL53L0X_STRING_STATE_ERROR                   "ERROR State"
00166 
00167 
00168 /* Device Specific */
00169 #define  VL53L0X_STRING_DEVICEERROR_NONE              "No Update"
00170 #define  VL53L0X_STRING_DEVICEERROR_VCSELCONTINUITYTESTFAILURE \
00171             "VCSEL Continuity Test Failure"
00172 #define  VL53L0X_STRING_DEVICEERROR_VCSELWATCHDOGTESTFAILURE \
00173             "VCSEL Watchdog Test Failure"
00174 #define  VL53L0X_STRING_DEVICEERROR_NOVHVVALUEFOUND \
00175             "No VHV Value found"
00176 #define  VL53L0X_STRING_DEVICEERROR_MSRCNOTARGET \
00177             "MSRC No Target Error"
00178 #define  VL53L0X_STRING_DEVICEERROR_SNRCHECK \
00179             "SNR Check Exit"
00180 #define  VL53L0X_STRING_DEVICEERROR_RANGEPHASECHECK \
00181             "Range Phase Check Error"
00182 #define  VL53L0X_STRING_DEVICEERROR_SIGMATHRESHOLDCHECK \
00183             "Sigma Threshold Check Error"
00184 #define  VL53L0X_STRING_DEVICEERROR_TCC \
00185             "TCC Error"
00186 #define  VL53L0X_STRING_DEVICEERROR_PHASECONSISTENCY \
00187             "Phase Consistency Error"
00188 #define  VL53L0X_STRING_DEVICEERROR_MINCLIP \
00189             "Min Clip Error"
00190 #define  VL53L0X_STRING_DEVICEERROR_RANGECOMPLETE \
00191             "Range Complete"
00192 #define  VL53L0X_STRING_DEVICEERROR_ALGOUNDERFLOW \
00193             "Range Algo Underflow Error"
00194 #define  VL53L0X_STRING_DEVICEERROR_ALGOOVERFLOW \
00195             "Range Algo Overlow Error"
00196 #define  VL53L0X_STRING_DEVICEERROR_RANGEIGNORETHRESHOLD \
00197             "Range Ignore Threshold Error"
00198 #define  VL53L0X_STRING_DEVICEERROR_UNKNOWN \
00199             "Unknown error code"
00200 
00201 /* Check Enable */
00202 #define  VL53L0X_STRING_CHECKENABLE_SIGMA_FINAL_RANGE \
00203             "SIGMA FINAL RANGE"
00204 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE \
00205             "SIGNAL RATE FINAL RANGE"
00206 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_REF_CLIP \
00207             "SIGNAL REF CLIP"
00208 #define  VL53L0X_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD \
00209             "RANGE IGNORE THRESHOLD"
00210 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_MSRC \
00211             "SIGNAL RATE MSRC"
00212 #define  VL53L0X_STRING_CHECKENABLE_SIGNAL_RATE_PRE_RANGE \
00213             "SIGNAL RATE PRE RANGE"
00214 
00215 /* Sequence Step */
00216 #define  VL53L0X_STRING_SEQUENCESTEP_TCC                   "TCC"
00217 #define  VL53L0X_STRING_SEQUENCESTEP_DSS                   "DSS"
00218 #define  VL53L0X_STRING_SEQUENCESTEP_MSRC                  "MSRC"
00219 #define  VL53L0X_STRING_SEQUENCESTEP_PRE_RANGE             "PRE RANGE"
00220 #define  VL53L0X_STRING_SEQUENCESTEP_FINAL_RANGE           "FINAL RANGE"
00221 #endif /* USE_EMPTY_STRING */