@[TOC](Aocoda-RC F405V2 FC(STM32F405RGT6 v.s. AT32F435RGT7) IO Definitions)
Aocoda-RC F405V2飞控支持betaflight/inav/Ardupilot固件,是一款固件兼容性非常不错的开源硬件。
之前我们对比过STM32F405RGT6 v.s. AT32F435RGT7 Comparison for Flight Controller,整体对比:
通过betaflight开源,可以非常快速的了解硬件的引脚对应关系:
若将该芯片直接替换成AT32F435RGT7,在硬件升级上需要做哪些改动或者调整/优化?
STM32F405RGT6飞控引脚连线参考图:

#define GYRO_1_CS_PIN PA4
#define SPI1_SCK_PIN PA5
#define SPI1_SDI_PIN PA6
#define SPI1_SDO_PIN PA7
#define GYRO_1_EXTI_PIN PC4


#define MAX7456_SPI_CS_PIN PA13
#define SPI2_SCK_PIN PB13
#define SPI2_SDI_PIN PB14
#define SPI2_SDO_PIN PB15


#define FLASH_CS_PIN PC0
#define SPI3_SCK_PIN PB3
#define SPI3_SDI_PIN PB4
#define SPI3_SDO_PIN PB5


#define I2C1_SCL_PIN PB6
#define I2C1_SDA_PIN PB7


#define USB_DETECT_PIN PB12

# The normal usage of this ordering is:
# 1) SERIAL0: console (primary mavlink, usually USB)
# 2) SERIAL1: GPS
# 3) SERIAL2: RC input
# 4) SERIAL3: ESC Telemetry
# 5) SERIAL4: VTX
# 6) SERIAL5: Telemetry
#define UART1_TX_PIN PA9
#define UART1_RX_PIN PA10

#define UART2_TX_PIN PA2
#define UART2_RX_PIN PA3

注:PA3有定时器资源,可用于单线协议。
#define UART3_TX_PIN PC10
#define UART3_RX_PIN PC11

#define UART4_TX_PIN PA0
#define UART4_RX_PIN PA1

#define UART5_TX_PIN PC12
#define UART5_RX_PIN PD2


#define MOTOR1_PIN PC6
#define MOTOR2_PIN PC7
#define MOTOR3_PIN PC8
#define MOTOR4_PIN PC9
#define MOTOR5_PIN PA15
#define MOTOR6_PIN PA8
#define MOTOR7_PIN PB10
#define MOTOR8_PIN PB11
TIMER_PIN_MAP( 1, PC6 , 2, 1) \
TIMER_PIN_MAP( 2, PC7 , 2, 1) \
TIMER_PIN_MAP( 3, PC8 , 2, 1) \
TIMER_PIN_MAP( 4, PC9 , 2, 0) \
TIMER_PIN_MAP( 5, PA15, 1, 0) \
TIMER_PIN_MAP( 6, PA8 , 1, 1) \
TIMER_PIN_MAP( 7, PB10, 1, 0) \
TIMER_PIN_MAP( 8, PB11, 1, 0) \



#define ADC_VBAT_PIN PC2
#define ADC_RSSI_PIN PC3
#define ADC_CURR_PIN PC1

#define LED0_PIN PC13

#define LED_STRIP_PIN PB1
TIMER_PIN_MAP( 9, PB1 , 2, 0)

#define BEEPER_PIN PB8

STM32F405RGT6 : VCAP_1/VCAP_2

AT32F435RGT7: PH3/PH2


基本一致。







【1】STM32F405/415
【2】AT32F435 Series
【3】STM32F405RGT6 v.s. AT32F435RGT7 Comparison for Flight Controller