/* * Copyright © 2011 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_ #ifdef AVR_DEMO #define AO_LED_RED (1<<7) #define LEDS_AVAILABLE (AO_LED_RED) #define USE_SERIAL_1_STDIN 1 #define HAS_USB 1 #define PACKET_HAS_SLAVE 0 #define HAS_SERIAL_1 1 #define TEENSY 1 #define AVR_VCC_5V 1 #define AVR_VCC_3V3 0 #define AVR_CLOCK 16000000UL #define HAS_BEEP 0 #endif #if defined(TELESCIENCE) || defined(TELESCIENCE_PWM) #define LEDS_AVAILABLE 0 #define HAS_USB 1 #define HAS_LOG 1 #define TEENSY 0 #define HAS_SERIAL_1 0 #define HAS_ADC 1 #define PACKET_HAS_SLAVE 0 #define HAS_BEEP 0 #define HAS_EEPROM 1 #define HAS_STORAGE_DEBUG 0 #define AVR_VCC_5V 0 #define AVR_VCC_3V3 1 #define AVR_CLOCK 8000000UL #ifdef TELESCIENCE_PWM #define HAS_ICP3_COUNT 1 #else #define HAS_ICP3_COUNT 0 #endif #define SPI_CS_PORT PORTE #define SPI_CS_DIR DDRE #define M25_CS_MASK (1 << PORTE6) #define M25_MAX_CHIPS 1 #define SPI_SLAVE_CS_PORT PORTB #define SPI_SLAVE_CS_PIN PINB #define SPI_SLAVE_CS_PIN_NO PINB0 #define SPI_SLAVE_PIN_0_3 1 #define SPI_SLAVE_PIN_2_5 0 #define IS_COMPANION 1 #endif #ifdef TELEPYRO #define AO_STACK_SIZE 104 #define LEDS_AVAILABLE 0 #define HAS_USB 1 #define HAS_LOG 0 #define TEENSY 0 #define USE_SERIAL_1_STDIN 1 #define HAS_SERIAL_1 1 #define HAS_USB 1 #define HAS_ADC 1 #define PACKET_HAS_SLAVE 0 #define HAS_BEEP 0 #define HAS_EEPROM 1 #define USE_INTERNAL_FLASH 1 #define DISABLE_HELP 1 #define HAS_STORAGE_DEBUG 0 #define IS_COMPANION 1 #define HAS_ORIENT 0 #define ao_storage_pos_t uint16_t #define HAS_ICP3_COUNT 0 #define AVR_VCC_5V 0 #define AVR_VCC_3V3 1 #define AVR_CLOCK 8000000UL #define SPI_SLAVE_CS_PORT PORTB #define SPI_SLAVE_CS_PIN PINB #define SPI_SLAVE_CS_PIN_NO PINB0 #define SPI_SLAVE_PIN_0_3 1 #define SPI_SLAVE_PIN_2_5 0 #define AO_PYRO_NUM 8 #define AO_PYRO_PORT_0 B #define AO_PYRO_PIN_0 5 #define AO_PYRO_PORT_1 B #define AO_PYRO_PIN_1 6 #define AO_PYRO_PORT_2 B #define AO_PYRO_PIN_2 7 #define AO_PYRO_PORT_3 C #define AO_PYRO_PIN_3 6 #define AO_PYRO_PORT_4 C #define AO_PYRO_PIN_4 7 #define AO_PYRO_PORT_5 D #define AO_PYRO_PIN_5 5 #define AO_PYRO_PORT_6 D #define AO_PYRO_PIN_6 3 #define AO_PYRO_PORT_7 D #define AO_PYRO_PIN_7 2 #endif #define AO_M25_SPI_CS_PORT SPI_CS_PORT #define AO_M25_SPI_CS_MASK M25_CS_MASK #define AO_TELESCIENCE_NUM_ADC 12 struct ao_adc { uint16_t adc[AO_TELESCIENCE_NUM_ADC]; /* samples */ }; #define AO_DATA_RING 16 #endif /* _AO_PINS_H_ */