From 9d48301402e7f361110c94e9de9fc801a15f64ab Mon Sep 17 00:00:00 2001 From: Zion Orent Date: Wed, 10 Dec 2014 16:30:46 -0500 Subject: [PATCH] lsm303: Modifying C++ example Signed-off-by: Zion Orent Signed-off-by: Jon Trulson Signed-off-by: Sarah Knepper --- examples/lsm303.cxx | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/examples/lsm303.cxx b/examples/lsm303.cxx index f54096d1..f75fd5b5 100644 --- a/examples/lsm303.cxx +++ b/examples/lsm303.cxx @@ -30,25 +30,33 @@ int main(int argc, char **argv) { + // Instantiate LSM303 compass on I2C upm::LSM303 *sensor = new upm::LSM303(0); + // Get the coordinate data sensor->getCoordinates(); - int16_t* coor = sensor->getRawCoorData(); // in XZY order + int16_t* coor = sensor->getRawCoorData(); // in XYZ order. + // The sensor returns XZY, but the driver compensates and makes it XYZ + + // Print out the X, Y, and Z coordinate data using two different methods std::cout << "coor: rX " << (int)coor[0] - << " - rY " << (int)coor[2] // note: index is 2 - << " - rZ " << (int)coor[1] // note: index is 1 + << " - rY " << (int)coor[1] + << " - rZ " << (int)coor[2] << std::endl; std::cout << "coor: gX " << sensor->getCoorX() << " - gY " << sensor->getCoorY() << " - gZ " << sensor->getCoorZ() << std::endl; + // Get and print out the heading std::cout << "heading: " << sensor->getHeading() << std::endl; + // Get the acceleration sensor->getAcceleration(); int16_t* accel = sensor->getRawAccelData(); + // Print out the X, Y, and Z acceleration data using two different methods std::cout << "acc: rX " << (int)accel[0] << " - rY " << (int)accel[1] << " - Z " << (int)accel[2]