fmu-v5: started updating board config to newest specs

This commit is contained in:
Simone Guscetti 2017-05-11 20:20:28 +02:00 committed by David Sidrane
parent 71136dcedf
commit 30f9c61e67
4 changed files with 56 additions and 53 deletions

View File

@ -65,9 +65,9 @@ __BEGIN_DECLS
#define GPIO_LED2 /* PC6 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTC|GPIO_PIN6)
#define GPIO_LED3 /* PC7 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTC|GPIO_PIN7)
#define GPIO_LED_RED GPIO_LED1
#define GPIO_LED_GREEN GPIO_LED2
#define GPIO_LED_BLUE GPIO_LED3
#define GPIO_nLED_RED GPIO_LED1
#define GPIO_nLED_GREEN GPIO_LED2
#define GPIO_nLED_BLUE GPIO_LED3
/* Define the Chip Selects */
@ -87,12 +87,13 @@ __BEGIN_DECLS
/* Define the Ready interrupts */ /* NOT FMUv5 test HW ONLY*/
#define GPIO_ICM20689_DRDY1 /* PB4 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN4)
#define GPIO_BMI055_DRDY2_GYRO /* PB14 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN14)
#define GPIO_BMI055_DRDY3_ACC /* PB15 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN15)
#define GPIO_ICM20602_DRDY4 /* PC5 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTC|GPIO_PIN5)
#define GPIO_BMI055_DRDY5_GYRO /* PC13 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTC|GPIO_PIN13)
#define GPIO_BMI055_DRDY6_ACC /* PD10 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTD|GPIO_PIN10)
#define GPIO_SPI1_DRDY1_ICM20689 /* PB4 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN4)
#define GPIO_SPI1_DRDY2_BMI055_GYRO /* PB14 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN14)
#define GPIO_SPI1_DRDY3_BMI055_ACC /* PB15 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTB|GPIO_PIN15)
#define GPIO_SPI1_DRDY4_ICM20602 /* PC5 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTC|GPIO_PIN5)
#define GPIO_SPI1_DRDY5_BMI055_GYRO /* PC13 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTC|GPIO_PIN13)
#define GPIO_SPI1_DRDY6_BMI055_ACC /* PD10 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTD|GPIO_PIN10)
#define GPIO_SPI5_DRDY7_EXTERNAL1 /* PD15 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTD|GPIO_PIN15)
/*
* Define the ability to shut off off the sensor signals
@ -102,13 +103,13 @@ __BEGIN_DECLS
#define _PIN_OFF(def) (((def) & (GPIO_PORT_MASK | GPIO_PIN_MASK)) | (GPIO_INPUT|GPIO_PULLDOWN|GPIO_SPEED_2MHz))
#define GPIO_DRDY_OFF_ICM20689_DRDY1 _PIN_OFF(GPIO_ICM20689_DRDY1)
#define GPIO_DRDY_OFF_BMI055_DRDY2_GYRO _PIN_OFF(GPIO_BMI055_DRDY2_GYRO)
#define GPIO_DRDY_OFF_BMI055_DRDY3_ACC _PIN_OFF(GPIO_BMI055_DRDY3_ACC)
#define GPIO_DRDY_OFF_ICM20602_DRDY4 _PIN_OFF(GPIO_ICM20602_DRDY4)
#define GPIO_DRDY_OFF_BMI055_DRDY5_GYRO _PIN_OFF(GPIO_BMI055_DRDY5_GYRO)
#define GPIO_DRDY_OFF_BMI055_DRDY6_ACC _PIN_OFF(GPIO_BMI055_DRDY6_ACC)
#define GPIO_DRDY_OFF_SPI1_DRDY1_ICM20689 _PIN_OFF(GPIO_SPI1_DRDY1_ICM20689)
#define GPIO_DRDY_OFF_SPI1_DRDY2_BMI055_GYRO _PIN_OFF(GPIO_SPI1_DRDY2_BMI055_GYRO)
#define GPIO_DRDY_OFF_SPI1_DRDY3_BMI055_ACC _PIN_OFF(GPIO_SPI1_DRDY3_BMI055_ACC)
#define GPIO_DRDY_OFF_SPI1_DRDY4_ICM20602 _PIN_OFF(GPIO_SPI1_DRDY4_ICM20602)
#define GPIO_DRDY_OFF_SPI1_DRDY5_BMI055_GYRO _PIN_OFF(GPIO_SPI1_DRDY5_BMI055_GYRO)
#define GPIO_DRDY_OFF_SPI1_DRDY6_BMI055_ACC _PIN_OFF(GPIO_SPI1_DRDY6_BMI055_ACC)
#define GPIO_DRDY_OFF_SPI5_DRDY7_EXTERNAL1 _PIN_OFF(GPIO_SPI5_DRDY7_EXTERNAL1)
/* SPI1 off */
#define GPIO_SPI1_SCK_OFF _PIN_OFF(GPIO_SPI1_SCK)
@ -197,7 +198,7 @@ __BEGIN_DECLS
#define ADC_5V_RAIL_SENSE 4 /* NOT to FMUv5 spec on test HW ONLY - delete this on when running on FMUv5 spec-ed HW */
#define ADC_RC_RSSI_CHANNEL 8
#define ADC_SCALED_V5 10
#define ADC_SCALED_V3V3 11
#define ADC_SCALED_VDD_3V3_SENSORS 11
#define ADC_INT_3 12
#define ADC_INT_4 13
#define ADC_INT_5 14
@ -290,13 +291,13 @@ __BEGIN_DECLS
#define GPIO_POWER_IN_B /* PG2 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTG|GPIO_PIN2)
#define GPIO_POWER_IN_C /* PG3 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTG|GPIO_PIN3)
#define GPIO_VDD_BRICK_VALID /* PB10 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTB|GPIO_PIN10)
#define GPIO_VDD_3V3_SENSORS_EN /* PE3 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN3)
#define GPIO_SPEKTRUM_POWER_EN /* PE4 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN4)
#define GPIO_PERIPH_5V_EN /* PG4 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN4)
#define GPIO_VDD_5V_RC_EN /* PG5 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN5)
#define GPIO_VDD_5V_WIFI_EN /* PG6 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN5)
#define GPIO_VDD_3V3V_SD_CARD_EN /* PG7 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTG|GPIO_PIN7)
#define GPIO_VDD_BRICK_VALID /* PB10 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTB|GPIO_PIN10)
#define GPIO_VDD_3V3_SENSORS_EN /* PE3 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN3)
#define GPIO_VDD_3V3_SPEKTRUM_POWER_EN /* PE4 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN4)
#define GPIO_PERIPH_5V_EN /* PG4 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN4)
#define GPIO_VDD_5V_RC_EN /* PG5 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN5)
#define GPIO_VDD_5V_WIFI_EN /* PG6 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN5)
#define GPIO_VDD_3V3V_SD_CARD_EN /* PG7 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTG|GPIO_PIN7)
/* Active Low SD Card Power enable */
@ -305,10 +306,10 @@ __BEGIN_DECLS
#define GPIO_VDD_5V_PERIPH_OC /* PE15 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTE|GPIO_PIN15)
/* Tone alarm output */
#define TONE_ALARM_TIMER 12 /* timer 12 */
#define TONE_ALARM_CHANNEL /* PH6 TIM12_CH1 */ 1 /* channel 1 */
#define GPIO_TONE_ALARM_IDLE /* PH6 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTH|GPIO_PIN6)
#define GPIO_TONE_ALARM /* PH6 */ (GPIO_ALT|GPIO_AF1|GPIO_SPEED_2MHz|GPIO_PUSHPULL|GPIO_PORTH|GPIO_PIN6)
#define TONE_ALARM_TIMER 9 /* timer 9 */
#define TONE_ALARM_CHANNEL /* PE5 TIM9_CH1 */ 1 /* channel 1 */
#define GPIO_TONE_ALARM_IDLE /* PE5 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTE|GPIO_PIN5)
#define GPIO_TONE_ALARM /* PE5 */ (GPIO_ALT|GPIO_AF1|GPIO_SPEED_2MHz|GPIO_PUSHPULL|GPIO_PORTE|GPIO_PIN5)
/* USB OTG FS
*
@ -335,15 +336,15 @@ __BEGIN_DECLS
#define GPIO_RSSI_IN /* PB0 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTB|GPIO_PIN0)
#define GPIO_LED_SAFETY /* PE12 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN12)
#define GPIO_BTN_SAFETY /* PE10 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTE|GPIO_PIN10)
#define GPIO_nSAFETY_SWITCH_LED_OUT /* PE12 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTE|GPIO_PIN12)
#define GPIO_SAFETY_SWITCH_IN /* PE10 */ (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTE|GPIO_PIN10)
#define INVERT_RC_INPUT(_invert_true) board_rc_input(_invert_true);
/* Power switch controls ******************************************************/
#define SPEKTRUM_POWER(_on_true) px4_arch_gpiowrite(GPIO_SPEKTRUM_POWER_EN, (_on_true))
#define SPEKTRUM_POWER(_on_true) px4_arch_gpiowrite(GPIO_VDD_3V3_SPEKTRUM_POWER_EN, (_on_true))
/*
* FMUv5 has a separate RC_IN
@ -400,7 +401,7 @@ __BEGIN_DECLS
{GPIO_POWER_IN_C, 0, 0}, \
{0, GPIO_VDD_3V3_SENSORS_EN, 0}, \
{GPIO_VDD_BRICK_VALID, 0, 0}, \
{0, GPIO_SPEKTRUM_POWER_EN, 0}, \
{0, GPIO_VDD_3V3_SPEKTRUM_POWER_EN, 0}, \
{0, GPIO_PERIPH_5V_EN, 0}, \
{0, GPIO_VDD_5V_RC_EN, 0}, \
{0, GPIO_VDD_5V_WIFI_EN, 0}, \
@ -424,7 +425,7 @@ __BEGIN_DECLS
#define GPIO_3V3_SENSORS_EN (1<<9) /**< PE3 - VDD_3V3_SENSORS_EN */
#define GPIO_BRICK_VALID (1<<10) /**< PB10 - !VDD_BRICK_VALID */
#define GPIO_SPEKTRUM_POWER (1<<11) /**< PE4 - GPIO_SPEKTRUM_POWER_EN */
#define GPIO_SPEKTRUM_POWER (1<<11) /**< PE4 - GPIO_VDD_3V3_SPEKTRUM_POWER_EN */
#define GPIO_PERIPH_5V_POWER_EN (1<<12) /**< PG4 - GPIO_PERIPH_5V_EN */
#define GPIO_RC_POWER_EN (1<<13) /**< PG5 - GPIO_VDD_5V_RC_EN */

