Projet_APP5
/
test_multiVL53L
test multi VL53
Revision 1:1e2328afe387, committed 2022-02-15
- Comitter:
- bouaziz
- Date:
- Tue Feb 15 14:52:28 2022 +0000
- Parent:
- 0:6507f9fee04d
- Commit message:
- test VL53 Polytech paris Saclay;
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Thu Jul 23 22:23:41 2020 +0000 +++ b/main.cpp Tue Feb 15 14:52:28 2022 +0000 @@ -6,39 +6,48 @@ 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); +VL53L0X v1_sensors[2] = {(&i2c),(&i2c)}; +DigitalOut v1_shutdown(p8); +//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(); + + v1_shutdown=0; + wait(0.1); + v1_sensors[0].init(); + v1_sensors[0].setDeviceAddress(0x50/2); + v1_sensors[0].setModeContinuous(); + v1_sensors[0].startContinuous(); + v1_shutdown=1; + wait(0.1); + v1_sensors[1].init(); + v1_sensors[1].setModeContinuous(); + v1_sensors[1].startContinuous(); + + short addr=0; + char tb[2],ack; + printf("START\r\n"); + while(addr<256) { + ack = i2c.write(addr,tb,1); + wait_us(100); + if(!ack) { + printf("xxxI2C found @ %x\r\n",addr); + } + addr+=2; } - 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]; + printf("stop\r\n"); } int main() { - while(1) - { - Search(); - bt.printf("%i \n\r",total); + Search(); + while(1){ + for(uint8_t i = 0; i < 2 ; i++){ + measure[i]=v1_sensors[i].getRangeMillimeters(); + wait(0.001); + printf("mesure[%u]= %u ",i&0xFF,measure[i]); + } + printf("\r\n"); + wait(0.25); + // bt.printf("%i \n\r",total); } } \ No newline at end of file