Initial release. Mbed library for VL53L1CB

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers vl53l1_api_strings.h Source File

vl53l1_api_strings.h

Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003  * Copyright (c) 2017, STMicroelectronics - All Rights Reserved
00004 
00005  This file is part of VL53L1 Core and is dual licensed,
00006  either 'STMicroelectronics
00007  Proprietary license'
00008  or 'BSD 3-clause "New" or "Revised" License' , at your option.
00009 
00010  ******************************************************************************
00011 
00012  'STMicroelectronics Proprietary license'
00013 
00014  *******************************************************************************
00015 
00016  License terms: STMicroelectronics Proprietary in accordance with licensing
00017  terms at www.st.com/sla0081
00018 
00019  STMicroelectronics confidential
00020  Reproduction and Communication of this document is strictly prohibited unless
00021  specifically authorized in writing by STMicroelectronics.
00022 
00023 
00024  *******************************************************************************
00025 
00026  Alternatively, VL53L1 Core may be distributed under the terms of
00027  'BSD 3-clause "New" or "Revised" License', in which case the following
00028  provisions apply instead of the ones mentioned above :
00029 
00030  *******************************************************************************
00031 
00032  License terms: BSD 3-clause "New" or "Revised" License.
00033 
00034  Redistribution and use in source and binary forms, with or without
00035  modification, are permitted provided that the following conditions are met:
00036 
00037  1. Redistributions of source code must retain the above copyright notice, this
00038  list of conditions and the following disclaimer.
00039 
00040  2. Redistributions in binary form must reproduce the above copyright notice,
00041  this list of conditions and the following disclaimer in the documentation
00042  and/or other materials provided with the distribution.
00043 
00044  3. Neither the name of the copyright holder nor the names of its contributors
00045  may be used to endorse or promote products derived from this software
00046  without specific prior written permission.
00047 
00048  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00049  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00050  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00051  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
00052  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00053  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00054  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00055  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00056  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00057  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00058 
00059 
00060  *******************************************************************************
00061  */
00062 
00063 /**
00064  * @file   vl53l1_api_strings.h
00065  * @brief  VL53L1 API function declarations for decoding error codes to a
00066  *         text strings
00067  */
00068 
00069 
00070 #ifndef VL53L1_API_STRINGS_H_
00071 #define VL53L1_API_STRINGS_H_
00072 
00073 #include "vl53l1_def.h"
00074 
00075 #ifdef __cplusplus
00076 extern "C" {
00077 #endif
00078 
00079 
00080 
00081 /**
00082  * @brief Generates a string for the input device range status code
00083  *
00084  * @param[in]   RangeStatus           : Device Range AStatus Code
00085  * @param[out]  pRangeStatusString    : pointer to character buffer
00086  *
00087  * @return  VL53L1_ERROR_NONE     Success
00088  * @return  "Other error code"    See ::VL53L1_Error
00089  */
00090 
00091 VL53L1_Error VL53L1_get_range_status_string(
00092     uint8_t   RangeStatus,
00093     char    *pRangeStatusString);
00094 
00095 /**
00096  * @brief Generates an error string for the input PAL error code
00097  *
00098  * @param[in]   PalErrorCode         : PAL Error Code
00099  * @param[out]  pPalErrorString      : pointer to character buffer
00100  *
00101  * @return  VL53L1_ERROR_NONE     Success
00102  * @return  "Other error code"    See ::VL53L1_Error
00103  */
00104 
00105 VL53L1_Error VL53L1_get_pal_error_string(
00106     VL53L1_Error   PalErrorCode,
00107     char         *pPalErrorString);
00108 
00109 /**
00110  * @brief Generates a string for the input PAL State code
00111  *
00112  * @param[in]   PalStateCode         : PAL State Code
00113  * @param[out]  pPalStateString      : pointer to character buffer
00114  *
00115  * @return  VL53L1_ERROR_NONE     Success
00116  * @return  "Other error code"    See ::VL53L1_Error
00117  */
00118 
00119 VL53L1_Error VL53L1_get_pal_state_string(
00120     VL53L1_State   PalStateCode,
00121     char         *pPalStateString);
00122 
00123 
00124 /**
00125  * @brief Generates a string for the sequence step Id
00126  *
00127  * @param[in]   SequenceStepId            : Sequence Step Id
00128  * @param[out]  pSequenceStepsString      : pointer to character buffer
00129  *
00130  * @return  VL53L1_ERROR_NONE     Success
00131  * @return  "Other error code"    See ::VL53L1_Error
00132  */
00133 VL53L1_Error VL53L1_get_sequence_steps_info(
00134         VL53L1_SequenceStepId SequenceStepId,
00135         char *pSequenceStepsString);
00136 
00137 /**
00138  * @brief Generates a string for the limit check Id
00139  *
00140  * @param[in]   LimitCheckId            : Limit check Id
00141  * @param[out]  pLimitCheckString       : pointer to character buffer
00142  *
00143  * @return  VL53L1_ERROR_NONE     Success
00144  * @return  "Other error code"    See ::VL53L1_Error
00145  */
00146 VL53L1_Error VL53L1_get_limit_check_info(uint16_t LimitCheckId,
00147     char *pLimitCheckString);
00148 
00149 #ifndef VL53L1_USE_EMPTY_STRING
00150     #define  VL53L1_STRING_DEVICE_INFO_NAME0          "VL53L1 cut1.0"
00151     #define  VL53L1_STRING_DEVICE_INFO_NAME1          "VL53L1 cut1.1"
00152     #define  VL53L1_STRING_DEVICE_INFO_TYPE          "VL53L1"
00153 
00154     /* Range Status */
00155     #define  VL53L1_STRING_RANGESTATUS_NONE                 "No Update"
00156     #define  VL53L1_STRING_RANGESTATUS_RANGEVALID           "Range Valid"
00157     #define  VL53L1_STRING_RANGESTATUS_SIGMA                "Sigma Fail"
00158     #define  VL53L1_STRING_RANGESTATUS_SIGNAL               "Signal Fail"
00159     #define  VL53L1_STRING_RANGESTATUS_MINRANGE             "Min Range Fail"
00160     #define  VL53L1_STRING_RANGESTATUS_PHASE                "Phase Fail"
00161     #define  VL53L1_STRING_RANGESTATUS_HW                   "Hardware Fail"
00162 
00163 
00164     /* Range Status */
00165     #define  VL53L1_STRING_STATE_POWERDOWN               "POWERDOWN State"
00166     #define  VL53L1_STRING_STATE_WAIT_STATICINIT \
00167             "Wait for staticinit State"
00168     #define  VL53L1_STRING_STATE_STANDBY                 "STANDBY State"
00169     #define  VL53L1_STRING_STATE_IDLE                    "IDLE State"
00170     #define  VL53L1_STRING_STATE_RUNNING                 "RUNNING State"
00171     #define  VL53L1_STRING_STATE_RESET                   "RESET State"
00172     #define  VL53L1_STRING_STATE_UNKNOWN                 "UNKNOWN State"
00173     #define  VL53L1_STRING_STATE_ERROR                   "ERROR State"
00174 
00175 
00176 
00177     /* Check Enable */
00178     #define  VL53L1_STRING_CHECKENABLE_SIGMA_FINAL_RANGE \
00179             "SIGMA FINAL RANGE"
00180     #define  VL53L1_STRING_CHECKENABLE_SIGNAL_RATE_FINAL_RANGE \
00181             "SIGNAL RATE FINAL RANGE"
00182     #define  VL53L1_STRING_CHECKENABLE_SIGNAL_MIN_CLIP \
00183             "SIGNAL MIN CLIP"
00184     #define  VL53L1_STRING_CHECKENABLE_RANGE_IGNORE_THRESHOLD \
00185             "RANGE IGNORE THRESHOLD"
00186     #define  VL53L1_STRING_CHECKENABLE_RANGE_PHASE_HIGH \
00187             "RANGE PHASE HIGH"
00188     #define  VL53L1_STRING_CHECKENABLE_RANGE_PHASE_LOW \
00189             "RANGE PHASE LOW"
00190     #define  VL53L1_STRING_CHECKENABLE_RANGE_PHASE_CONSISTENCY \
00191             "RANGE PHASE CONSISTENCY"
00192 
00193     /* Sequence Step */
00194     #define  VL53L1_STRING_SEQUENCESTEP_VHV         "VHV"
00195     #define  VL53L1_STRING_SEQUENCESTEP_PHASECAL    "PHASE CAL"
00196     #define  VL53L1_STRING_SEQUENCESTEP_REFPHASE    "REF PHASE"
00197     #define  VL53L1_STRING_SEQUENCESTEP_DSS1        "DSS1"
00198     #define  VL53L1_STRING_SEQUENCESTEP_DSS2        "DSS2"
00199     #define  VL53L1_STRING_SEQUENCESTEP_MM1         "MM1"
00200     #define  VL53L1_STRING_SEQUENCESTEP_MM2         "MM2"
00201     #define  VL53L1_STRING_SEQUENCESTEP_RANGE       "RANGE"
00202 #endif /* VL53L1_USE_EMPTY_STRING */
00203 
00204 
00205 #ifdef __cplusplus
00206 }
00207 #endif
00208 
00209 #endif
00210 
00211