37 lines
743 B
C
37 lines
743 B
C
|
/*
|
||
|
|
||
|
The Adafruit VL53L0X library is included because it's an easy way to get
|
||
|
access to the VL53L0X API headers. I will not be using the Adafruit library
|
||
|
however because it lacks a way to set the timing budget, which I found to be
|
||
|
very much required for accurate results.
|
||
|
|
||
|
*/
|
||
|
|
||
|
#ifndef __vl53l0x
|
||
|
#define __vl53l0x
|
||
|
|
||
|
#include "Arduino.h"
|
||
|
#include "Wire.h"
|
||
|
#include "vl53l0x_api.h"
|
||
|
|
||
|
|
||
|
// TODO if begin fails, return a struct with the step and API status code
|
||
|
|
||
|
#define VL53L0X_BEGIN_SUCCESS 0
|
||
|
#define VL53L0X_BEGIN_SUCCESS 0
|
||
|
|
||
|
|
||
|
class VL53L0X
|
||
|
{
|
||
|
public:
|
||
|
bool init(uint8_t address);
|
||
|
|
||
|
// TODO set timing budget
|
||
|
|
||
|
bool getSingleRangingMeasurement(VL53L0X_RangingMeasurementData_t* data);
|
||
|
|
||
|
private:
|
||
|
VL53L0X_Dev_t device;
|
||
|
};
|
||
|
|
||
|
#endif
|