Browse Source

distance sensors: remove bus_option array and add it to i2c.h header

sbg
DanielePettenuzzo 7 years ago committed by Beat Küng
parent
commit
6cb17839ee
  1. 22
      src/drivers/distance_sensor/mb12xx/mb12xx.cpp
  2. 22
      src/drivers/distance_sensor/sf1xx/sf1xx.cpp
  3. 22
      src/drivers/distance_sensor/srf02/srf02.cpp
  4. 22
      src/drivers/distance_sensor/teraranger/teraranger.cpp
  5. 22
      src/drivers/distance_sensor/vl53lxx/vl53lxx.cpp
  6. 18
      src/lib/drivers/device/i2c.h

22
src/drivers/distance_sensor/mb12xx/mb12xx.cpp

@ -683,23 +683,6 @@ namespace mb12xx
MB12XX *g_dev; MB12XX *g_dev;
int bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_BUS_OPTIONS (sizeof(bus_options)/sizeof(bus_options[0]))
int start(uint8_t rotation); int start(uint8_t rotation);
int start_bus(uint8_t rotation, int i2c_bus); int start_bus(uint8_t rotation, int i2c_bus);
int stop(); int stop();
@ -724,8 +707,8 @@ start(uint8_t rotation)
return PX4_ERROR; return PX4_ERROR;
} }
for (unsigned i = 0; i < NUM_BUS_OPTIONS; i++) { for (unsigned i = 0; i < NUM_I2C_BUS_OPTIONS; i++) {
if (start_bus(rotation, bus_options[i]) == PX4_OK) { if (start_bus(rotation, i2c_bus_options[i]) == PX4_OK) {
return PX4_OK; return PX4_OK;
} }
} }
@ -785,7 +768,6 @@ fail:
g_dev = nullptr; g_dev = nullptr;
} }
PX4_ERR("not started on bus %d", i2c_bus);
return PX4_ERROR; return PX4_ERROR;
} }

22
src/drivers/distance_sensor/sf1xx/sf1xx.cpp

@ -635,23 +635,6 @@ namespace sf1xx
SF1XX *g_dev; SF1XX *g_dev;
int bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_BUS_OPTIONS (sizeof(bus_options)/sizeof(bus_options[0]))
int start(uint8_t rotation); int start(uint8_t rotation);
int start_bus(uint8_t rotation, int i2c_bus); int start_bus(uint8_t rotation, int i2c_bus);
int stop(); int stop();
@ -676,8 +659,8 @@ start(uint8_t rotation)
return PX4_ERROR; return PX4_ERROR;
} }
for (unsigned i = 0; i < NUM_BUS_OPTIONS; i++) { for (unsigned i = 0; i < NUM_I2C_BUS_OPTIONS; i++) {
if (start_bus(rotation, bus_options[i]) == PX4_OK) { if (start_bus(rotation, i2c_bus_options[i]) == PX4_OK) {
return PX4_OK; return PX4_OK;
} }
} }
@ -734,7 +717,6 @@ fail:
g_dev = nullptr; g_dev = nullptr;
} }
PX4_ERR("not started on bus %d", i2c_bus);
return PX4_ERROR; return PX4_ERROR;
} }

22
src/drivers/distance_sensor/srf02/srf02.cpp

@ -686,23 +686,6 @@ namespace srf02
SRF02 *g_dev; SRF02 *g_dev;
int bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_BUS_OPTIONS (sizeof(bus_options)/sizeof(bus_options[0]))
int start(uint8_t rotation); int start(uint8_t rotation);
int start_bus(uint8_t rotation, int i2c_bus); int start_bus(uint8_t rotation, int i2c_bus);
int stop(); int stop();
@ -727,8 +710,8 @@ start(uint8_t rotation)
return PX4_ERROR; return PX4_ERROR;
} }
for (unsigned i = 0; i < NUM_BUS_OPTIONS; i++) { for (unsigned i = 0; i < NUM_I2C_BUS_OPTIONS; i++) {
if (start_bus(rotation, bus_options[i]) == PX4_OK) { if (start_bus(rotation, i2c_bus_options[i]) == PX4_OK) {
return PX4_OK; return PX4_OK;
} }
} }
@ -788,7 +771,6 @@ fail:
g_dev = nullptr; g_dev = nullptr;
} }
PX4_ERR("not started on bus %d", i2c_bus);
return PX4_ERROR; return PX4_ERROR;
} }

