X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Ftelemini-v2.0%2Fao_pins.h;fp=src%2Ftelemini-v2.0%2Fao_pins.h;h=0000000000000000000000000000000000000000;hp=d2aa4c2d75e494836acf0b0396a8b5a47f8cef0b;hb=0686a7b8aec524d81bda4c572549a3a068ce0eed;hpb=6aa451ce81bfdfe679e3f9902043a5f0d235c745 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 - * - * 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_ */