Paparazzi UAS  v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
vl53l1_platform.h File Reference

Those platform functions are platform dependent and have to be implemented by the user. More...

#include "vl53l1_types.h"
#include "mcu_periph/i2c.h"
+ Include dependency graph for vl53l1_platform.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  VL53L1_Dev_t
 
struct  VL53L1_Dev_t::NonBlocking
 

Macros

#define VL53L1_DEFAULT_ADDRESS   0x52
 

Typedefs

typedef VL53L1_Dev_tVL53L1_DEV
 

Enumerations

enum  VL53L1_ReadStatus {
  VL53L1_READ_IDLE, VL53L1_READ_DATA_READY, VL53L1_READ_STATUS, VL53L1_READ_DISTANCE,
  VL53L1_CLEAR_INT
}
 

Functions

int8_t VL53L1_WriteMulti (VL53L1_DEV dev, uint16_t index, uint8_t *pdata, uint32_t count)
 VL53L1_WriteMulti() definition. More...
 
int8_t VL53L1_ReadMulti (VL53L1_DEV dev, uint16_t index, uint8_t *pdata, uint32_t count)
 VL53L1_ReadMulti() definition. More...
 
int8_t VL53L1_WrByte (VL53L1_DEV dev, uint16_t index, uint8_t data)
 VL53L1_WrByte() definition. More...
 
int8_t VL53L1_WrWord (VL53L1_DEV dev, uint16_t index, uint16_t data)
 VL53L1_WrWord() definition. More...
 
int8_t VL53L1_WrDWord (VL53L1_DEV dev, uint16_t index, uint32_t data)
 VL53L1_WrDWord() definition. More...
 
int8_t VL53L1_RdByte (VL53L1_DEV dev, uint16_t index, uint8_t *pdata)
 VL53L1_RdByte() definition. More...
 
int8_t VL53L1_RdWord (VL53L1_DEV dev, uint16_t index, uint16_t *pdata)
 VL53L1_RdWord() definition. More...
 
int8_t VL53L1_RdDWord (VL53L1_DEV dev, uint16_t index, uint32_t *pdata)
 VL53L1_RdDWord() definition. More...
 

Detailed Description

Those platform functions are platform dependent and have to be implemented by the user.

Definition in file vl53l1_platform.h.


Data Structure Documentation

◆ VL53L1_Dev_t

struct VL53L1_Dev_t

Definition at line 50 of file vl53l1_platform.h.

+ Collaboration diagram for VL53L1_Dev_t:
Data Fields
struct i2c_periph * i2c_p
struct i2c_transaction i2c_trans
struct NonBlocking nonblocking
enum VL53L1_ReadStatus read_status

◆ VL53L1_Dev_t::NonBlocking

struct VL53L1_Dev_t::NonBlocking

Definition at line 53 of file vl53l1_platform.h.

Data Fields
uint8_t i2c_state
uint8_t IntPol
uint8_t state

Macro Definition Documentation

◆ VL53L1_DEFAULT_ADDRESS

#define VL53L1_DEFAULT_ADDRESS   0x52

Definition at line 40 of file vl53l1_platform.h.

Typedef Documentation

◆ VL53L1_DEV

Definition at line 63 of file vl53l1_platform.h.

Enumeration Type Documentation

◆ VL53L1_ReadStatus

Enumerator
VL53L1_READ_IDLE 
VL53L1_READ_DATA_READY 
VL53L1_READ_STATUS 
VL53L1_READ_DISTANCE 
VL53L1_CLEAR_INT 

Definition at line 42 of file vl53l1_platform.h.

Function Documentation

◆ VL53L1_RdByte()

int8_t VL53L1_RdByte ( VL53L1_DEV  dev,
uint16_t  index,
uint8_t pdata 
)

VL53L1_RdByte() definition.


To be implemented by the developer

Definition at line 89 of file vl53l1_platform.c.

References dev, and VL53L1_ReadMulti().

Referenced by VL53L1X_BootState(), VL53L1X_CheckForDataReady(), VL53L1X_GetDistanceMode(), VL53L1X_GetDistanceThresholdWindow(), VL53L1X_GetInterruptPolarity(), VL53L1X_GetRangeStatus(), VL53L1X_GetROI_XY(), VL53L1X_GetROICenter(), VL53L1X_SetDistanceThreshold(), VL53L1X_SetInterruptPolarity(), and VL53L1X_SetROI().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_RdDWord()

int8_t VL53L1_RdDWord ( VL53L1_DEV  dev,
uint16_t  index,
uint32_t pdata 
)

VL53L1_RdDWord() definition.


To be implemented by the developer

Definition at line 102 of file vl53l1_platform.c.

References dev, and VL53L1_ReadMulti().

Referenced by VL53L1X_GetInterMeasurementInMs(), and VL53L1X_GetXtalk().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_RdWord()

◆ VL53L1_ReadMulti()

int8_t VL53L1_ReadMulti ( VL53L1_DEV  dev,
uint16_t  index,
uint8_t pdata,
uint32_t  count 
)

VL53L1_ReadMulti() definition.


To be implemented by the developer

Definition at line 53 of file vl53l1_platform.c.

References dev, i2c_blocking_transceive(), and I2C_BUF_LEN.

Referenced by VL53L1_RdByte(), VL53L1_RdDWord(), VL53L1_RdWord(), and VL53L1X_GetResult().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_WrByte()

int8_t VL53L1_WrByte ( VL53L1_DEV  dev,
uint16_t  index,
uint8_t  data 
)

VL53L1_WrByte() definition.


To be implemented by the developer

Definition at line 64 of file vl53l1_platform.c.

References dev, and VL53L1_WriteMulti().

Referenced by VL53L1X_ClearInterrupt(), VL53L1X_SensorInit(), VL53L1X_SetDistanceMode(), VL53L1X_SetDistanceThreshold(), VL53L1X_SetI2CAddress(), VL53L1X_SetInterruptPolarity(), VL53L1X_SetROI(), VL53L1X_SetROICenter(), VL53L1X_StartRanging(), VL53L1X_StartTemperatureUpdate(), and VL53L1X_StopRanging().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_WrDWord()

int8_t VL53L1_WrDWord ( VL53L1_DEV  dev,
uint16_t  index,
uint32_t  data 
)

VL53L1_WrDWord() definition.


To be implemented by the developer

Definition at line 78 of file vl53l1_platform.c.

References dev, and VL53L1_WriteMulti().

Referenced by VL53L1X_SetInterMeasurementInMs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_WriteMulti()

int8_t VL53L1_WriteMulti ( VL53L1_DEV  dev,
uint16_t  index,
uint8_t pdata,
uint32_t  count 
)

VL53L1_WriteMulti() definition.


To be implemented by the developer

Definition at line 43 of file vl53l1_platform.c.

References dev, i2c_blocking_transmit(), and I2C_BUF_LEN.

Referenced by VL53L1_WrByte(), VL53L1_WrDWord(), and VL53L1_WrWord().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VL53L1_WrWord()

int8_t VL53L1_WrWord ( VL53L1_DEV  dev,
uint16_t  index,
uint16_t  data 
)

VL53L1_WrWord() definition.


To be implemented by the developer

Definition at line 69 of file vl53l1_platform.c.

References dev, and VL53L1_WriteMulti().

Referenced by VL53L1X_SetDistanceMode(), VL53L1X_SetDistanceThreshold(), VL53L1X_SetOffset(), VL53L1X_SetSigmaThreshold(), VL53L1X_SetSignalThreshold(), VL53L1X_SetTimingBudgetInMs(), and VL53L1X_SetXtalk().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: