X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Feasymega-v2.0%2Fao_pins.h;h=a304d03429741fece015fd6311bc21661efa163e;hp=aff06cdd8dc9bdc66fc8abea3812b68e2cf03535;hb=7f46240dfc57164f0c1b0c4c4ed9695bca63860d;hpb=393a5e929b530d9ee4f78cd01faa4dd90c95fe3a diff --git a/src/easymega-v2.0/ao_pins.h b/src/easymega-v2.0/ao_pins.h index aff06cdd..a304d034 100644 --- a/src/easymega-v2.0/ao_pins.h +++ b/src/easymega-v2.0/ao_pins.h @@ -19,14 +19,13 @@ #ifndef _AO_PINS_H_ #define _AO_PINS_H_ -#define HAS_TASK_QUEUE 1 /* 16MHz High speed external crystal */ #define AO_HSE 16000000 /* PLLVCO = 96MHz (so that USB will work) */ -#define AO_PLLMUL 12 -#define AO_RCC_CFGR_PLLMUL (STM_RCC_CFGR_PLLMUL_12) +#define AO_PLLMUL 6 +#define AO_RCC_CFGR_PLLMUL (STM_RCC_CFGR_PLLMUL_6) /* SYSCLK = 32MHz (no need to go faster than CPU) */ #define AO_PLLDIV 3 @@ -69,7 +68,7 @@ #define AO_CONFIG_MAX_SIZE 1024 #define LOG_ERASE_MARK 0x55 #define LOG_MAX_ERASE 128 -#define AO_LOG_FORMAT AO_LOG_FORMAT_TELEMEGA +#define AO_LOG_FORMAT AO_LOG_FORMAT_EASYMEGA_2 #define HAS_EEPROM 1 #define USE_INTERNAL_FLASH 0 @@ -77,6 +76,10 @@ #define USE_STORAGE_CONFIG 0 #define HAS_USB 1 #define HAS_BEEP 1 +#define BEEPER_TIMER 2 +#define BEEPER_CHANNEL 3 +#define BEEPER_PORT (&stm_gpioa) +#define BEEPER_PIN 2 #define HAS_BATTERY_REPORT 1 #define HAS_RADIO 0 #define HAS_TELEMETRY 0 @@ -85,20 +88,15 @@ #define HAS_SPI_1 1 #define SPI_1_PA5_PA6_PA7 1 /* Barometer */ -#define SPI_1_PB3_PB4_PB5 1 /* Accelerometer, Gyro */ +#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 */ +#define SPI_2_PB13_PB14_PB15 1 /* Flash, IMU, Companion */ #define SPI_2_PD1_PD3_PD4 0 #define SPI_2_OSPEEDR STM_OSPEEDR_10MHz -#define SPI_2_PORT (&stm_gpiob) -#define SPI_2_SCK_PIN 13 -#define SPI_2_MISO_PIN 14 -#define SPI_2_MOSI_PIN 15 - #define HAS_I2C_1 1 #define I2C_1_PB8_PB9 1 @@ -165,9 +163,6 @@ /* Number of general purpose pyro channels available */ #define AO_PYRO_NUM 4 -#define AO_IGNITER_SET_DROGUE(v) stm_gpio_set(AO_IGNITER_DROGUE_PORT, AO_IGNITER_DROGUE_PIN, v) -#define AO_IGNITER_SET_MAIN(v) stm_gpio_set(AO_IGNITER_MAIN_PORT, AO_IGNITER_MAIN_PIN, v) - /* * ADC */ @@ -182,7 +177,7 @@ struct ao_adc { }; #define AO_ADC_DUMP(p) \ - printf("tick: %5u A: %5d B: %5d C: %5d D: %5d drogue: %5d main: %5d batt: %5d pbatt: %5d temp: %5d\n", \ + printf("tick: %5lu A: %5d B: %5d C: %5d D: %5d drogue: %5d main: %5d batt: %5d pbatt: %5d temp: %5d\n", \ (p)->tick, \ (p)->adc.sense[0], (p)->adc.sense[1], (p)->adc.sense[2], \ (p)->adc.sense[3], (p)->adc.sense[4], (p)->adc.sense[5], \ @@ -303,22 +298,40 @@ struct ao_adc { */ #define HAS_MPU9250 1 -#define AO_MPU9250_INT_PORT (&stm_gpioe) -#define AO_MPU9250_INT_PIN 0 -#define AO_MPU9250_SPI_BUS AO_SPI_1_PE13_PE14_PE15 -#define AO_MPU9250_SPI_CS_PORT (&stm_gpiod) -#define AO_MPU9250_SPI_CS_PIN 2 +#define AO_MPU9250_INT_PORT (&stm_gpioc) +#define AO_MPU9250_INT_PIN 15 +#define AO_MPU9250_SPI_BUS (AO_SPI_2_PB13_PB14_PB15 | AO_SPI_MODE_0) +#define AO_MPU9250_SPI_CS_PORT (&stm_gpioc) +#define AO_MPU9250_SPI_CS_PIN 13 #define HAS_IMU 1 -/* - * mma655x - */ +#define ao_data_along(packet) ((packet)->mpu9250.accel_x) +#define ao_data_across(packet) (-(packet)->mpu9250.accel_y) +#define ao_data_through(packet) ((packet)->mpu9250.accel_z) + +#define ao_data_roll(packet) ((packet)->mpu9250.gyro_x) +#define ao_data_pitch(packet) (-(packet)->mpu9250.gyro_y) +#define ao_data_yaw(packet) ((packet)->mpu9250.gyro_z) + +#define ao_data_mag_along(packet) ((packet)->mpu9250.mag_y) +#define ao_data_mag_across(packet) (-(packet)->mpu9250.mag_x) +#define ao_data_mag_through(packet) ((packet)->mpu9250.mag_z) + +/* ADXL375 */ + +#define HAS_ADXL375 1 +#define AO_ADXL375_SPI_INDEX (AO_SPI_1_PB3_PB4_PB5 | AO_SPI_MODE_3) +#define AO_ADXL375_CS_PORT (&stm_gpioc) +#define AO_ADXL375_CS_PIN 12 + +#define AO_ADXL375_INT1_PORT (&stm_gpiob) +#define AO_ADXL375_INT1_PIN 8 + +#define AO_ADXL375_INT2_PORT (&stm_gpiob) +#define AO_ADXL375_INT2_PIN 9 -#define HAS_MMA655X 0 -#define AO_MMA655X_INVERT 0 -#define AO_MMA655X_SPI_INDEX AO_SPI_1_PB3_PB4_PB5 -#define AO_MMA655X_CS_PORT (&stm_gpioc) -#define AO_MMA655X_CS_PIN 12 +#define AO_ADXL375_AXIS x +#define AO_ADXL375_INVERT 1 #define NUM_CMDS 16