X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fao_flight_test.c;h=e0cfa47a2a8e3ecc11ffed2c87b36c39e7a4eae6;hp=f4731aa8718a9ef326134e379cda363f8fbfa08c;hb=ab31b1c737d8fd32af482e5b06699f1b832a25a1;hpb=17d2432a8b9c15963cd3b821f025ad33972ef477 diff --git a/src/ao_flight_test.c b/src/ao_flight_test.c index f4731aa8..e0cfa47a 100644 --- a/src/ao_flight_test.c +++ b/src/ao_flight_test.c @@ -22,6 +22,8 @@ #include #include +#define AO_HERTZ 100 + #define AO_ADC_RING 64 #define ao_adc_ring_next(n) (((n) + 1) & (AO_ADC_RING - 1)) #define ao_adc_ring_prev(n) (((n) - 1) & (AO_ADC_RING - 1)) @@ -48,10 +50,10 @@ struct ao_adc { enum ao_flight_state { ao_flight_startup = 0, ao_flight_idle = 1, - ao_flight_launchpad = 2, + ao_flight_pad = 2, ao_flight_boost = 3, - ao_flight_coast = 4, - ao_flight_apogee = 5, + ao_flight_fast = 4, + ao_flight_coast = 5, ao_flight_drogue = 6, ao_flight_main = 7, ao_flight_landed = 8, @@ -68,6 +70,8 @@ uint8_t ao_adc_head; #define ao_cmd_register(c) #define ao_usb_disable() #define ao_telemetry_set_interval(x) +#define ao_rdf_set(rdf) +#define ao_packet_slave_start() enum ao_igniter { ao_igniter_drogue = 0, @@ -105,8 +109,8 @@ void ao_sleep(void *wchan); const char const * const ao_state_names[] = { - "startup", "idle", "pad", "boost", "coast", - "apogee", "drogue", "main", "landed", "invalid" + "startup", "idle", "pad", "boost", "fast", + "coast", "drogue", "main", "landed", "invalid" }; struct ao_cmds { @@ -142,12 +146,15 @@ ao_altitude_to_pres(int16_t alt) __reentrant struct ao_config { uint16_t main_deploy; - int16_t accel_zero_g; + int16_t accel_plus_g; + int16_t accel_minus_g; }; #define ao_config_get() -struct ao_config ao_config = { 250, 16000 }; +struct ao_config ao_config = { 250, 15937, 16467 }; + +#define DATA_TO_XDATA(x) (x) #include "ao_flight.c" @@ -212,7 +219,7 @@ ao_sleep(void *wchan) type = words[0][0]; tick = strtoul(words[1], NULL, 16); a = strtoul(words[2], NULL, 16); - b = strtoul(words[2], NULL, 16); + b = strtoul(words[3], NULL, 16); } else if (nword >= 36 && strcmp(words[0], "CALL") == 0) { tick = atoi(words[10]); if (!ao_flight_started) {