跳至内容

SWD 调试端口

PX4 在 ARM Cortex-M 微控制器上运行,这些微控制器包含专用硬件,可通过 串行线调试 (SWD) 接口和非侵入式剖析,并通过 串行导线输出 (SWO)跟踪 引脚.

SWD 调试接口允许对微控制器处理器和外设进行直接、低级的硬件访问,因此不依赖于设备上的任何软件。因此,它可用于调试引导加载程序和 NuttX 等操作系统。

调试信号

调试时需要四个信号(粗体字),其余为推荐信号。

名称类型说明
接地电源共同的潜力,共同的基础。
VREF电源目标参考电压允许调试探头在信号上使用电平转换器。
SWDIO输入/输出串行线调试数据引脚。
SWCLK输入串行线调试时钟引脚。
nRST输入复位引脚为可选项(n = 低电平有效)。
SWO输出单线跟踪异步数据输出可输出 ITM 和 DWT 数据。
TRACECK输出并行总线的跟踪时钟。
TRACED[0-3]输出跟踪 1、2 或 4 位同步数据总线。

硬件复位引脚是可选的,因为大多数器件也可以通过 SWD 线路复位。不过,通过按钮快速复位器件对开发工作非常有利。

SWO 引脚可发出纳秒级时间戳的低开销实时剖析数据,因此强烈建议调试时使用该引脚。

TRACE 引脚需要专门的调试探针来处理高带宽和随后的数据流解码。这些引脚通常无法访问,通常只能用于调试非常特殊的时序问题。

自动驾驶仪调试端口

飞行控制器通常提供单个调试端口,可同时显示 SWD 接口系统控制台.

Pixhawk 连接器标准 正式规定了每个 FMU 版本必须使用的端口。不过,仍有许多电路板使用不同的引脚或连接器,因此我们建议您查看 自动驾驶仪文档 以确认端口位置和引脚分配。

部分自动驾驶仪的调试端口位置和引脚布局链接如下:

自动驾驶仪调试端口
Holybro Pixhawk 6X-RT (FMUv6X-RT)Pixhawk 调试完毕
Holybro Pixhawk 6X (FMUv6x)Pixhawk 调试完毕
Holybro Pixhawk 5X (FMUv5x)Pixhawk 调试完毕
圣布鲁杜兰达尔Pixhawk 迷你调试器
Holybro Kakute F7焊盘
Holybro Pixhawk 4 Mini (FMUv5)Pixhawk 迷你调试器
Holybro Pixhawk 4 (FMUv5)Pixhawk 迷你调试器
Drotek Pixhawk 3 Pro (FMU-v4pro)Pixhawk 迷你调试器
CUAV V5+6 针 JST GH
Digikey: BM06B-GHS-TBT(LF)(SN)(N) (垂直安装)、 SM06B-GHS-TBT(LF)(SN)(N) (侧面安装)
CUAV V5nano6 针 JST GH
Digikey: BM06B-GHS-TBT(LF)(SN)(N) (垂直安装)、 SM06B-GHS-TBT(LF)(SN)(N) (侧面安装)
3DR PixhawkARM 10 针 JTAG 连接器(也用于 FMUv2 电路板,包括 ARM 10 针 JTAG 连接器): mRo Pixhawk, HobbyKing HKPilot32).

Pixhawk 连接器标准调试端口

Pixhawk 项目为不同版本的 Pixhawk FMU 定义了标准引脚和连接器类型:

TIP

检查您的 特定板 以确认所使用的端口。

FMU 版本Pixhawk 版本调试端口
FMUv2Pixhawk / Pixhawk 110 引脚 ARM 调试
FMUv3Pixhawk 26 针 SUR 调试
FMUv4Pixhawk 3Pixhawk 迷你调试器
FMUv5Pixhawk 4 FMUv5Pixhawk 迷你调试器
FMUv5XPixhawk 5XPixhawk 调试完毕
FMUv6Pixhawk 6Pixhawk 调试完毕
FMUv6XPixhawk 6XPixhawk 调试完毕
FMUv6X-RTPixhawk 6X-RTPixhawk 调试完毕

信息

FMU 和 Pixhawk 版本(仅)在 FMUv5X 之后保持一致。

Pixhawk 迷你调试器

Pixhawk 连接器标准 定义了 Pixhawk 迷你调试器, a 6 针 SH 调试端口 可访问两个 SWD 引脚和 系统控制台.

