diff --git a/flight/AHRS/ahrs.c b/flight/AHRS/ahrs.c index 762172a9b..2ea38ada0 100644 --- a/flight/AHRS/ahrs.c +++ b/flight/AHRS/ahrs.c @@ -151,22 +151,18 @@ int main() PIOS_HMC5843_ReadMag(mag_data.raw.axis); // Test ADC - accel_data.raw.x = PIOS_ADC_PinGet(2); - accel_data.raw.y = PIOS_ADC_PinGet(1); + accel_data.raw.x = PIOS_ADC_PinGet(4); + accel_data.raw.y = PIOS_ADC_PinGet(2); accel_data.raw.z = PIOS_ADC_PinGet(0); - gyro_data.raw.x = PIOS_ADC_PinGet(3); - gyro_data.raw.y = PIOS_ADC_PinGet(4); + gyro_data.raw.x = PIOS_ADC_PinGet(1); + gyro_data.raw.y = PIOS_ADC_PinGet(3); gyro_data.raw.z = PIOS_ADC_PinGet(5); -#if 0 /* Turn this on when the temperature ADCs are configured */ gyro_data.temp.xy = PIOS_ADC_PinGet(6); gyro_data.temp.z = PIOS_ADC_PinGet(7); -#else - gyro_data.temp.xy = 0; - gyro_data.temp.z = 0; -#endif + //PIOS_COM_SendFormattedString(PIOS_COM_AUX, "ADC Values: %d,%d,%d,%d,%d,%d\r\n", PIOS_ADC_PinGet(0), PIOS_ADC_PinGet(1), PIOS_ADC_PinGet(2), PIOS_ADC_PinGet(3), PIOS_ADC_PinGet(4), PIOS_ADC_PinGet(5)); diff --git a/flight/AHRS/inc/pios_board.h b/flight/AHRS/inc/pios_board.h index 7a5b3b5de..f2eeed667 100644 --- a/flight/AHRS/inc/pios_board.h +++ b/flight/AHRS/inc/pios_board.h @@ -121,11 +121,13 @@ TIM8 | | | | //------------------------- // ADC // PIOS_ADC_PinGet(0) = Accel Z -// PIOS_ADC_PinGet(1) = Accel Y -// PIOS_ADC_PinGet(2) = Accel X -// PIOS_ADC_PinGet(3) = Gyro X -// PIOS_ADC_PinGet(4) = Gyro Y +// PIOS_ADC_PinGet(2) = Accel Y +// PIOS_ADC_PinGet(4) = Accel X +// PIOS_ADC_PinGet(1) = Gyro X +// PIOS_ADC_PinGet(3) = Gyro Y // PIOS_ADC_PinGet(5) = Gyro Z +// PIOS_ADC_PinGet(6) = XY Temp +// PIOS_ADC_PinGet(7) = Z Temp //------------------------- //#define PIOS_ADC_OVERSAMPLING_RATE 1 #define PIOS_ADC_USE_TEMP_SENSOR 0 @@ -150,31 +152,43 @@ TIM8 | | | | #define PIOS_ADC_PIN3_ADC ADC1 #define PIOS_ADC_PIN3_ADC_NUMBER 3 -#define PIOS_ADC_PIN4_GPIO_PORT GPIOA // PA4 (Gyro X) -#define PIOS_ADC_PIN4_GPIO_PIN GPIO_Pin_4 // ADC12_IN4 -#define PIOS_ADC_PIN4_GPIO_CHANNEL ADC_Channel_4 -#define PIOS_ADC_PIN4_ADC ADC2 -#define PIOS_ADC_PIN4_ADC_NUMBER 1 +#define PIOS_ADC_PIN4_GPIO_PORT GPIOA // PA6 (XY Temp) +#define PIOS_ADC_PIN4_GPIO_PIN GPIO_Pin_6 // ADC12_IN6 +#define PIOS_ADC_PIN4_GPIO_CHANNEL ADC_Channel_6 +#define PIOS_ADC_PIN4_ADC ADC1 +#define PIOS_ADC_PIN4_ADC_NUMBER 4 -#define PIOS_ADC_PIN5_GPIO_PORT GPIOA // PA5 (Gyro Y) -#define PIOS_ADC_PIN5_GPIO_PIN GPIO_Pin_5 // ADC12_IN5 -#define PIOS_ADC_PIN5_GPIO_CHANNEL ADC_Channel_5 +#define PIOS_ADC_PIN5_GPIO_PORT GPIOA // PA4 (Gyro X) +#define PIOS_ADC_PIN5_GPIO_PIN GPIO_Pin_4 // ADC12_IN4 +#define PIOS_ADC_PIN5_GPIO_CHANNEL ADC_Channel_4 #define PIOS_ADC_PIN5_ADC ADC2 -#define PIOS_ADC_PIN5_ADC_NUMBER 2 +#define PIOS_ADC_PIN5_ADC_NUMBER 1 -#define PIOS_ADC_PIN6_GPIO_PORT GPIOA // PA7 (Gyro Z) -#define PIOS_ADC_PIN6_GPIO_PIN GPIO_Pin_7 // ADC12_IN7 -#define PIOS_ADC_PIN6_GPIO_CHANNEL ADC_Channel_7 +#define PIOS_ADC_PIN6_GPIO_PORT GPIOA // PA5 (Gyro Y) +#define PIOS_ADC_PIN6_GPIO_PIN GPIO_Pin_5 // ADC12_IN5 +#define PIOS_ADC_PIN6_GPIO_CHANNEL ADC_Channel_5 #define PIOS_ADC_PIN6_ADC ADC2 -#define PIOS_ADC_PIN6_ADC_NUMBER 3 +#define PIOS_ADC_PIN6_ADC_NUMBER 2 -#define PIOS_ADC_NUM_PINS 6 +#define PIOS_ADC_PIN7_GPIO_PORT GPIOA // PA7 (Gyro Z) +#define PIOS_ADC_PIN7_GPIO_PIN GPIO_Pin_7 // ADC12_IN7 +#define PIOS_ADC_PIN7_GPIO_CHANNEL ADC_Channel_7 +#define PIOS_ADC_PIN7_ADC ADC2 +#define PIOS_ADC_PIN7_ADC_NUMBER 3 -#define PIOS_ADC_PORTS { PIOS_ADC_PIN1_GPIO_PORT, PIOS_ADC_PIN2_GPIO_PORT, PIOS_ADC_PIN3_GPIO_PORT, PIOS_ADC_PIN4_GPIO_PORT, PIOS_ADC_PIN5_GPIO_PORT, PIOS_ADC_PIN6_GPIO_PORT } -#define PIOS_ADC_PINS { PIOS_ADC_PIN1_GPIO_PIN, PIOS_ADC_PIN2_GPIO_PIN, PIOS_ADC_PIN3_GPIO_PIN, PIOS_ADC_PIN4_GPIO_PIN, PIOS_ADC_PIN5_GPIO_PIN, PIOS_ADC_PIN6_GPIO_PIN } +#define PIOS_ADC_PIN8_GPIO_PORT GPIOB // PA7 (Gyro Z) +#define PIOS_ADC_PIN8_GPIO_PIN GPIO_Pin_1 // ADC12_IN7 +#define PIOS_ADC_PIN8_GPIO_CHANNEL ADC_Channel_9 +#define PIOS_ADC_PIN8_ADC ADC2 +#define PIOS_ADC_PIN8_ADC_NUMBER 4 + +#define PIOS_ADC_NUM_PINS 8 + +#define PIOS_ADC_PORTS { PIOS_ADC_PIN1_GPIO_PORT, PIOS_ADC_PIN2_GPIO_PORT, PIOS_ADC_PIN3_GPIO_PORT, PIOS_ADC_PIN4_GPIO_PORT, PIOS_ADC_PIN5_GPIO_PORT, PIOS_ADC_PIN6_GPIO_PORT, PIOS_ADC_PIN7_GPIO_PORT, PIOS_ADC_PIN7_GPIO_PORT } +#define PIOS_ADC_PINS { PIOS_ADC_PIN1_GPIO_PIN, PIOS_ADC_PIN2_GPIO_PIN, PIOS_ADC_PIN3_GPIO_PIN, PIOS_ADC_PIN4_GPIO_PIN, PIOS_ADC_PIN5_GPIO_PIN, PIOS_ADC_PIN6_GPIO_PIN, PIOS_ADC_PIN7_GPIO_PIN, PIOS_ADC_PIN8_GPIO_PIN } #define PIOS_ADC_CHANNELS { PIOS_ADC_PIN1_GPIO_CHANNEL, PIOS_ADC_PIN2_GPIO_CHANNEL, PIOS_ADC_PIN3_GPIO_CHANNEL, PIOS_ADC_PIN4_GPIO_CHANNEL, PIOS_ADC_PIN5_GPIO_CHANNEL, PIOS_ADC_PIN6_GPIO_CHANNEL } -#define PIOS_ADC_MAPPING { PIOS_ADC_PIN1_ADC, PIOS_ADC_PIN2_ADC, PIOS_ADC_PIN3_ADC, PIOS_ADC_PIN4_ADC, PIOS_ADC_PIN5_ADC, PIOS_ADC_PIN6_ADC } -#define PIOS_ADC_CHANNEL_MAPPING { PIOS_ADC_PIN1_ADC_NUMBER, PIOS_ADC_PIN2_ADC_NUMBER, PIOS_ADC_PIN3_ADC_NUMBER, PIOS_ADC_PIN4_ADC_NUMBER, PIOS_ADC_PIN5_ADC_NUMBER, PIOS_ADC_PIN6_ADC_NUMBER } +#define PIOS_ADC_MAPPING { PIOS_ADC_PIN1_ADC, PIOS_ADC_PIN2_ADC, PIOS_ADC_PIN3_ADC, PIOS_ADC_PIN4_ADC, PIOS_ADC_PIN5_ADC, PIOS_ADC_PIN6_ADC, PIOS_ADC_PIN7_ADC, PIOS_ADC_PIN8_ADC } +#define PIOS_ADC_CHANNEL_MAPPING { PIOS_ADC_PIN1_ADC_NUMBER, PIOS_ADC_PIN2_ADC_NUMBER, PIOS_ADC_PIN3_ADC_NUMBER, PIOS_ADC_PIN4_ADC_NUMBER, PIOS_ADC_PIN5_ADC_NUMBER, PIOS_ADC_PIN6_ADC_NUMBER, PIOS_ADC_PIN7_ADC_NUMBER, PIOS_ADC_PIN8_ADC_NUMBER } #define PIOS_ADC_NUM_CHANNELS (PIOS_ADC_NUM_PINS + PIOS_ADC_USE_TEMP_SENSOR) #define PIOS_ADC_NUM_ADC_CHANNELS 2 #define PIOS_ADC_USE_ADC2 1