开源飞控ardupilot硬件描述文件讲解-以CUAV-X7为例
环境描述
1.ardupilot软件版本:Plane-4.5.5
2.编辑软件:VS code
3.编译软件:Cygwin64
X7硬件参数
X7各系列所用主控制器一样
bootloader硬件描述文件讲解
源代码中路径:ardupilot\libraries\AP_HAL_ChibiOS\hwdef\CUAV-X7\hwdef-bl.dat
代码部分 #后面带的是注释
# hw definition file for processing by chibios_hwdef.py
# for CUAV-X7 board
# MCU class and specific type 定义主控制器型号,这里X7用的是STM32H743
MCU STM32H7xx STM32H743xx
# crystal frequency 晶振频率
OSCILLATOR_HZ 16000000
# board ID for firmware load 板子ID,要和用户硬件描述程序一致
APJ_BOARD_ID 1010
# FLASH大小
FLASH_SIZE_KB 2048
# bootloader is installed at zero offset 程序地址偏移
FLASH_RESERVE_START_KB 0
# the location where the bootloader will put the firmware
# the H743 has 128k sectors 引导bootloader程序预留FLASH大小
FLASH_BOOTLOADER_LOAD_KB 128
# ChibiOS system timer ChibiOS系统所用timer
STM32_ST_USE_TIMER 2
PI5 LED_RED OUTPUT OPENDRAIN HIGH # red 三色灯接口,代表红灯接口是PI5 输出模式 默认输出高
PI7 LED_ACTIVITY OUTPUT OPENDRAIN HIGH # blue
PI6 LED_BOOTLOADER OUTPUT OPENDRAIN HIGH # green
# 定义输出低电平时LED点亮
define HAL_LED_ON 0
# order of UARTs (and USB) 定义串口顺序
SERIAL_ORDER OTG1 UART7
# UART7 is debug 定义串口7的接收和发送引脚 串口7无DMA
PF6 UART7_RX UART7 NODMA
PE8 UART7_TX UART7 NODMA
# 定义USB口的引脚是PA11和PA12
PA11 OTG_FS_DM OTG1
PA12 OTG_FS_DP OTG1
# 定义SWD的接口
PA13 JTMS-SWDIO SWD
PA14 JTCK-SWCLK SWD
# SD7代表UART7 这里的意思是bootloader调试串口是UART7
define BOOTLOADER_DEBUG SD7
# Add CS pins to ensure they are high in bootloader 定义所用传感器使能引脚
PF10 ADIS16470_CS CS
PF2 RM3100_CS CS
PG6 ICM20689_CS CS SPEED_VERYLOW
PI12 ICM20649_CS CS SPEED_VERYLOW
PE15 ICM20689_BOARD_CS CS SPEED_VERYLOW
PF3 BMI088_A_CS CS
PF4 BMI088_G_CS CS
PF5 FRAM_CS CS SPEED_VERYLOW
PG10 MS5611_IMU_CS CS
PI8 MS5611_BOARD_CS CS
PI4 EXT1_CS1 CS
PI10 EXT1_CS2 CS
PI13 EXT1_CS3 CS