library for m3Dpi robot, based on the Pololu 3pi and m3pi. m3Dpi has multiple distance sensors, gyroscope, compass and accelerometer sensor to be fully aware of its environment. With the addition of xbee or nrf24n01 module it has wireless communication capabilities.

Dependencies:   m3pi ADXL345_I2C HMC5583L ITG3200 PCA9547 TLC59116 VL6180x RGB-fun xbee

Dependents:   m3Dpi-helloworld

Committer:
sillevl
Date:
Thu Dec 03 07:58:50 2015 +0000
Revision:
0:9f02ae958e20
Child:
4:b2fe3a2545bf
initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sillevl 0:9f02ae958e20 1 #include "vl6180xManager.h"
sillevl 0:9f02ae958e20 2
sillevl 0:9f02ae958e20 3
sillevl 0:9f02ae958e20 4 VL6180xManager::VL6180xManager(PinName sda, PinName scl) : mux(sda, scl), i2c(sda, scl), sensor(sda, scl)
sillevl 0:9f02ae958e20 5 {
sillevl 0:9f02ae958e20 6 i2c.frequency(400000);
sillevl 0:9f02ae958e20 7 for(int i = 0; i < SENSOR_COUNT; i++) {
sillevl 0:9f02ae958e20 8 select(i);
sillevl 0:9f02ae958e20 9 sensor.initialize();
sillevl 0:9f02ae958e20 10 }
sillevl 0:9f02ae958e20 11 }
sillevl 0:9f02ae958e20 12
sillevl 0:9f02ae958e20 13 void VL6180xManager::select(int index)
sillevl 0:9f02ae958e20 14 {
sillevl 0:9f02ae958e20 15 mux.select(index);
sillevl 0:9f02ae958e20 16 }
sillevl 0:9f02ae958e20 17
sillevl 0:9f02ae958e20 18 int* VL6180xManager::getAllDistance(int data[])
sillevl 0:9f02ae958e20 19 {
sillevl 0:9f02ae958e20 20 for(int i = 0; i < 8; i++) {
sillevl 0:9f02ae958e20 21 mux.select(i);
sillevl 0:9f02ae958e20 22 data[i] = sensor.getDistance();
sillevl 0:9f02ae958e20 23 }
sillevl 0:9f02ae958e20 24 return data;
sillevl 0:9f02ae958e20 25 }
sillevl 0:9f02ae958e20 26
sillevl 0:9f02ae958e20 27