diff options
Diffstat (limited to 'src/telemini-v2.0')
| -rw-r--r-- | src/telemini-v2.0/.gitignore | 2 | ||||
| -rw-r--r-- | src/telemini-v2.0/.sdcdbrc | 2 | ||||
| -rw-r--r-- | src/telemini-v2.0/Makefile | 116 | ||||
| -rw-r--r-- | src/telemini-v2.0/ao_pins.h | 192 | ||||
| -rw-r--r-- | src/telemini-v2.0/ao_telemini.c | 64 |
5 files changed, 0 insertions, 376 deletions
diff --git a/src/telemini-v2.0/.gitignore b/src/telemini-v2.0/.gitignore deleted file mode 100644 index 568925a2..00000000 --- a/src/telemini-v2.0/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -ao_product.h -telemini-v2.0* diff --git a/src/telemini-v2.0/.sdcdbrc b/src/telemini-v2.0/.sdcdbrc deleted file mode 100644 index 2c77e32b..00000000 --- a/src/telemini-v2.0/.sdcdbrc +++ /dev/null @@ -1,2 +0,0 @@ ---directory=../cc1111:../product:../kernel:../drivers:. - diff --git a/src/telemini-v2.0/Makefile b/src/telemini-v2.0/Makefile deleted file mode 100644 index 8657e9a9..00000000 --- a/src/telemini-v2.0/Makefile +++ /dev/null @@ -1,116 +0,0 @@ -# -# TeleMini build file -# - -TELEMINI_VER=2.0 -TELEMINI_DEF=2_0 - -vpath %.c ..:../kernel:../cc1111:../drivers:../product -vpath %.h ..:../kernel:../cc1111:../drivers:../product -vpath ao-make-product.5c ../util - -ifndef VERSION -include ../Version -endif - -INC = \ - ao.h \ - ao_pins.h \ - ao_arch.h \ - ao_arch_funcs.h \ - cc1111.h \ - ao_ms5607.h \ - ao_ms5607_convert_8051.c \ - ao_product.h \ - ao_int64.h \ - ao_sample.h \ - ao_exti.h \ - ao_task.h \ - altitude-pa-small.h - -CORE_SRC = \ - ao_cmd.c \ - ao_config.c \ - ao_flight.c \ - ao_kalman.c \ - ao_log.c \ - ao_log_mini.c \ - ao_mutex.c \ - ao_panic.c \ - ao_report.c \ - ao_sample.c \ - ao_stdio.c \ - ao_storage.c \ - ao_task.c \ - ao_telemetry.c \ - ao_freq.c \ - ao_int64.c - -CC1111_SRC = \ - ao_adc.c \ - ao_dma.c \ - ao_ignite.c \ - ao_led.c \ - ao_packet.c \ - ao_packet_slave.c \ - ao_radio.c \ - ao_romconfig.c \ - ao_string.c \ - ao_spi.c \ - ao_usb.c \ - ao_convert_pa.c \ - ao_convert_volt.c \ - ao_beep.c \ - ao_timer.c \ - ao_exti.c \ - _bp.c - -DRIVER_SRC = \ - ao_ms5607.c \ - ao_m25.c - -PRODUCT_SRC = \ - ao_telemini.c - -SRC = \ - $(CORE_SRC) \ - $(CC1111_SRC) \ - $(DRIVER_SRC) \ - $(PRODUCT_SRC) - -PROGNAME = telemini-v$(TELEMINI_VER) -PROG = $(PROGNAME)-$(VERSION).ihx -PRODUCT=TeleMini-v$(TELEMINI_VER) -PRODUCT_DEF=-DTELEMINI_V_$(TELEMINI_DEF) -IDPRODUCT=0x0027 - -include ../cc1111/Makefile.cc1111 - -NICKLE=nickle -CHECK_STACK=sh ../util/check-stack - -V=0 -# The user has explicitly enabled quiet compilation. -ifeq ($(V),0) -quiet = @printf " $1 $2 $@\n"; $($1) -endif -# Otherwise, print the full command line. -quiet ?= $($1) - -all: $(PROG) - -$(PROG): $(REL) Makefile - $(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(REL) - $(call quiet,CHECK_STACK) ../cc1111/ao_arch.h $(PMEM) || rm $@ - -ao_product.h: ao-make-product.5c ../Version - $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ - -distclean: clean - -clean: clean-cc1111 - -install: - -uninstall: - diff --git a/src/telemini-v2.0/ao_pins.h b/src/telemini-v2.0/ao_pins.h deleted file mode 100644 index d2aa4c2d..00000000 --- a/src/telemini-v2.0/ao_pins.h +++ /dev/null @@ -1,192 +0,0 @@ -/* - * Copyright © 2010 Keith Packard <keithp@keithp.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. - */ - -#ifndef _AO_PINS_H_ -#define _AO_PINS_H_ - -#define HAS_RADIO 1 - -#define HAS_FLIGHT 1 -#define HAS_USB 1 -#define AO_VALUE_32 0 - -#define HAS_USB_PULLUP 1 -#define AO_USB_PULLUP_PORT P1 -#define AO_USB_PULLUP_PIN 0 -#define AO_USB_PULLUP P1_0 - -#define AO_SMALL_ALTITUDE_TABLE 1 - -#define USB_FORCE_FLIGHT_IDLE 1 -#define HAS_BEEP 1 -#define HAS_BEEP_CONFIG 1 -#define HAS_BATTERY_REPORT 1 -#define HAS_GPS 0 -#define HAS_SERIAL_1 0 -#define HAS_EEPROM 1 -#define HAS_LOG 1 -#define USE_INTERNAL_FLASH 0 -#define HAS_DBG 0 -#define PACKET_HAS_SLAVE 1 -#define HAS_RADIO_RATE 1 -#define HAS_TELEMETRY 1 -#define HAS_TASK_INFO 0 - -#define AO_LED_RED 2 -#define LEDS_AVAILABLE AO_LED_RED -#define HAS_EXTERNAL_TEMP 0 -#define HAS_ACCEL 0 -#define HAS_IGNITE 1 -#define HAS_IGNITE_REPORT 1 -#define HAS_MONITOR 0 - -/* - * SPI - */ - -#define HAS_SPI_0 1 -#define SPI_0_ALT_1 1 -#define HAS_SPI_1 1 -#define SPI_1_ALT_2 1 -#define SPI_CS_PORT P1 -#define SPI_CS_SEL P1SEL -#define SPI_CS_DIR P1DIR - -/* - * Flash - */ -#define AO_M25_SPI_BUS 1 -#define AO_M25_SPI_CS_PORT SPI_CS_PORT -#define AO_M25_SPI_CS_MASK 0x04 /* cs_flash is P1_2 */ -#define M25_MAX_CHIPS 1 - -/* - * MS5607 - */ - -#define HAS_MS5607 1 -#define HAS_MS5611 0 -#define AO_MS5607_PRIVATE_PINS 0 -#define AO_MS5607_CS_PORT P1 -#define AO_MS5607_CS_PIN 3 -#define AO_MS5607_CS P1_3 -#define AO_MS5607_CS_MASK (1 << AO_MS5607_CS_PIN) -#define AO_MS5607_MISO_PORT P0 -#define AO_MS5607_MISO_PIN 2 -#define AO_MS5607_MISO P0_2 -#define AO_MS5607_MISO_MASK (1 << AO_MS5607_MISO_PIN) -#define AO_MS5607_SPI_INDEX 0 -#define HAS_EXTI_0 1 - -/* - * Igniters - */ -#define AO_IGNITER_PORT P2 -#define AO_IGNITER_DROGUE_PORT AO_IGNITER_PORT -#define AO_IGNITER_DROGUE P2_3 -#define AO_IGNITER_MAIN P2_4 -#define AO_IGNITER_DIR P2DIR -#define AO_IGNITER_DROGUE_BIT (1 << 3) -#define AO_IGNITER_MAIN_BIT (1 << 4) -#define AO_IGNITER_DROGUE_PIN 3 -#define AO_IGNITER_MAIN_PIN 4 - -#define AO_IGNITER_DROGUE_PORT AO_IGNITER_PORT -#define AO_IGNITER_MAIN_PORT AO_IGNITER_PORT - -/* 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(50) -#define AO_IGNITER_CHARGE_TIME AO_MS_TO_TICKS(2000) - -#define AO_SEND_MINI AO_TELEMETRY_MINI2 -#define AO_LOG_FORMAT AO_LOG_FORMAT_TELEMINI2 - -/* - * ADC - */ - -#define HAS_ADC 1 -#define AO_ADC_FIRST_PIN 0 - -struct ao_adc { - int16_t sense_a; /* apogee continuity sense */ - int16_t sense_m; /* main continuity sense */ - int16_t v_batt; /* battery voltage */ -}; - -#define ao_data_count ao_adc_count - -#define AO_SENSE_DROGUE(p) ((p)->adc.sense_a) -#define AO_SENSE_MAIN(p) ((p)->adc.sense_m) - -#define AO_NUM_TASKS 10 - -#define AO_ADC_DUMP(p) \ - printf("tick: %5u apogee: %5d main: %5d batt: %5d\n", \ - (p)->tick, (p)->adc.sense_a, (p)->adc.sense_m, (p)->adc.v_batt) - -#define AO_ADC_PINS ((1 << 0) | (1 << 1) | (1 << 4)) - -#define FETCH_ADC() do { \ - a = (uint8_t __xdata *) (&ao_data_ring[ao_data_head].adc); \ - switch (sequence) { \ - case 4: \ - a += 4; \ - sequence = 0; \ - break; \ - case 1: \ - a += 2; \ - sequence = 4; \ - break; \ - case 0: \ - sequence = 1; \ - break; \ - } \ - a[0] = ADCL; \ - a[1] = ADCH; \ - if (sequence) { \ - ADCCON3 = ADCCON3_EREF_VDD | ADCCON3_EDIV_512 | sequence; \ - return; \ - } \ - AO_DATA_PRESENT(AO_DATA_ADC); \ - if (ao_data_present != AO_DATA_ALL) \ - return; \ - ao_data_ring[ao_data_head].ms5607_raw.pres = ao_ms5607_current.pres; \ - ao_data_ring[ao_data_head].ms5607_raw.temp = ao_ms5607_current.temp; \ - } while (0) - -/* - * Voltage divider on ADC battery sampler - */ -#define AO_BATTERY_DIV_PLUS 100 /* 100k */ -#define AO_BATTERY_DIV_MINUS 27 /* 27k */ - -/* - * Voltage divider on ADC igniter samplers - */ -#define AO_IGNITE_DIV_PLUS 100 /* 100k */ -#define AO_IGNITE_DIV_MINUS 27 /* 27k */ - -/* - * ADC reference in decivolts - */ -#define AO_ADC_REFERENCE_DV 33 - -#endif /* _AO_PINS_H_ */ diff --git a/src/telemini-v2.0/ao_telemini.c b/src/telemini-v2.0/ao_telemini.c deleted file mode 100644 index a9ee423c..00000000 --- a/src/telemini-v2.0/ao_telemini.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright © 2011 Keith Packard <keithp@keithp.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. - */ - -#include "ao.h" -#include "ao_pins.h" -#include <ao_exti.h> - -void -main(void) -{ - ao_clock_init(); - -#if HAS_STACK_GUARD - ao_mpu_init(); -#endif - ao_task_init(); - - /* Turn on the red LED until the system is stable */ - ao_led_init(LEDS_AVAILABLE); - ao_led_on(AO_LED_RED); - - ao_timer_init(); - - ao_spi_init(); - ao_exti_init(); - ao_adc_init(); -#if HAS_BEEP - ao_beep_init(); -#endif - ao_cmd_init(); -#if HAS_MS5607 - ao_ms5607_init(); -#endif - ao_storage_init(); - - ao_flight_init(); - ao_log_init(); - ao_report_init(); - - ao_usb_init(); - ao_telemetry_init(); - ao_radio_init(); - ao_packet_slave_init(TRUE); - - ao_igniter_init(); - - ao_config_init(); - ao_start_scheduler(); -} |