View File

@ -254,8 +254,8 @@ stm32_boardinitialize(void)
stm32_configgpio(GPIO_VDD_5V_WIFI_EN);
stm32_configgpio(GPIO_SPEKTRUM_POWER_EN);
stm32_configgpio(GPIO_LED_SAFETY);
stm32_configgpio(GPIO_BTN_SAFETY);
stm32_configgpio(GPIO_nSAFETY_SWITCH_LED_OUT);
stm32_configgpio(GPIO_SAFETY_SWITCH_IN);
/* configure SPI interfaces */
stm32_spiinitialize();

View File

@ -69,9 +69,9 @@ static bool nuttx_owns_leds = true;
static const uint8_t xlatpx4[] = {1, 2, 4, 0};
# define xlat(p) xlatpx4[(p)]
static uint32_t g_ledmap[] = {
GPIO_LED_GREEN, // Indexed by BOARD_LED_GREEN
GPIO_LED_BLUE, // Indexed by BOARD_LED_BLUE
GPIO_LED_RED, // Indexed by BOARD_LED_RED
GPIO_nLED_GREEN, // Indexed by BOARD_LED_GREEN
GPIO_nLED_BLUE, // Indexed by BOARD_LED_BLUE
GPIO_nLED_RED, // Indexed by BOARD_LED_RED
GPIO_LED_SAFETY, // Indexed by LED_SAFETY by xlatpx4
};
@ -79,10 +79,10 @@ static uint32_t g_ledmap[] = {
# define xlat(p) (p)
static uint32_t g_ledmap[] = {
GPIO_LED_BLUE, // Indexed by LED_BLUE
GPIO_LED_RED, // Indexed by LED_RED, LED_AMBER
GPIO_nLED_BLUE, // Indexed by LED_BLUE
GPIO_nLED_RED, // Indexed by LED_RED, LED_AMBER
GPIO_LED_SAFETY, // Indexed by LED_SAFETY
GPIO_LED_GREEN, // Indexed by LED_GREEN
GPIO_nLED_GREEN, // Indexed by LED_GREEN
};
#endif

View File

@ -489,12 +489,13 @@ __EXPORT void board_spi_reset(int ms)
#if BOARD_USE_DRDY
stm32_configgpio(GPIO_DRDY_OFF_ICM20689_DRDY1);
stm32_configgpio(GPIO_DRDY_OFF_BMI055_DRDY2_GYRO);
stm32_configgpio(GPIO_DRDY_OFF_BMI055_DRDY3_ACC);
stm32_configgpio(GPIO_DRDY_OFF_ICM20602_DRDY4);
stm32_configgpio(GPIO_DRDY_OFF_BMI055_DRDY5_GYRO);
stm32_configgpio(GPIO_DRDY_OFF_BMI055_DRDY6_ACC);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY1_ICM20689);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY2_BMI055_GYRO);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY3_BMI055_ACC);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY4_ICM20602);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY5_BMI055_GYRO);
stm32_configgpio(GPIO_DRDY_OFF_SPI1_DRDY6_BMI055_ACC);
stm32_configgpio(GPIO_DRDY_OFF_SPI5_DRDY7_EXTERNAL1);
#endif
/* set the sensor rail off */
stm32_gpiowrite(GPIO_VDD_3V3_SENSORS_EN, 0);
@ -523,12 +524,13 @@ __EXPORT void board_spi_reset(int ms)
stm32_configgpio(GPIO_SPI1_MOSI);
#if BOARD_USE_DRDY
stm32_configgpio(GPIO_ICM20689_DRDY1);
stm32_configgpio(GPIO_BMI055_DRDY2_GYRO);
stm32_configgpio(GPIO_BMI055_DRDY3_ACC);
stm32_configgpio(GPIO_ICM20602_DRDY4);
stm32_configgpio(GPIO_BMI055_DRDY5_GYRO);
stm32_configgpio(GPIO_BMI055_DRDY6_ACC);
stm32_configgpio(GPIO_SPI1_DRDY1_ICM20689);
stm32_configgpio(GPIO_SPI1_DRDY2_BMI055_GYRO);
stm32_configgpio(GPIO_SPI1_DRDY3_BMI055_ACC);
stm32_configgpio(GPIO_SPI1_DRDY4_ICM20602);
stm32_configgpio(GPIO_SPI1_DRDY5_BMI055_GYRO);
stm32_configgpio(GPIO_SPI1_DRDY6_BMI055_ACC);
stm32_configgpio(GPIO_SPI5_DRDY7_EXTERNAL1);
#endif
}