22
src/drivers/distance_sensor/teraranger/teraranger.cpp

@ -746,23 +746,6 @@ namespace teraranger
TERARANGER *g_dev; TERARANGER *g_dev;
int bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_BUS_OPTIONS (sizeof(bus_options)/sizeof(bus_options[0]))
int start(uint8_t rotation); int start(uint8_t rotation);
int start_bus(uint8_t rotation, int i2c_bus); int start_bus(uint8_t rotation, int i2c_bus);
int stop(); int stop();
@ -787,8 +770,8 @@ start(uint8_t rotation)
return PX4_ERROR; return PX4_ERROR;
} }
for (unsigned i = 0; i < NUM_BUS_OPTIONS; i++) { for (unsigned i = 0; i < NUM_I2C_BUS_OPTIONS; i++) {
if (start_bus(rotation, bus_options[i]) == PX4_OK) { if (start_bus(rotation, i2c_bus_options[i]) == PX4_OK) {
return PX4_OK; return PX4_OK;
} }
} }
@ -849,7 +832,6 @@ fail:
g_dev = nullptr; g_dev = nullptr;
} }
PX4_ERR("not started on bus %d", i2c_bus);
return PX4_ERROR; return PX4_ERROR;
} }

22
src/drivers/distance_sensor/vl53lxx/vl53lxx.cpp

@ -967,23 +967,6 @@ namespace vl53lxx
VL53LXX *g_dev; VL53LXX *g_dev;
int bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_BUS_OPTIONS (sizeof(bus_options)/sizeof(bus_options[0]))
int start(uint8_t rotation); int start(uint8_t rotation);
int start_bus(uint8_t rotation, int i2c_bus); int start_bus(uint8_t rotation, int i2c_bus);
int stop(); int stop();
@ -1007,8 +990,8 @@ start(uint8_t rotation)
return PX4_ERROR; return PX4_ERROR;
} }
for (unsigned i = 0; i < NUM_BUS_OPTIONS; i++) { for (unsigned i = 0; i < NUM_I2C_BUS_OPTIONS; i++) {
if (start_bus(rotation, bus_options[i]) == PX4_OK) { if (start_bus(rotation, i2c_bus_options[i]) == PX4_OK) {
return PX4_OK; return PX4_OK;
} }
} }
@ -1068,7 +1051,6 @@ fail:
g_dev = nullptr; g_dev = nullptr;
} }
PX4_ERR("not started on bus %d", i2c_bus);
return PX4_ERROR; return PX4_ERROR;
} }

18
src/lib/drivers/device/i2c.h

@ -37,3 +37,21 @@
#else #else
#include "posix/I2C.hpp" #include "posix/I2C.hpp"
#endif #endif
static const int i2c_bus_options[] = {
#ifdef PX4_I2C_BUS_EXPANSION
PX4_I2C_BUS_EXPANSION,
#endif
#ifdef PX4_I2C_BUS_EXPANSION1
PX4_I2C_BUS_EXPANSION1,
#endif
#ifdef PX4_I2C_BUS_EXPANSION2
PX4_I2C_BUS_EXPANSION2,
#endif
#ifdef PX4_I2C_BUS_ONBOARD
PX4_I2C_BUS_ONBOARD,
#endif
};
#define NUM_I2C_BUS_OPTIONS (sizeof(i2c_bus_options)/sizeof(i2c_bus_options[0]))
Loading…
Cancel
Save