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