Dependencies:   mbed LSM9DS1_Library_cal

Revision:
1:c769e2f74c1d
Parent:
0:e693d5bf0a25
--- a/main.cpp	Wed Feb 03 18:47:07 2016 +0000
+++ b/main.cpp	Mon Oct 04 17:23:46 2021 +0000
@@ -5,7 +5,8 @@
 // a declination to get a more accurate heading. Calculate
 // your's here:
 // http://www.ngdc.noaa.gov/geomag-web/#declination
-#define DECLINATION -4.94 // Declination (degrees) in Atlanta,GA.
+//#define DECLINATION -4.94 // Declination (degrees) in Atlanta,GA.
+#define DECLINATION -5.52348
 
 DigitalOut myled(LED1);
 Serial pc(USBTX, USBRX);
@@ -14,6 +15,7 @@
 // http://cache.freescale.com/files/sensors/doc/app_note/AN3461.pdf?fpsp=1
 // Heading calculations taken from this app note:
 // http://www51.honeywell.com/aero/common/documents/myaerospacecatalog-documents/Defense_Brochures-documents/Magnetic__Literature_Application_notes-documents/AN203_Compass_Heading_Using_Magnetometers.pdf
+/*
 void printAttitude(float ax, float ay, float az, float mx, float my, float mz)
 {
     float roll = atan2(ay, az);
@@ -37,43 +39,47 @@
     pitch *= 180.0 / PI;
     roll  *= 180.0 / PI;
 
-    pc.printf("Pitch: %f,    Roll: %f degress\n\r",pitch,roll);
-    pc.printf("Magnetic Heading: %f degress\n\r",heading);
+    //pc.printf("Pitch: %f,    Roll: %f degress\n\r",pitch,roll);
+    //pc.printf("Magnetic Heading: %f degress\n\r",heading);
 }
-
+*/
 
 
 
 int main()
 {
     //LSM9DS1 lol(p9, p10, 0x6B, 0x1E);
-    LSM9DS1 IMU(p28, p27, 0xD6, 0x3C);
+    LSM9DS1 IMU(p9, p10, 0xD6, 0x3C);
     IMU.begin();
     if (!IMU.begin()) {
-        pc.printf("Failed to communicate with LSM9DS1.\n");
+        //pc.printf("Failed to communicate with LSM9DS1.\n");
     }
     IMU.calibrate(1);
     IMU.calibrateMag(0);
     while(1) {
+        /*
         while(!IMU.tempAvailable());
         IMU.readTemp();
         while(!IMU.magAvailable(X_AXIS));
         IMU.readMag();
+        */
         while(!IMU.accelAvailable());
         IMU.readAccel();
         while(!IMU.gyroAvailable());
         IMU.readGyro();
-        pc.printf("\nIMU Temperature = %f C\n\r",25.0 + IMU.temperature/16.0);
-        pc.printf("        X axis    Y axis    Z axis\n\r");
-        pc.printf("gyro:  %9f %9f %9f in deg/s\n\r", IMU.calcGyro(IMU.gx), IMU.calcGyro(IMU.gy), IMU.calcGyro(IMU.gz));
-        pc.printf("accel: %9f %9f %9f in Gs\n\r", IMU.calcAccel(IMU.ax), IMU.calcAccel(IMU.ay), IMU.calcAccel(IMU.az));
-        pc.printf("mag:   %9f %9f %9f in gauss\n\r", IMU.calcMag(IMU.mx), IMU.calcMag(IMU.my), IMU.calcMag(IMU.mz));
-        printAttitude(IMU.calcAccel(IMU.ax), IMU.calcAccel(IMU.ay), IMU.calcAccel(IMU.az), IMU.calcMag(IMU.mx),
-                      IMU.calcMag(IMU.my), IMU.calcMag(IMU.mz));
+        //pc.printf("\nIMU Temperature = %f C\n\r",25.0 + IMU.temperature/16.0);
+        //pc.printf("        X axis    Y axis    Z axis\n\r");
+        pc.printf("gyro:  %9f %9f %9f\n\r", IMU.calcGyro(IMU.gx), IMU.calcGyro(IMU.gy), IMU.calcGyro(IMU.gz));
+        pc.printf("accel: %9f %9f %9f\n\r", IMU.calcAccel(IMU.ax), IMU.calcAccel(IMU.ay), IMU.calcAccel(IMU.az));
+       // pc.printf("mag:   %9f %9f %9f in gauss\n\r", IMU.calcMag(IMU.mx), IMU.calcMag(IMU.my), IMU.calcMag(IMU.mz));
+        //printAttitude(IMU.calcAccel(IMU.ax), IMU.calcAccel(IMU.ay), IMU.calcAccel(IMU.az), IMU.calcMag(IMU.mx),
+                      //IMU.calcMag(IMU.my), IMU.calcMag(IMU.mz));
+        /*
         myled = 1;
         wait(0.5);
         myled = 0;
         wait(0.5);
+        */
     }
 }