From f145be3fc4ee94fdb5c1e2406b6c11d38bdbbd9b Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Wed, 13 Jul 2011 20:01:47 -0700 Subject: [PATCH] altos: Start telelaunch product Looks a lot like TM, but without the flight code. Signed-off-by: Keith Packard --- src/Makefile | 3 ++- src/cc1111/ao_adc.c | 4 ++++ src/cc1111/ao_pins.h | 29 +++++++++++++++++++++++++++++ src/core/ao_config.c | 8 +++++--- src/telelaunch-v0.1/.gitignore | 2 ++ src/telelaunch-v0.1/.sdcdbrc | 1 + src/telelaunch-v0.1/Makefile | 1 + src/telelaunch-v0.1/Makefile.defs | 11 +++++++++++ 8 files changed, 55 insertions(+), 4 deletions(-) create mode 100644 src/telelaunch-v0.1/.gitignore create mode 100644 src/telelaunch-v0.1/.sdcdbrc create mode 100644 src/telelaunch-v0.1/Makefile create mode 100644 src/telelaunch-v0.1/Makefile.defs diff --git a/src/Makefile b/src/Makefile index caa91e83..9ef5ae0a 100644 --- a/src/Makefile +++ b/src/Makefile @@ -18,6 +18,7 @@ SUBDIRS=\ telemini-v1.0 telenano-v0.1 \ telebt-v0.0 telebt-v0.1 \ telemetrum-v0.1-sky telemetrum-v0.1-sirf \ + telelaunch-v0.1 \ tidongle test telescience-v0.1 all: all-local all-recursive @@ -50,4 +51,4 @@ ao_kalman.h: make-kalman kalman.5c kalman_filter.5c load_csv.5c matrix.5c sh $< kalman > $@ clean-local: - rm -f altitude.h ao_kalman.h \ No newline at end of file + rm -f altitude.h ao_kalman.h diff --git a/src/cc1111/ao_adc.c b/src/cc1111/ao_adc.c index 786dfd11..6aa6e018 100644 --- a/src/cc1111/ao_adc.c +++ b/src/cc1111/ao_adc.c @@ -41,7 +41,11 @@ ao_adc_poll(void) void ao_adc_get(__xdata struct ao_adc *packet) { +#if HAS_FLIGHT uint8_t i = ao_adc_ring_prev(ao_sample_adc); +#else + uint8_t i = ao_adc_ring_prev(ao_adc_head); +#endif memcpy(packet, &ao_adc_ring[i], sizeof (struct ao_adc)); } diff --git a/src/cc1111/ao_pins.h b/src/cc1111/ao_pins.h index 4ac6a84b..19ea0cfd 100644 --- a/src/cc1111/ao_pins.h +++ b/src/cc1111/ao_pins.h @@ -302,6 +302,35 @@ #define HAS_MONITOR 1 #endif +#if defined(TELELAUNCH_V_0_1) + #define HAS_FLIGHT 0 + #define HAS_USB 1 + #define HAS_BEEP 1 + #define HAS_GPS 0 + #define HAS_SERIAL_1 1 + #define USE_SERIAL_STDIN 0 + #define HAS_ADC 1 + #define HAS_DBG 0 + #define HAS_EEPROM 1 + #define USE_INTERNAL_FLASH 0 + #define DBG_ON_P1 0 + #define DBG_ON_P0 1 + #define IGNITE_ON_P2 1 + #define IGNITE_ON_P0 0 + #define PACKET_HAS_MASTER 0 + #define PACKET_HAS_SLAVE 1 + #define AO_LED_RED 2 + #define AO_LED_GREEN 1 + #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN) + #define HAS_EXTERNAL_TEMP 1 + #define HAS_ACCEL_REF 0 + #define SPI_CS_ON_P1 1 + #define SPI_CS_ON_P0 0 + #define HAS_ACCEL 0 + #define HAS_IGNITE 1 + #define HAS_MONITOR 0 +#endif + #if DBG_ON_P1 #define DBG_CLOCK (1 << 4) /* mi0 */ diff --git a/src/core/ao_config.c b/src/core/ao_config.c index 0c10e608..ec2b61f6 100644 --- a/src/core/ao_config.c +++ b/src/core/ao_config.c @@ -47,7 +47,9 @@ _ao_config_put(void) ao_storage_setup(); ao_storage_erase(ao_storage_config); ao_storage_write(ao_storage_config, &ao_config, sizeof (ao_config)); +#if HAS_FLIGHT ao_log_write_erase(0); +#endif ao_storage_flush(); } @@ -301,7 +303,7 @@ ao_config_radio_cal_set(void) __reentrant _ao_config_edit_finish(); } -#if HAS_EEPROM +#if HAS_EEPROM && HAS_FLIGHT void ao_config_log_show(void) __reentrant { @@ -329,7 +331,7 @@ ao_config_log_set(void) __reentrant _ao_config_edit_finish(); } } -#endif /* HAS_EEPROM */ +#endif /* HAS_EEPROM && HAS_FLIGHT */ #if HAS_IGNITE void @@ -448,7 +450,7 @@ __code struct ao_config_var ao_config_vars[] = { #endif /* HAS_ACCEL */ { "f \0Radio calib (cal = rf/(xtal/2^16))", ao_config_radio_cal_set, ao_config_radio_cal_show }, -#if HAS_EEPROM +#if HAS_EEPROM && HAS_FLIGHT { "l \0Flight log size in kB", ao_config_log_set, ao_config_log_show }, #endif diff --git a/src/telelaunch-v0.1/.gitignore b/src/telelaunch-v0.1/.gitignore new file mode 100644 index 00000000..d25d7ad9 --- /dev/null +++ b/src/telelaunch-v0.1/.gitignore @@ -0,0 +1,2 @@ +telemetrum-v0.1-sky* +ao_product.h diff --git a/src/telelaunch-v0.1/.sdcdbrc b/src/telelaunch-v0.1/.sdcdbrc new file mode 100644 index 00000000..710b4a2f --- /dev/null +++ b/src/telelaunch-v0.1/.sdcdbrc @@ -0,0 +1 @@ +--directory=.. diff --git a/src/telelaunch-v0.1/Makefile b/src/telelaunch-v0.1/Makefile new file mode 100644 index 00000000..d8867b19 --- /dev/null +++ b/src/telelaunch-v0.1/Makefile @@ -0,0 +1 @@ +include ../Makefile.proto diff --git a/src/telelaunch-v0.1/Makefile.defs b/src/telelaunch-v0.1/Makefile.defs new file mode 100644 index 00000000..0c7efb52 --- /dev/null +++ b/src/telelaunch-v0.1/Makefile.defs @@ -0,0 +1,11 @@ +PROG = telelaunch-v0.1-$(VERSION).ihx + +SRC = \ + $(TLAUNCH_BASE_SRC) \ + $(SPI_DRIVER_SRC) \ + $(EE_DRIVER_SRC) \ + $(DBG_SRC) + +PRODUCT=TeleLaunch-v0.1 +PRODUCT_DEF=-DTELELAUNCH_V_0_1 +IDPRODUCT=0x000f -- 2.30.2