![](/media/cache/group/Logo_RioBotz.png.50x50_q85.jpg)
Calculo para utilizar o 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); } }