X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Ftelemetrum-v4.0%2Fao_pins.h;h=66b3e955541a1f32e47260578039bfa3d7d74c4c;hb=05b689b29a964a233b2389390c9669538160888e;hp=e33db912c1955bae7508f3c9ecdf20c39cd369a8;hpb=05278307f5e9fd5f8b1a53078e6f3b125785b019;p=fw%2Faltos diff --git a/src/telemetrum-v4.0/ao_pins.h b/src/telemetrum-v4.0/ao_pins.h index e33db912..66b3e955 100644 --- a/src/telemetrum-v4.0/ao_pins.h +++ b/src/telemetrum-v4.0/ao_pins.h @@ -38,44 +38,37 @@ #define HAS_EEPROM 1 #define USE_INTERNAL_FLASH 0 -#define USE_EEPROM_CONFIG 1 -#define USE_STORAGE_CONFIG 0 +#define USE_EEPROM_CONFIG 0 +#define USE_STORAGE_CONFIG 1 #define HAS_USB 1 #define USE_USB_STDIO 1 -#define HAS_BEEP 1 #define HAS_BATTERY_REPORT 1 #define BEEPER_CHANNEL 4 #define BEEPER_TIMER 3 #define BEEPER_PORT (&samd21_port_a) #define BEEPER_PIN 16 #define HAS_RADIO 1 +#define HAS_RADIO_10MW 1 #define HAS_TELEMETRY 1 #define HAS_APRS 1 #define HAS_COMPANION 1 -#define HAS_SPI_1 1 -#define SPI_1_PA5_PA6_PA7 1 /* Barometer */ -#define SPI_1_PB3_PB4_PB5 1 /* Accelerometer */ -#define SPI_1_PE13_PE14_PE15 0 -#define SPI_1_OSPEEDR STM_OSPEEDR_10MHz - -#define HAS_SPI_2 1 -#define SPI_2_PB13_PB14_PB15 1 /* Flash, Companion, Radio */ -#define SPI_2_PD1_PD3_PD4 0 -#define SPI_2_OSPEEDR STM_OSPEEDR_10MHz +#define HAS_SPI_0 1 +#define HAS_SPI_3 1 +#define HAS_SPI_5 1 #define PACKET_HAS_SLAVE 1 #define PACKET_HAS_MASTER 0 #define LOW_LEVEL_DEBUG 0 -#define LED_PORT (&samd21_port_b) -#define LED_PIN_RED 10 -#define LED_PIN_GREEN 11 -#define AO_LED_RED (1 << LED_PIN_RED) -#define AO_LED_GREEN (1 << LED_PIN_GREEN) - -#define LEDS_AVAILABLE (AO_LED_RED | AO_LED_GREEN) +#define HAS_LED 1 +#define LED_0_PORT (&samd21_port_b) +#define LED_0_PIN 10 +#define LED_1_PORT (&samd21_port_b) +#define LED_1_PIN 11 +#define AO_LED_RED (1 << 0) +#define AO_LED_GREEN (1 << 1) #define HAS_GPS 1 #define HAS_FLIGHT 1 @@ -83,6 +76,19 @@ #define HAS_ADC_TEMP 1 #define HAS_LOG 1 +/* + * Beeper + */ + +#define HAS_BEEP 1 +/* Beep on PA16 function E TCC2.0 */ + +#define AO_BEEP_TCC (&samd21_tcc2) +#define AO_BEEP_TCC_APBC_MASK SAMD21_PM_APBCMASK_TCC2 +#define AO_BEEP_PORT (&samd21_port_a) +#define AO_BEEP_PIN (16) +#define AO_BEEP_FUNC SAMD21_PORT_PMUX_FUNC_E + /* * Igniter */ @@ -122,21 +128,21 @@ struct ao_adc { (p)->adc.sense_a, (p)->adc.sense_m, \ (p)->adc.v_batt); -#define AO_ADC_SENSE_DROGUE 1 +#define AO_ADC_SENSE_DROGUE 18 #define AO_ADC_SENSE_DROGUE_PORT (&samd21_port_a) -#define AO_ADC_SENSE_DROGUE_PIN 10 +#define AO_ADC_SENSE_DROGUE_PIN 10 -#define AO_ADC_SENSE_MAIN 1 -#define AO_ADC_SENSE_MAIN_PORT (&samd21_port_a) -#define AO_ADC_SENSE_MAIN_PIN 11 +#define AO_ADC_SENSE_MAIN 19 +#define AO_ADC_SENSE_MAIN_PORT (&samd21_port_a) +#define AO_ADC_SENSE_MAIN_PIN 11 -#define AO_ADC_V_BATT 8 -#define AO_ADC_V_BATT_PORT (&samd21_port_a) -#define AO_ADC_V_BATT_PIN 9 +#define AO_ADC_V_BATT 17 +#define AO_ADC_V_BATT_PORT (&samd21_port_a) +#define AO_ADC_V_BATT_PIN 9 -#define AO_ADC_TEMP 16 +#define AO_ADC_TEMP SAMD21_ADC_INPUTCTRL_MUXPOS_TEMP -#define AO_NUM_ADC_PIN 3 +#define AO_NUM_ADC_PIN 3 #define AO_ADC_PIN0_PORT AO_ADC_SENSE_DROGUE_PORT #define AO_ADC_PIN0_PIN AO_ADC_SENSE_DROGUE_PIN @@ -147,10 +153,10 @@ struct ao_adc { #define AO_NUM_ADC (AO_NUM_ADC_PIN + 1) -#define AO_ADC_SQ1 AO_ADC_SENSE_DROGUE -#define AO_ADC_SQ2 AO_ADC_SENSE_MAIN -#define AO_ADC_SQ3 AO_ADC_V_BATT -#define AO_ADC_SQ4 AO_ADC_TEMP +#define AO_ADC_SQ0 AO_ADC_SENSE_DROGUE +#define AO_ADC_SQ1 AO_ADC_SENSE_MAIN +#define AO_ADC_SQ2 AO_ADC_V_BATT +#define AO_ADC_SQ3 AO_ADC_TEMP /* * Voltage divider on ADC battery sampler @@ -174,23 +180,28 @@ struct ao_adc { */ #define AO_SERIAL_SPEED_UBLOX AO_SERIAL_SPEED_9600 +#define AO_UBLOX_VERSION 10 + +#define HAS_SERIAL_1 1 +#define USE_SERIAL_1_STDIN 0 +#define SERIAL_1_PA00_PA01 1 -#define ao_gps_getchar ao_serial3_getchar -#define ao_gps_putchar ao_serial3_putchar -#define ao_gps_set_speed ao_serial3_set_speed -#define ao_gps_fifo (ao_stm_usart3.rx_fifo) +#define ao_gps_getchar ao_serial1_getchar +#define ao_gps_putchar ao_serial1_putchar +#define ao_gps_set_speed ao_serial1_set_speed +#define ao_gps_fifo (ao_samd21_usart1.rx_fifo) /* * Pressure sensor settings */ #define HAS_MS5607 1 #define HAS_MS5611 0 -#define AO_MS5607_PRIVATE_PINS 1 +#define AO_MS5607_PRIVATE_PINS 0 #define AO_MS5607_CS_PORT (&samd21_port_a) #define AO_MS5607_CS_PIN 21 -#define AO_MS5607_CS_MASK (1 << AO_MS5607_CS) #define AO_MS5607_MISO_PORT (&samd21_port_a) #define AO_MS5607_MISO_PIN 20 +#define AO_MS5607_SPI_INDEX AO_SPI_3_PA22_PA23_PA20 /* * SPI Flash memory @@ -198,7 +209,9 @@ struct ao_adc { #define M25_MAX_CHIPS 1 #define AO_M25_SPI_CS_PORT (&samd21_port_a) -#define AO_M25_SPI_CS_MASK (1 << 8) +#define AO_M25_SPI_CS_MASK (1 << 27) +#define AO_M25_SPI_BUS AO_SPI_5_PB22_PB23_PB03 + /* * Radio (cc1200) @@ -210,6 +223,7 @@ struct ao_adc { #define AO_CC1200_SPI_CS_PORT (&samd21_port_a) #define AO_CC1200_SPI_CS_PIN 7 +#define AO_CC1200_SPI_BUS AO_SPI_5_PB22_PB23_PB03 #define AO_CC1200_INT_PORT (&samd21_port_b) #define AO_CC1200_INT_PIN (8) @@ -231,6 +245,7 @@ struct ao_adc { #define HAS_ADXL375 1 #define AO_ADXL375_CS_PORT (&samd21_port_a) #define AO_ADXL375_CS_PIN 8 +#define AO_ADXL375_SPI_INDEX (AO_SPI_0_PA04_PA05_PA06 | AO_SPI_MODE_3) #define AO_ADXL375_AXIS x #define AO_ADXL375_INVERT 1 @@ -243,6 +258,7 @@ struct ao_adc { #define AO_COMPANION_CS_PORT (&samd21_port_a) #define AO_COMPANION_CS_PIN (13) +#define AO_COMPANION_SPI_BUS AO_SPI_5_PB22_PB23_PB03 /* * Monitor