Calculo para utilizar o VL53L0X

Dependencies:   mbed VL53L0X

main.cpp

Committer:
Mateusjesus
Date:
2020-07-23
Revision:
0:6507f9fee04d

File content as of revision 0:6507f9fee04d:

//Multiple Sensors
#include"mbed.h"
#include"VL53L0X.h"
uint16_t measure[3] = {0,0,0};
int zero_um[3] = {0,0,0};
int total = 0;
#define DIS_MAX 500; //Distância maxima a partir da qual o inimigo será detectado
I2C i2c(p9, p10);
VL53L0X v1_sensors[3] = {(&i2c),(&i2c),(&i2c)};
BusOut v1_shutdown(p11,p12,p13);
Serial bt(p28, p27);
void Search()
{
    int i;
    uint8_t expander_shutdown_mask = 1;
    for(uint8_t i=0;i<3;i++)
    {
    v1_shutdown=expander_shutdown_mask;
    expander_shutdown_mask = (expander_shutdown_mask << 1) + 1;
    v1_sensors[i].init();
    v1_sensors[i].setDeviceAddress(0x40 + i);
    v1_sensors[i].setModeContinuous();
    v1_sensors[i].startContinuous();
    }
    for(uint8_t i = 0; i < 3 ; i++)
    {
            measure[i]=v1_sensors[i].getRangeMillimeters();
            wait(0.001);
    }
    for (i=0; i<3; i++) 
    {
    if (measure[i] < 100) {zero_um[i] = 1;}
    else {zero_um[i] = 0;}
    }
    total = zero_um[0]*100 + zero_um[1]*10 + zero_um[2];  
}
int main()
{
    while(1)
    {
        Search();
        bt.printf("%i \n\r",total);
    }
}