ArduPilot GreenSight UltraBlue 飞控硬件指南:连接器引脚、UART 映射与 PWM/GPIO 配置 📅 发布时间:2026/9/14 10:36:18 👁 浏览次数: ArduPilot GreenSight UltraBlue 飞控硬件指南连接器引脚、UART 映射与 PWM/GPIO 配置【免费下载链接】ardupilotArduPlane, ArduCopter, ArduRover, ArduSub source项目地址: https://gitcode.com/GitHub_Trending/ar/ardupilot本篇技术指南围绕 ArduPilot 仓库中 GreenSight UltraBlue 飞行控制器 的官方硬件说明展开覆盖其 STM32H743 NVIDIA Jetson 双计算单元的板载资源9 个 UART 端口映射、18 个接口的逐引脚定义、RC 输入协议接入PPM/SBUS/DSM/CRSF、5 组 PWM 输出与 GPIO 编号规则、电池监测接线以及固件烧录方式。读完后你可以完成 UltraBlue 上 GPS、遥控器、ESC 遥测、负载与电池 BMS 的接线并正确配置对应的 ArduPilot 参数。1. 板卡硬件概述UltraBlue 是一款由 GreenSight 销售的飞控板其最大特点是双计算单元架构板载 STM32H743 微控制器运行 ArduPilot同时集成一颗 NVIDIA Jetson 系统级模块SOM作为伴随计算机Companion Computer二者通过共享的 CAN、UART、I2C 和以太网互联。官方说明中的硬件特性如下均可在硬件定义文件 hwdef.dat 中找到对应实现STM32H743 微控制器hwdef.dat第 4 行声明MCU STM32H7xx STM32H743xx晶振为 16 MHzOSCILLATOR_HZ 16000000闪存 2 MB由于空间充裕采用-O2速度优先优化NVIDIA Jetson SOM对应板上 JP17Jetson 散热风扇、JP19JET_SER_1、JP20JET_SPI、J2/J3 负载接口等一整套伴机接口三路 IMU两颗 BMI088 一颗 ICM20649hwdef.dat第 281-283 行定义了三个 IMU 设备其中 BMI088_U11/U12 分别挂在 SPI1/SPI4ICM20649 挂在 SPI6且 ICM20649 使用了 8 MHz 高速率和 DRDYData ReaDY数据就绪中断引脚 PH5IMU 温度控制内置加热器hwdef.dat第 236-238 行定义HEATER_ENPA8GPIO 80并置位HAL_HAVE_IMU_HEATER 1即 ArduPilot 的INS_HEATER_ON等加热器参数在该板上有硬件支持DPS310 SPI 气压计hwdef.dat第 273/278 行将其挂在 SPI6BARO DPS310 SPI:dps310microSD 卡槽第 298-304 行配置了 SDMMC1 的 D0-D3/CK/CMD 引脚并启用 FAT 文件系统HAL_OS_FATFS_IO 1可用于日志与参数存储DF9-41S-1V(32) Hirose Mezzanine 连接器J18 路 ESC/Servo 输出、电池电压/电流 ADC、BMS I2C 等主接口都从该夹层连接器引出。此外该板还定义了 RAMTRON FRAM16 KB用于参数存储HAL_WITH_RAMTRON 1、独立的 Safety 开关HAL_HAVE_SAFETY_SWITCH 1对应 JP8 的 Safety 输入/指示灯引脚以及 pixracer 风格三颗 RGB 指示灯GPIO 0/1/2对应 JP8 的 RGB LED 驱动通道。2. UART 端口映射官方文档给出的 UART 映射如下与 hwdef.dat 第 39 行的SERIAL_ORDER声明逐一对应SERIAL_ORDER OTG1 USART2 USART6 USART1 UART4 UART8 USART3 UART7 OTG2ArduPilot 端口物理外设用途备注SERIAL0USB (OTG1)console 控制台SERIAL1USART2Jetson 伴机遥测无 DMASERIAL2USART6telem2带 CTS/RTS 流控引脚SERIAL3USART1主 GPS无 DMANODMASERIAL4UART4GPS2无 DMASERIAL5UART8USER / RCINDSM/PPM/SBusSERIAL6USART3ESC 遥测默认协议即 ESC 遥测SERIAL7UART7USER / 调试 TX-RX无 DMASERIAL8USB2 (OTG2)第二 USB 串行端点值得注意的底层细节hwdef.dat第 167 行define DEFAULT_SERIAL6_PROTOCOL SerialProtocol_ESCTelemetry即 SERIAL6 出厂默认就是 ESC 遥测协议——因为该端口从 Mezzanine 连接器引出J1 第 18 脚 ESC Telemetry Serial Port Input设计上专门留给 ESC 遥测从源码结构看USART2Jetson 遥测、USART1GPS1、UART4GPS2、UART7调试均标注NODMA意味着这些端口收发不占用 DMA 通道带宽受限场景如高波特率 GPS应优先选择带 DMA 的端口两个 USB 端点引脚在第 42-43 行定义PA11/PA12 OTG_FS DM/DP即 SERIAL0。3. RC 输入RCIN、PPM/SBUS、DSM 与双向协议官方说明中 RC 输入部分的技术含量最高逐条解读并结合源码佐证RCIN 单向协议。RCIN 引脚在物理上映射到 UART8、默认配置为 SERIAL5可用于 ArduPilot 支持的大多数单向接收机协议因此SERIAL5_PROTOCOL默认为 23RCIN。协议编号 23 可在 AP_SerialManager.h 中确认SerialProtocol_RCIN 23。PPM接 JP1 连接器。PPM 只能走 JP1因为它依赖一个专门的硬件中断——hwdef.dat第 205 行PB4 TIM3_CH1 TIM3 RCININT PULLUP LOW定义的 RCIN 中断输入就是为此存在SBUS同样接 JP1Spektrum/DSM接 JP4 连接器。hwdef.dat第 120 行定义了 DSM 专用电源轨VDD_3V3_DSM_ENPA9GPIO 72第 200-202 行置位HAL_SPEKTRUM_PWR_ENABLED 1并指定HAL_GPIO_SPEKTRUM_PWR 72、HAL_GPIO_SPEKTRUM_RC 73——从源码结构看DSM 绑定需要给接收机断电重上电独立电源轨正是为满足这一需求。双向协议CRSF/ELRS、SRXL2、FPort。这类协议需要完整 UARTTXRX。若 FPort 只接在 RCIN 上则只能提供 RC 通道、拿不到遥测。要获得 CRSF 内嵌遥测、FPort 遥测或 SRXL2 能力需要用完整 UART 接收机信号官方给出的 SERIAL2telem2示例配置如下场景参数配置接收机协议SERIAL2_PROTOCOL 23RCIN 协议族FPortSERIAL2_OPTIONS 15CRSFSERIAL2_OPTIONS 0SRXL2SERIAL2_OPTIONS 4且只接 TX 引脚4. 连接器引脚总表除特别说明外板上所有连接器均为 JST GH 类型。以下完整继承官方文档的全部接口定义原文见 README.md。JP1 - PPM/SBUS 输入飞控 RC 输入引脚信号电平1PPM/SBUS3.3V2VCC5V3GNDGNDJP9 - 模拟量输入飞控 ADC引脚信号电平1VCC5V2Autopilot 模拟量输入0 ~ 6.6V3GNDGNDJP9 的模拟量输入对应hwdef.dat第 217 行的PA4 SPARE2_ADC1 ADC1 SCALE(2)ADC6.6 注释。JP16 - API2C4飞控 I2C 总线 4引脚信号电平1VCC5V2I2C Bus 4 时钟 (SCL)3.3V3I2C Bus 4 数据 (SDA)3.3V4GNDGND对应hwdef.dat第 104-105 行的 I2C4 引脚PF14 SCL / PF15 SDA。JP14 - AP Debug飞控调试 UART引脚信号电平1VCC5V2调试 UART TX3.3V3调试 UART RX3.3V4GNDGND即 UART7SERIAL7无 DMA。JP4 - Spektrum/DSM飞控 RC 输入引脚信号电平1VCC3.3V2GNDGND3Spektrum/DSM3.3VJP18 - Autopilot SPI外部 SPI5引脚信号电平1VCC5V2SPI5 Clock3.3V3SPI5 MISO3.3V4SPI5 MOSI3.3V5SPI5 外部片选 13.3V6SPI5 外部片选 23.3V7SPI5 外部片选 33.3V8GNDGND对应hwdef.dat第 65-67 行的 SPI5 引脚PF7 SCK / PF8 MISO / PF9 MOSI与第 87-89 行三个外部片选EXT1_CS1/CS2/CS3。该总线用于外接传感器注意它不承载板载 IMU/气压计那些在 SPI1/4/6。JP17 - Jetson 散热风扇伴机引脚信号电平1GNDGND2VCC5V3Jetson PWM 测速 (Tach) 输入3.3V4Jetson PWM 风扇输出3.3VJP3 - CAN 1飞控 Jetson 共享注意CAN 1 同时连接 Jetson、负载和飞控DroneCAN 生态的关键总线。引脚信号电平1VCC5V2CAN High3.3V3CAN Low3.3V4GNDGND对应hwdef.dat第 224-225 行的 CAN1PI9 RX / PH13 TX。JP11 - CAN 2仅飞控引脚信号电平1VCC5V2CAN High3.3V3CAN Low3.3V4GNDGND对应hwdef.dat第 228-229 行的 CAN2PB12 RX / PB13 TX。两条 CAN 总线的静默控制脚分别为 GPIO 70/71第 232-233 行。JP10 - 以太网伴机官方特别说明受空间限制JP10 是电容耦合的以太网口正式支持的是通过 4 个引脚对应标准 RJ-45 的 MDI 0/1 差分对即橙色/绿色线对实现的 10/100 通信。虽然这些线对是电容耦合的但实验室用约 1 米长的线缆、启用全部 8 脚实测验证过千兆能力更长的线缆下超过 10/100 的速率可能不稳定、不作保证。双 10/100 连接在理论上也可能实现但完全取决于 Jetson 模块自身能力。引脚信号电平1Jetson 以太网电容耦合3.3V2Jetson 以太网电容耦合3.3V3Jetson 以太网电容耦合3.3V4Jetson 以太网电容耦合3.3V5Jetson 以太网电容耦合10/1003.3V6Jetson 以太网电容耦合10/1003.3V7Jetson 以太网电容耦合10/1003.3V8Jetson 以太网电容耦合10/1003.3VJP13 - Jetson Debug伴机 UART引脚信号电平1Jetson UART 调试 TX3.3V2Jetson UART 调试 RX3.3V3GNDGNDJP2 - AP Telem 2飞控 UARTUSART6/SERIAL2引脚信号电平1VCC5V2Telem2 UART TX3.3V3Telem2 UART RX3.3V4Telem2 UART CTS3.3V5Telem2 UART RTS3.3V6GNDGND注意该接口带 CTS/RTS 流控引脚hwdef.dat第 157-158 行适合作为高可靠遥测链路也常按第 3 节方案借用作 RC 双向协议端口。JP19 - JET_SER_1伴机 UART引脚信号电平1VCC5V2Jetson UART 1 TX3.3V3Jetson UART 1 RX3.3V4Jetson UART 1 CTS3.3V5Jetson UART 1 RTS3.3V6GNDGNDJP8 - RGB LED 与电源按键飞控 伴机 UI 接口引脚信号电平1VCC5V2RGB LED 驱动红通道低边3.3V3RGB LED 驱动绿通道低边3.3V4RGB LED 驱动蓝通道低边3.3V5电源按键直通到电源板3.3V6接入 Jetson 的 Dell 1W 输入3.3V7Safety 指示灯脉冲3.3V8Safety 开关输入到飞控3.3V9GNDGND其中 Safety 指示灯/开关对应hwdef.dat第 322-325 行的HAL_HAVE_SAFETY_SWITCH 1、PE12 LED_SAFETY输出与PE10 SAFETY_IN输入RGB 三通道由 ArduPilot 的 AP_Notify RGB 指示灯框架驱动第 306-316 行pixracer 风格三灯。JP7 - GPS 2飞控 UART/I2C引脚信号电平1VCC5V2GPS2 UART TX3.3V3GPS2 UART RX3.3V4I2C Bus 2 时钟GPS2 SCL3.3V5I2C Bus 2 数据GPS2 SDA3.3V6GNDGND对应hwdef.dat第 145-147 行的 UART4PD0 RX / PD1 TXNODMA与第 96-97 行的 I2C2PF1 SCL / PF0 SDA。JP5 - Jetson I2C伴机引脚信号电平1GNDGND2Jetson I2C Bus 1 时钟3.3V3Jetson I2C Bus 1 数据3.3V4VCC5VJP6 - GPS 1飞控 UART/I2C引脚信号电平1VCC5V2GPS1 UART TX3.3V3GPS1 UART RX3.3V4I2C Bus 1 时钟GPS1 SCL3.3V5I2C Bus 1 数据GPS1 SDA3.3V6GNDGND对应hwdef.dat第 141-143 行的 USART1PB7 RX / PB6 TXNODMA与第 92-93 行的 I2C1PB8 SCL / PB9 SDA。GPS 接口同时引出 I2C可外接走 I2C 的 GPS 模块。JP20 - JET_SPI伴机 SPI引脚信号电平1VCC5V2Jetson SPI 0 Clock3.3V3Jetson SPI 0 MISO3.3V4Jetson SPI 0 MOSI3.3V5Jetson SPI 0 片选 03.3V6GNDGNDJP12 - AP GPIO飞控 GPIO引脚信号电平1VCC5V2WS2812B LED3.3V3GPIO 593.3V4GPIO 603.3V5GPIO 613.3V6GPIO 623.3V7GPIO 633.3V8GNDGNDJP21 - I2S1I2S 从机/连接引脚信号电平1VCC5V2I2S1 Clock3.3V3I2S1 Data In3.3V4I2S1 Data Out3.3V5I2S1 Frame Select3.3V6GNDGNDJ2 / J3 - Jetson 负载 1 / 负载 2J2主负载与 J3副负载两个 Jetson 负载接口定义见官方文档中的引脚图J1 - Mezzanine 连接器注意1-19 的奇数引脚为 VDD_5V_IN21-41 的奇数引脚为 GND。对外引脚功能如下引脚用途2ESC/Servo 1 输出3.3V受保护4ESC/Servo 2 输出3.3V受保护6ESC/Servo 3 输出3.3V受保护8ESC/Servo 4 输出3.3V受保护10ESC/Servo 5 输出3.3V受保护12ESC/Servo 6 输出3.3V受保护14ESC/Servo 7 输出3.3V受保护16ESC/Servo 8 输出3.3V受保护18ESC 遥测串口输入20电源按键信号 GPIO直通按键面板 JP822Jetson 关机请求信号GPIO193.3V 上拉3.3V 逻辑24N/C空脚26BMS I2C SDA可在 Jetson 与飞控之间切换3.3V 逻辑28BMS I2C SCL可在 Jetson 与飞控之间切换3.3V 逻辑30电池电压输入 - 飞控 ADC 0-3.3V1k 串联无分压32电池电流输入 - 飞控 ADC 0-3.3V1k 串联无分压34Jetson GPIO 输出Enable Aux Bus 13.3V高电平使能上电36Jetson GPIO 输出Enable Aux Bus 23.3V38串口 LED 控制器输出AP FMU CAP1 端口3.3V40到 Jetson 的 One Wire 总线3.3V 上拉5. PWM 输出分组UltraBlue 支持最多16 路 PWM 输出分为 5 组hwdef.dat第 172-190 行有逐引脚映射组PWM 通道定时器限制1PWM 1-4TIM52PWM 5-8TIM43PWM 9-12TIM14PWM 13-14TIM12无 DMA、不支持 DShot5PWM 15-16TIM8相机触发脚见第 6 节关键约束与源码佐证同组通道必须使用相同的输出速率和协议。hwdef.dat第 170-171 行的注释明确了这一点PWM outputs on the same channel must all have the same output protocolPWM 1-8 支持双向 DShotTIM5/TIM4 全部 8 个通道hwdef.dat第 172-179 行即官方所称的 1-8 通道PWM 13/14TIM12在第 185-186 行标注NODMA与无 DMA、无 DShot的说明一致另外第 196 行还定义了蜂鸣器 PWMPE5TIM15GPIO 77不占 16 路用户 PWM。6. GPIO 与相机控制PWM 复用为 GPIO。全部 16 路 PWM 输出都可以用作 GPIO继电器、按键、RPM 测速等使用方式是将对应通道的SERVOx_FUNCTION设为-1。PIN 参数编号规则。用于RELAYn_PIN、RPMx_PIN等 PIN 参数的 GPIO 编号PWMPINPWMPINPWMPINPWMPINPWM150PWM554PWM958PWM1362PWM251PWM655PWM1059PWM1463PWM352PWM756PWM1160PWM453PWM857PWM1261这些编号直接来自hwdef.dat中各 PWM 引脚的GPIO(50)~GPIO(63)声明。相机控制。相机触发CAM_TRIG与触发返回CAM_TRIG_RET两个引脚位于 PWM15/PWM16TIM8GPIO 64/65并路由到 J2Jetson 负载 1连接器GPIO 64camera trigger默认由RELAY1控制GPIO 65camera trigger return默认由RELAY2控制。hwdef.dat第 188-193 行给出了底层依据PJ6 TIM8_CH2 PWM(15) GPIO(64)、PJ7 TIM8_CH2N PWM(16) GPIO(65)以及define RELAY1_PIN_DEFAULT 64、define RELAY2_PIN_DEFAULT 65。板载默认参数文件 defaults.parm 将SERVO15_FUNCTION与SERVO16_FUNCTION出厂置为 -1注释解释为Mezzanine 连接器上的 CAM_TRIG/CAM_TRIG_RET 本意是 GPIO继电器控制虽然也能当 PWM 用因此默认先按 GPIO 处理。若你要用 PWM15/16 做真正的电机通道需把这两个函数参数改为对应电机功能。7. 电池监测J1 Mezzanine 连接器提供电池电压/电流 ADC 输入引脚 30/32均为 0-3.3V、1k 串联电阻、无分压同时引出一路 I2C 总线Bus 1即 I2C3用于连接 SMBus 电池与 BMS。接 SMBus 电池/BMS 时BATT_I2C_BUS参数应设为 1。hwdef.dat中的对应实现第 209-212 行PA0 BATT_VOLTAGE_SENS ADC1、PA1 BATT_CURRENT_SENS ADC1并定义HAL_BATT_VOLT_PIN 16/HAL_BATT_CURR_PIN 17第 213-214 行HAL_BATT_VOLT_SCALE 18.0、HAL_BATT_CURR_SCALE 24.0——从源码结构看这是板上默认分压/采样比例若外部硬件如 J1 引脚外接电路与该默认不同需按实际硬件调整BATT_VOLTAGE_SCALE/BATT_CURRENT_SCALE参数第 99-111 行I2C3PH7 SCL / PH8 SDA注释为 for internal mag and BMS且I2C_ORDER I2C1 I2C3 I2C2 I2C4使 I2C3 成为总线编号10 基与BATT_I2C_BUS 1的说明互相印证。板上还内置了板载地磁hwdef.dat第 287-294 行注明Rev 4 使用 IST308Rev 5/6 使用 IST8310地址 0x0E挂在 I2C:1 即 I2C3这与 BMS 共享该内部 I2C 总线配置 BMS 地址时应注意避让地磁地址。8. 固件烧录该板出厂预装了与 ArduPilot 兼容的 bootloader可以使用任何 ArduPilot 兼容地面站直接加载*.apj固件文件MAVLink 固件上传。相关板级定义板 IDAPJ_BOARD_ID AP_HW_GreenSight_UltraBluehwdef.dat 第 14 行这是地面站识别/选择正确固件的关键标识闪存布局2 MB 闪存bootloader 占据首个扇区128 KB固件从FLASH_RESERVE_START_KB 128之后开始第 334-337 行ENABLE_DFU_BOOT 1允许通过 DFU 方式更新 bootloader 本身若固件以--secure-bl构建则 DFU 被禁用第 339-340 行BUILD_ABIN True构建用于bootloader 从 SD 卡刷入的 ABIN 格式串口 LEDJ1 引脚 38AP FMU CAP1 端口可接串口 LED 模块由SERIAL_LED相关参数驱动。9. 关键文件索引文件说明libraries/AP_HAL_ChibiOS/hwdef/GreenSightUltraBlue/README.md本文依据的官方硬件说明libraries/AP_HAL_ChibiOS/hwdef/GreenSightUltraBlue/hwdef.dat主硬件定义引脚、串口顺序、SPI/I2C 设备表、PWM/GPIO 映射libraries/AP_HAL_ChibiOS/hwdef/GreenSightUltraBlue/hwdef-bl.datBootloader 用的硬件定义产品名 UltraBlue-BLlibraries/AP_HAL_ChibiOS/hwdef/GreenSightUltraBlue/defaults.parm出厂默认参数SERVO15/16_FUNCTION -1libraries/AP_SerialManager/AP_SerialManager.h串口协议编号定义RCIN 23 等接线与配置总原则先按第 2/4 节的引脚表确认物理接口再用SERIALn_PROTOCOL、SERIALn_OPTIONS、SERVOx_FUNCTION、RELAYx_PIN、BATT_I2C_BUS等参数完成逻辑映射凡同组 PWM 必须协议一致相机触发脚默认保留给 RELAY1/RELAY2双向 RC 协议请避开无 DMA 的 GPS/调试端口优先选用带 DMA 的 UART。【免费下载链接】ardupilotArduPlane, ArduCopter, ArduRover, ArduSub source项目地址: https://gitcode.com/GitHub_Trending/ar/ardupilot创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考