#include #include "Adafruit_VL53L0X.h" Adafruit_VL53L0X SensorVL1 = Adafruit_VL53L0X(); Adafruit_VL53L0X SensorVL2 = Adafruit_VL53L0X(); #define TCAADDR 0x70 void tcaselect(uint8_t i) { if (i > 7) return; Wire.beginTransmission(TCAADDR); Wire.write(1 << i); Wire.endTransmission(); } void setup(void) { Serial.begin(9600); Serial.println("Adafruit VL53L0X test 0 y 1"); tcaselect(0); if (!SensorVL1.begin()) { Serial.println(F("Failed to boot 1 VL53L0X")); while(1); } tcaselect(1); if (!SensorVL2.begin()) { Serial.println(F("Failed to boot 2 VL53L0X")); while(1); } } void loop(void) { VL53L0X_RangingMeasurementData_t measure1; VL53L0X_RangingMeasurementData_t measure2; tcaselect(0); SensorVL1.rangingTest(&measure1, false); // pass in 'true' to get debug data printout! if (measure1.RangeStatus != 4) { // phase failures have incorrect data Serial.print("Distance 1 (mm): "); Serial.println(measure1.RangeMilliMeter); } else { Serial.println(" out of range "); } tcaselect(1); SensorVL2.rangingTest(&measure2, false); // pass in 'true' to get debug data printout! if (measure2.RangeStatus != 4) { // phase failures have incorrect data Serial.print("Distance 2 (mm): "); Serial.println(measure2.RangeMilliMeter); } else { Serial.println(" out of range "); } }