]> git.gag.com Git - fw/altos/blobdiff - src/core/ao_data.h
altos: Get HMC5883 driver limping along
[fw/altos] / src / core / ao_data.h
index d28730a8af6cc29232dad17496d8b85e0c06f14d..83f8df597e44cbd1ae9295a85d5e1b1e22276324 100644 (file)
@@ -31,9 +31,6 @@ struct ao_data {
 #if HAS_ADC
        struct ao_adc                   adc;
 #endif
-#if HAS_ACCEL_REF
-       uint16_t                        accel_ref;
-#endif
 #if HAS_MS5607
        struct ao_ms5607_sample         ms5607;
 #endif
@@ -82,7 +79,7 @@ typedef int16_t alt_t;
  * ao_data_accel_invert        - flip rocket ends for positive acceleration
  */
 
-#if HAS_MPU6000
+#if HAS_MPU6000 && !HAS_HIGHG_ACCEL
 
 typedef int16_t accel_t;
 
@@ -96,7 +93,7 @@ typedef int16_t accel_t;
 
 typedef int16_t accel_t;
 #define ao_data_accel(packet)                  ((packet)->adc.accel)
-#define ao_data_set_accel(packet, accel)       ((packet)->adc.accel = (accel))
+#define ao_data_set_accel(packet, a)           ((packet)->adc.accel = (a))
 #define ao_data_accel_invert(a)                        (0x7fff -(a))
 
 /*
@@ -181,9 +178,9 @@ typedef int16_t accel_t;
  */
 #if HAS_ACCEL_REF
 #define ao_data_accel_sample(packet) \
-       ((uint16_t) ((((uint32_t) (packet)->adc.accel << 16) / ((packet)->accel_ref << 1))) >> 1)
+       ((uint16_t) ((((uint32_t) (packet)->adc.accel << 16) / ((packet)->adc.accel_ref << 1))) >> 1)
 #else
-#define ao_data_accel(packet) ((packet)->adc.accel)
+#define ao_data_accel_sample(packet) ((packet)->adc.accel)
 #endif /* HAS_ACCEL_REF */
 
 #endif /* else some other pressure sensor */