From 37032e4b0cbac4c823e3dd18e60ad8900e9ceff1 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sat, 14 Jul 2012 01:29:50 -0700 Subject: [PATCH] altos/megametrum: Support the four additional pyro channels These use the new pyro code to allow for some flexibility in programming. Signed-off-by: Keith Packard --- src/megametrum-v0.1/Makefile | 1 + src/megametrum-v0.1/ao_megametrum.c | 2 ++ src/megametrum-v0.1/ao_pins.h | 31 +++++++++++++---------------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/megametrum-v0.1/Makefile b/src/megametrum-v0.1/Makefile index 59cfb64d..d415b59b 100644 --- a/src/megametrum-v0.1/Makefile +++ b/src/megametrum-v0.1/Makefile @@ -74,6 +74,7 @@ ALTOS_SRC = \ ao_packet_slave.c \ ao_packet.c \ ao_companion.c \ + ao_pyro.c \ $(PROFILE) PRODUCT=MegaMetrum-v0.1 diff --git a/src/megametrum-v0.1/ao_megametrum.c b/src/megametrum-v0.1/ao_megametrum.c index a6d93733..55324514 100644 --- a/src/megametrum-v0.1/ao_megametrum.c +++ b/src/megametrum-v0.1/ao_megametrum.c @@ -23,6 +23,7 @@ #include #include #include +#include int main(void) @@ -67,6 +68,7 @@ main(void) ao_packet_slave_init(FALSE); ao_igniter_init(); ao_companion_init(); + ao_pyro_init(); ao_config_init(); #if AO_PROFILE diff --git a/src/megametrum-v0.1/ao_pins.h b/src/megametrum-v0.1/ao_pins.h index 34b75255..2c438f6c 100644 --- a/src/megametrum-v0.1/ao_pins.h +++ b/src/megametrum-v0.1/ao_pins.h @@ -120,29 +120,26 @@ #define AO_IGNITER_CLOSED 400 #define AO_IGNITER_OPEN 60 -#define AO_IGNITER_PORT_A (&stm_gpiod) -#define AO_IGNITER_PIN_A 6 +#define AO_IGNITER_DROGUE_PORT (&stm_gpiod) +#define AO_IGNITER_DROGUE_PIN 6 -#define AO_IGNITER_PORT_B (&stm_gpiod) -#define AO_IGNITER_PIN_B 7 +#define AO_IGNITER_MAIN_PORT (&stm_gpiod) +#define AO_IGNITER_MAIN_PIN 7 -#define AO_IGNITER_PORT_C (&stm_gpiob) -#define AO_IGNITER_PIN_C 5 +#define AO_PYRO_PORT_0 (&stm_gpiob) +#define AO_PYRO_PIN_0 5 -#define AO_IGNITER_PORT_D (&stm_gpioe) -#define AO_IGNITER_PIN_D 4 +#define AO_PYRO_PORT_1 (&stm_gpioe) +#define AO_PYRO_PIN_1 4 -#define AO_IGNITER_PORT_E (&stm_gpioe) -#define AO_IGNITER_PIN_E 6 +#define AO_PYRO_PORT_2 (&stm_gpioe) +#define AO_PYRO_PIN_2 6 -#define AO_IGNITER_PORT_F (&stm_gpioe) -#define AO_IGNITER_PIN_F 5 +#define AO_PYRO_PORT_3 (&stm_gpioe) +#define AO_PYRO_PIN_3 5 -#define AO_IGNITER_DROGUE_PORT AO_IGNITER_PORT_A -#define AO_IGNITER_DROGUE_PIN AO_IGNITER_PIN_A - -#define AO_IGNITER_MAIN_PORT AO_IGNITER_PORT_B -#define AO_IGNITER_MAIN_PIN AO_IGNITER_PIN_B +/* Number of general purpose pyro channels available */ +#define AO_PYRO_NUM 4 #define AO_IGNITER_SET_DROGUE(v) stm_gpio_set(AO_IGNITER_DROGUE_PORT, AO_IGNITER_DROGUE_PIN, v) #define AO_IGNITER_SET_MAIN(v) stm_gpio_set(AO_IGNITER_MAIN_PORT, AO_IGNITER_MAIN_PIN, v) -- 2.30.2