paparazzi-commits
[Top][All Lists]
Advanced

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

[paparazzi-commits] [6265] remove airspeed ets event makro and move tran


From: Felix Ruess
Subject: [paparazzi-commits] [6265] remove airspeed ets event makro and move transaction status check into event function
Date: Tue, 26 Oct 2010 11:21:13 +0000

Revision: 6265
          http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=6265
Author:   flixr
Date:     2010-10-26 11:21:13 +0000 (Tue, 26 Oct 2010)
Log Message:
-----------
remove airspeed ets event makro and move transaction status check into event 
function

Modified Paths:
--------------
    paparazzi3/trunk/conf/modules/airspeed_ets.xml
    paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.c
    paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.h

Modified: paparazzi3/trunk/conf/modules/airspeed_ets.xml
===================================================================
--- paparazzi3/trunk/conf/modules/airspeed_ets.xml      2010-10-26 11:21:07 UTC 
(rev 6264)
+++ paparazzi3/trunk/conf/modules/airspeed_ets.xml      2010-10-26 11:21:13 UTC 
(rev 6265)
@@ -13,7 +13,7 @@
   </header>
   <init fun="airspeed_ets_init()"/>
   <periodic fun="airspeed_ets_read_periodic()" freq="10."/>
-  <event fun="AirspeedEtsEvent()"/>
+  <event fun="airspeed_ets_event()"/>
 
   <makefile>
     <file name="airspeed_ets.c"/>

Modified: paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.c
===================================================================
--- paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.c 2010-10-26 
11:21:07 UTC (rev 6264)
+++ paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.c 2010-10-26 
11:21:13 UTC (rev 6265)
@@ -100,60 +100,63 @@
 #endif //SITL
 }
 
