|
|
|
@ -32,6 +32,7 @@
@@ -32,6 +32,7 @@
|
|
|
|
|
****************************************************************************/ |
|
|
|
|
|
|
|
|
|
#include "SDP3X.hpp" |
|
|
|
|
#include <px4_getopt.h> |
|
|
|
|
|
|
|
|
|
// Driver 'main' command.
|
|
|
|
|
extern "C" __EXPORT int sdp3x_airspeed_main(int argc, char *argv[]); |
|
|
|
@ -164,36 +165,49 @@ sdp3x_airspeed_main(int argc, char *argv[])
@@ -164,36 +165,49 @@ sdp3x_airspeed_main(int argc, char *argv[])
|
|
|
|
|
{ |
|
|
|
|
uint8_t i2c_bus = PX4_I2C_BUS_DEFAULT; |
|
|
|
|
|
|
|
|
|
for (int i = 1; i < argc; i++) { |
|
|
|
|
if (strcmp(argv[i], "-b") == 0 || strcmp(argv[i], "--bus") == 0) { |
|
|
|
|
if (argc > i + 1) { |
|
|
|
|
i2c_bus = atoi(argv[i + 1]); |
|
|
|
|
int myoptind = 1; |
|
|
|
|
int ch; |
|
|
|
|
const char *myoptarg = nullptr; |
|
|
|
|
|
|
|
|
|
while ((ch = px4_getopt(argc, argv, "b:", &myoptind, &myoptarg)) != EOF) { |
|
|
|
|
switch (ch) { |
|
|
|
|
case 'b': |
|
|
|
|
i2c_bus = atoi(myoptarg); |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
default: |
|
|
|
|
sdp3x_airspeed_usage(); |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (myoptind >= argc) { |
|
|
|
|
sdp3x_airspeed_usage(); |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Start/load the driver. |
|
|
|
|
*/ |
|
|
|
|
if (!strcmp(argv[1], "start")) { |
|
|
|
|
if (!strcmp(argv[myoptind], "start")) { |
|
|
|
|
return sdp3x_airspeed::start(i2c_bus); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Stop the driver |
|
|
|
|
*/ |
|
|
|
|
if (!strcmp(argv[1], "stop")) { |
|
|
|
|
if (!strcmp(argv[myoptind], "stop")) { |
|
|
|
|
return sdp3x_airspeed::stop(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Reset the driver. |
|
|
|
|
*/ |
|
|
|
|
if (!strcmp(argv[1], "reset")) { |
|
|
|
|
if (!strcmp(argv[myoptind], "reset")) { |
|
|
|
|
return sdp3x_airspeed::reset(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
sdp3x_airspeed_usage(); |
|
|
|
|
|
|
|
|
|
return PX4_OK; |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|