X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fao_telemetry.c;h=603a67913b9bd829e76c47ea4990824a7ea8d0f5;hp=f45d2ab41b5cd592b72b95e15635c90773193dd0;hb=0154d13756bcb09f009981ee5e4bd27fd04b8788;hpb=edf6252450e06fd42fa6dde3acd127baa8fa6d36 diff --git a/src/ao_telemetry.c b/src/ao_telemetry.c index f45d2ab4..603a6791 100644 --- a/src/ao_telemetry.c +++ b/src/ao_telemetry.c @@ -18,15 +18,15 @@ #include "ao.h" #include "ao_product.h" -__xdata uint16_t ao_telemetry_interval; -__xdata int8_t ao_telemetry_config_max; -__xdata int8_t ao_telemetry_config_cur; +static __pdata uint16_t ao_telemetry_interval; +static __pdata int8_t ao_telemetry_config_max; +static __pdata int8_t ao_telemetry_config_cur; #if HAS_GPS -__xdata int8_t ao_telemetry_loc_cur; -__xdata int8_t ao_telemetry_sat_cur; +static __pdata int8_t ao_telemetry_loc_cur; +static __pdata int8_t ao_telemetry_sat_cur; #endif -__xdata uint8_t ao_rdf = 0; -__xdata uint16_t ao_rdf_time; +static __pdata uint8_t ao_rdf = 0; +static __pdata uint16_t ao_rdf_time; #define AO_RDF_INTERVAL_TICKS AO_SEC_TO_TICKS(5) #define AO_RDF_LENGTH_MS 500 @@ -77,9 +77,15 @@ ao_send_sensor(void) telemetry.sensor.height = ao_height; telemetry.sensor.ground_pres = ao_ground_pres; +#if HAS_ACCEL telemetry.sensor.ground_accel = ao_ground_accel; telemetry.sensor.accel_plus_g = ao_config.accel_plus_g; telemetry.sensor.accel_minus_g = ao_config.accel_minus_g; +#else + telemetry.sensor.ground_accel = 0; + telemetry.sensor.accel_plus_g = 0; + telemetry.sensor.accel_minus_g = 0; +#endif ao_radio_send(&telemetry, sizeof (telemetry)); } @@ -156,7 +162,7 @@ ao_telemetry(void) telemetry.generic.serial = ao_serial_number; for (;;) { while (ao_telemetry_interval == 0) - ao_sleep(&ao_telemetry_interval); + ao_sleep(&telemetry); time = ao_rdf_time = ao_time(); while (ao_telemetry_interval) { @@ -197,7 +203,7 @@ ao_telemetry_set_interval(uint16_t interval) if (ao_telemetry_config_max - 1 > ao_telemetry_sat_cur) ao_telemetry_sat_cur++; #endif - ao_wakeup(&ao_telemetry_interval); + ao_wakeup(&telemetry); } void