-void airspeed_ets_read_event( void ) {
-  int n;
-  float airspeed_tmp = 0.0;
+void airspeed_ets_event( void ) {
 
-  // Get raw airspeed from buffer
-  airspeed_ets_raw = ((uint16_t)(airspeed_ets_i2c_trans.buf[1]) << 8) | 
(uint16_t)(airspeed_ets_i2c_trans.buf[0]);
-  // Check if this is valid airspeed
-  if (airspeed_ets_raw == 0)
-    airspeed_ets_valid = FALSE;
-  else
-    airspeed_ets_valid = TRUE;
+  if (airspeed_ets_i2c_trans.status == I2CTransSuccess) {
+    int n;
+    float airspeed_tmp = 0.0;
 
-  // Continue only if a new airspeed value was received
-  if (airspeed_ets_valid) {
-    // Calculate offset average if not done already
-    if (!airspeed_ets_offset_init) {
-      --airspeed_ets_cnt;
-      // Check if averaging completed
-      if (airspeed_ets_cnt == 0) {
-        // Calculate average
-        airspeed_ets_offset = (uint16_t)(airspeed_ets_offset_tmp / 
AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG);
-        // Limit offset
-        if (airspeed_ets_offset < AIRSPEED_ETS_OFFSET_MIN)
-          airspeed_ets_offset = AIRSPEED_ETS_OFFSET_MIN;
-        if (airspeed_ets_offset > AIRSPEED_ETS_OFFSET_MAX)
-          airspeed_ets_offset = AIRSPEED_ETS_OFFSET_MAX;
-        airspeed_ets_offset_init = TRUE;
+    // Get raw airspeed from buffer
+    airspeed_ets_raw = ((uint16_t)(airspeed_ets_i2c_trans.buf[1]) << 8) | 
(uint16_t)(airspeed_ets_i2c_trans.buf[0]);
+    // Check if this is valid airspeed
+    if (airspeed_ets_raw == 0)
+      airspeed_ets_valid = FALSE;
+    else
+      airspeed_ets_valid = TRUE;
+
+    // Continue only if a new airspeed value was received
+    if (airspeed_ets_valid) {
+      // Calculate offset average if not done already
+      if (!airspeed_ets_offset_init) {
+        --airspeed_ets_cnt;
+        // Check if averaging completed
+        if (airspeed_ets_cnt == 0) {
+          // Calculate average
+          airspeed_ets_offset = (uint16_t)(airspeed_ets_offset_tmp / 
AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG);
+          // Limit offset
+          if (airspeed_ets_offset < AIRSPEED_ETS_OFFSET_MIN)
+            airspeed_ets_offset = AIRSPEED_ETS_OFFSET_MIN;
+          if (airspeed_ets_offset > AIRSPEED_ETS_OFFSET_MAX)
+            airspeed_ets_offset = AIRSPEED_ETS_OFFSET_MAX;
+          airspeed_ets_offset_init = TRUE;
+        }
+        // Check if averaging needs to continue
+        else if (airspeed_ets_cnt <= AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG)
+          airspeed_ets_offset_tmp += airspeed_ets_raw;
       }
-      // Check if averaging needs to continue
-      else if (airspeed_ets_cnt <= AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG)
-        airspeed_ets_offset_tmp += airspeed_ets_raw;
+      // Convert raw to m/s
+      if (airspeed_ets_offset_init && airspeed_ets_raw > airspeed_ets_offset)
+        airspeed_tmp = AIRSPEED_ETS_SCALE * sqrtf( 
(float)(airspeed_ets_raw-airspeed_ets_offset) ) - AIRSPEED_ETS_OFFSET;
+      else
+        airspeed_tmp = 0.0;
+      // Airspeed should always be positive
+      if (airspeed_tmp < 0.0)
+        airspeed_tmp = 0.0;
+      // Moving average
+      airspeed_ets_buffer[airspeed_ets_buffer_idx++] = airspeed_tmp;
+      if (airspeed_ets_buffer_idx >= AIRSPEED_ETS_NBSAMPLES_AVRG)
+        airspeed_ets_buffer_idx = 0;
+      airspeed_ets = 0.0;
+      for (n = 0; n < AIRSPEED_ETS_NBSAMPLES_AVRG; ++n)
+        airspeed_ets += airspeed_ets_buffer[n];
+      airspeed_ets = airspeed_ets / (float)AIRSPEED_ETS_NBSAMPLES_AVRG;
+      EstimatorSetAirspeed(airspeed_ets);
+    } else {
+      airspeed_ets = 0.0;
     }
-    // Convert raw to m/s
-    if (airspeed_ets_offset_init && airspeed_ets_raw > airspeed_ets_offset)
-      airspeed_tmp = AIRSPEED_ETS_SCALE * sqrtf( 
(float)(airspeed_ets_raw-airspeed_ets_offset) ) - AIRSPEED_ETS_OFFSET;
-    else
-      airspeed_tmp = 0.0;
-    // Airspeed should always be positive
-    if (airspeed_tmp < 0.0)
-      airspeed_tmp = 0.0;
-    // Moving average
-    airspeed_ets_buffer[airspeed_ets_buffer_idx++] = airspeed_tmp;
-    if (airspeed_ets_buffer_idx >= AIRSPEED_ETS_NBSAMPLES_AVRG)
-      airspeed_ets_buffer_idx = 0;
-    airspeed_ets = 0.0;
-    for (n = 0; n < AIRSPEED_ETS_NBSAMPLES_AVRG; ++n)
-      airspeed_ets += airspeed_ets_buffer[n];
-    airspeed_ets = airspeed_ets / (float)AIRSPEED_ETS_NBSAMPLES_AVRG;
-    EstimatorSetAirspeed(airspeed_ets);
-  } else {
-    airspeed_ets = 0.0;
-  }
 
-  // Transaction has been read
-  airspeed_ets_i2c_trans.status = I2CTransDone;
+    // Transaction has been read
+    airspeed_ets_i2c_trans.status = I2CTransDone;
 
+  }
 }

Modified: paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.h
===================================================================
--- paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.h 2010-10-26 
11:21:07 UTC (rev 6264)
+++ paparazzi3/trunk/sw/airborne/modules/sensors/airspeed_ets.h 2010-10-26 
11:21:13 UTC (rev 6265)
@@ -50,8 +50,6 @@
 
 extern void airspeed_ets_init( void );
 extern void airspeed_ets_read_periodic( void );
-extern void airspeed_ets_read_event( void );
+extern void airspeed_ets_event( void );
 
-#define AirspeedEtsEvent() { if (airspeed_ets_i2c_trans.status == 
I2CTransSuccess) airspeed_ets_read_event(); }
-
 #endif // AIRSPEED_ETS_H




reply via email to

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