paparazzi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[paparazzi-commits] [6111] Mag event handler for imu v1.2 using HMC5843


From: Allen Ibara
Subject: [paparazzi-commits] [6111] Mag event handler for imu v1.2 using HMC5843
Date: Fri, 08 Oct 2010 07:00:43 +0000

Revision: 6111
          http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=6111
Author:   aibara
Date:     2010-10-08 07:00:34 +0000 (Fri, 08 Oct 2010)
Log Message:
-----------
Mag event handler for imu v1.2 using HMC5843 

Modified Paths:
--------------
    paparazzi3/trunk/sw/airborne/firmwares/rotorcraft/imu/imu_b2.h

Modified: paparazzi3/trunk/sw/airborne/firmwares/rotorcraft/imu/imu_b2.h
===================================================================
--- paparazzi3/trunk/sw/airborne/firmwares/rotorcraft/imu/imu_b2.h      
2010-10-08 06:59:57 UTC (rev 6110)
+++ paparazzi3/trunk/sw/airborne/firmwares/rotorcraft/imu/imu_b2.h      
2010-10-08 07:00:34 UTC (rev 6111)
@@ -168,8 +168,16 @@
   }
 #elif defined IMU_B2_MAG_TYPE && IMU_B2_MAG_TYPE == IMU_B2_MAG_HMC5843
 #include "peripherals/booz_hmc5843.h"
+#define foo_handler() {}
 #define ImuMagEvent(_mag_handler) {                                    \
-         MagEvent(_mag_handler); \
+         MagEvent(foo_handler); \
+    if (hmc5843.status == HMC5843_DATA_AVAILABLE) {                    \
+      imu.mag_unscaled.x = hmc5843.data.value[IMU_MAG_X_CHAN];         \
+      imu.mag_unscaled.y = hmc5843.data.value[IMU_MAG_Y_CHAN];         \
+      imu.mag_unscaled.z = hmc5843.data.value[IMU_MAG_Z_CHAN];         \
+      _mag_handler();                                                  \
+      hmc5843.status == HMC5843_IDLE;          \
+    }                                                                  \
   }
 #else
 #define ImuMagEvent(_mag_handler) {}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]