X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fao_flight_test.c;h=a635803f41b226b2bc988a65b229aaab60520883;hp=0c2006d54907c6ac90f8c997a194ea4c1759cff4;hb=1e56ed44e562f808addfd76bfb352f981db94094;hpb=8cdf4fb051c22b35c251d90bc288551f7c2898bf diff --git a/src/ao_flight_test.c b/src/ao_flight_test.c index 0c2006d5..a635803f 100644 --- a/src/ao_flight_test.c +++ b/src/ao_flight_test.c @@ -72,6 +72,7 @@ uint8_t ao_adc_head; #define ao_telemetry_set_interval(x) #define ao_rdf_set(rdf) #define ao_packet_slave_start() +#define ao_packet_slave_stop() enum ao_igniter { ao_igniter_drogue = 0, @@ -118,30 +119,7 @@ struct ao_cmds { const char *help; }; - -static int16_t altitude_table[2048] = { -#include "altitude.h" -}; - -int16_t -ao_pres_to_altitude(int16_t pres) __reentrant -{ - pres = pres >> 4; - if (pres < 0) pres = 0; - if (pres > 2047) pres = 2047; - return altitude_table[pres]; -} - -int16_t -ao_altitude_to_pres(int16_t alt) __reentrant -{ - int16_t pres; - - for (pres = 0; pres < 2047; pres++) - if (altitude_table[pres] <= alt) - break; - return pres << 4; -} +#include "ao_convert.c" struct ao_config { uint16_t main_deploy; @@ -155,6 +133,15 @@ struct ao_config ao_config; #define DATA_TO_XDATA(x) (x) +#define HAS_FLIGHT 1 +#define HAS_ADC 1 +#define HAS_USB 1 +#define HAS_GPS 1 +#ifndef HAS_ACCEL +#define HAS_ACCEL 1 +#define HAS_ACCEL_REF 0 +#endif + #include "ao_flight.c" void @@ -282,12 +269,19 @@ ao_dump_state(void) { if (ao_flight_state == ao_flight_startup) return; +#if HAS_ACCEL printf ("\t\t\t\t\t%s accel %g vel %g alt %d main %d\n", ao_state_names[ao_flight_state], (ao_ground_accel - ao_flight_accel) / COUNTS_PER_G * GRAVITY, (double) ao_flight_vel / 100 / COUNTS_PER_G * GRAVITY, ao_pres_to_altitude(ao_flight_pres) - ao_pres_to_altitude(ao_ground_pres), ao_pres_to_altitude(ao_main_pres) - ao_pres_to_altitude(ao_ground_pres)); +#else + printf ("\t\t\t\t\t%s alt %d main %d\n", + ao_state_names[ao_flight_state], + ao_pres_to_altitude(ao_flight_pres) - ao_pres_to_altitude(ao_ground_pres), + ao_pres_to_altitude(ao_main_pres) - ao_pres_to_altitude(ao_ground_pres)); +#endif if (ao_flight_state == ao_flight_landed) exit(0); }