X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fao_ignite.c;h=4093b6a7480c428754bd3de99a32c3ccacac5914;hp=be2915234b07d7a2c477e78c445baeb0e9f03866;hb=9856b7c4397afcecc8f541af9a83824e817b3612;hpb=210dbaa23cdacf3a6f2d6e23493e96ee2ac9bca7 diff --git a/src/ao_ignite.c b/src/ao_ignite.c index be291523..4093b6a7 100644 --- a/src/ao_ignite.c +++ b/src/ao_ignite.c @@ -26,7 +26,7 @@ /* test these values with real igniters */ #define AO_IGNITER_OPEN 1000 #define AO_IGNITER_CLOSED 7000 -#define AO_IGNITER_FIRE_TIME AO_MS_TO_TICKS(500) +#define AO_IGNITER_FIRE_TIME AO_MS_TO_TICKS(50) #define AO_IGNITER_CHARGE_TIME AO_MS_TO_TICKS(2000) struct ao_ignition { @@ -103,10 +103,14 @@ ao_igniter(void) __xdata enum ao_ignter igniter; __xdata enum ao_igniter_status status; + ao_config_get(); for (;;) { ao_sleep(&ao_ignition); for (igniter = ao_igniter_drogue; igniter <= ao_igniter_main; igniter++) { if (ao_ignition[igniter].request && !ao_ignition[igniter].fired) { + if (igniter == ao_igniter_drogue && ao_config.apogee_delay) + ao_delay(AO_SEC_TO_TICKS(ao_config.apogee_delay)); + ao_igniter_fire(igniter); ao_delay(AO_IGNITER_CHARGE_TIME); status = ao_igniter_status(igniter); @@ -117,20 +121,6 @@ ao_igniter(void) } } -static uint8_t -ao_match_word(__code char *word) -{ - while (*word) { - if (ao_cmd_lex_c != *word) { - ao_cmd_status = ao_cmd_syntax_error; - return 0; - } - word++; - ao_cmd_lex(); - } - return 1; -} - void ao_ignite_manual(void) {