这在 FMUv4 和 FMUv5 中使用。

引脚布局如下图所示(调试所需的引脚用粗体标出):

针脚信号
1VREF
2控制台 TX
3控制台 RX
4SWDIO
5SWDCLK
6接地

调试端口定义包括以下焊盘(在电路板上连接器旁边):

垫子信号电压
1nRST+3.3V
2GPIO1+3.3V
3GPIO2+3.3V

插座是一个 6 针 JST SH - Digikey 编号: BM06B-SRSS-TBT(LF)(SN) (垂直安装)、 SM06B-SRSS-TBT(LF)(SN)(侧面安装)。

您可以使用 像这样的电缆.

6 针 JST SH 电缆

Pixhawk 调试完毕

Pixhawk 连接器标准 定义 Pixhawk 调试完毕, a 10 针 SH 调试端口 可访问两个 SWD 引脚和 系统控制台.这主要是将焊盘从 Pixhawk 迷你调试器 并增加了一个 SWO 引脚。

此端口指定用于 FMUv5x、FMUv6 和 FMUv6x。

引脚布局如下图所示(调试所需的引脚用粗体标出):

针脚信号
1VREF
2控制台 TX
3控制台 RX
4SWDIO
5SWDCLK
6SWO
7GPIO1
8GPIO2
9nRST
10接地

GPIO1/2 引脚是自由引脚,可用于在软件中生成信号,以便使用逻辑分析仪进行时序分析。

插座是一个 10 针 JST SH - Digikey 编号: BM10B-SRSS-TB(LF)(SN) (垂直安装)或 SM10B-SRSS-TB(LF)(SN) (侧面安装)。

您可以使用 像这样的电缆.

10 针 JST SH 电缆

用于 PX4 硬件的调试探头

飞行控制器通常提供 单调试端口SWD 接口系统控制台.

有几种调试探针经过测试并支持连接到其中一个或两个接口:

  • 世纪佳缘 J-Link:商用探头,无内置串行控制台,需要适配器。
  • 黑魔法探针GDB:集成 GDB 服务器和串行控制台,需要适配器。
  • STLink:性价比最高,集成串行控制台,适配器必须焊接。
  • MCU-Link:性价比最高,集成串行控制台,需要适配器。

连接调试端口的适配器可能随飞行控制器或调试探头一起提供。其他选项如下。

调试适配器

Holybro Pixhawk 调试适配器

Holybro Pixhawk 调试适配器强烈推荐 调试使用 Pixhawk 标准调试连接器之一的控制器时。

这是最简单的连接方式:

Holybro Pixhawk 调试适配器

CUAV C-ADB Pixhawk 调试适配器

CUAV C-ADB 二次开发 Pixhawk 飞行控制器调试适配器 自带 STLinkv3-MINIE 调试探头.

它有一个用于连接到 Pixhawk 调试完毕 (10 引脚 SH)和 CUAV 标准 DSU 接口(但不包括 Pixhawk 迷你调试器 (6 针 SH))。

适配器上的 M2 连接器是 14 针 CN4 STDC14(请参阅图 1)。 STLinkv3-MINIE 用户手册 更多信息)。连接 M2 和 STLinkv3-MINIE 的电缆随适配器一起提供。

连接到 STLinkv3-MINIE 的 CUAV C-ADB 适配器

调试探头适配器

部分社署 调试探针 附带适配器/电缆,用于连接普通 Pixhawk 调试端口.已知带连接器的探头如下:

板专用适配器

一些制造商提供电缆,方便连接 SWD 接口和 系统控制台.

6 针 JST SH 电缆

定制电缆

您还可以创建自定义电缆,用于连接不同的电路板或探针:

  • 连接 SWDIO, SWCLK接地 将调试探针上的引脚连接到调试端口上的相应引脚。
  • 如果调试探针支持,则连接 VREF 引脚。
  • 连接其余引脚(如果有)。

参见 STLinkv3-MINIE 获取如何焊接定制电缆的指南。

TIP

在可能的情况下,我们强烈建议您制作或购买一块适配器板,而不是定制电缆来连接 SWD/JTAG 调试器和计算机。这样可以降低接线不良导致调试问题的风险,而且适配器通常会提供一个通用接口,用于连接多个常用的飞行控制器板。