Skip to content

Порт для налагодження SWD

PX4 runs on ARM Cortex-M microcontrollers, which contain dedicated hardware for interactive debugging via the Serial Wire Debug (SWD) interface and non-invasive profiling and high-bandwidth tracing via the Serial Wire Ouput (SWO) and TRACE pins.

Інтерфейс відладки SWD дозволяє прямий, низькорівневий, апаратний доступ до процесора мікроконтролера та периферійних пристроїв, тому він не залежить від будь-якого програмного забезпечення на пристрої. Отже, його можна використовувати для налагодження завантажувальних програм та операційних систем, таких як NuttX.

Налагодження сигналів

Чотири сигнали необхідні для відлагодження (в жирному шрифті), а решту лише рекомендується.

НазваТипОпис
GNDPowerСпільний потенціал, спільна основа.
VREFPowerЦільове довідкове напруга дозволяє засоби налагодження використовувати рівнеміри на сигнали.
SWDIOI/OПін даних для послідовного знавантаження через мережу.
SWCLKВхідПін годинника для послідовного знавантаження через мережу.
nRSTВхідPIN скидання є необов’язковим (n = активним низьким).
SWOOutputОднопровідний шлейф асинхронних даних з можливістю виведення даних ITM та DWT.
TRACECKOutputТрасування годинника для паралельної шини.
TRACED[0-3]OutputТрасування синхронної шини даних з 1, 2 чи 4 бітами.

Пін скидання апаратного забезпечення є необов'язковим, оскільки більшість пристроїв також можуть бути скинуті через лінії SWD. Однак швидке скидання пристрою за допомогою кнопки може бути великим плюсом для розробки.

SWO-пін може випромінювати дані профілювання в реальному часі з наносекундним відмітками часу, тому настійно рекомендується мати доступ до нього для відлагодження.

Піни TRACE потребують спеціалізованих засобів відлагодження для роботи з високою пропускною здатністю та наступним декодуванням потоку даних. Зазвичай вони недоступні і зазвичай використовуються лише для відлагодження дуже конкретних питань з часом.

Порти налагодження автопілота

Flight controllers commonly provide a single debug port that exposes both the SWD Interface and System Console.

The Pixhawk Connector Standards formalize the port that must be used in each FMU version. However there are still many boards that use different pinouts or connectors, so we recommend you check the documentation for your autopilot to confirm port location and pinout.

Місцезнаходження порту налагодження та роз'єми для підмножини автопілотів зв'язані нижче:

АвтопілотВідладочний порт
Holybro Pixhawk 6X-RT (FMUv6X-RT)Pixhawk Debug Full
Holybro Pixhawk 6X (FMUv6x)Pixhawk Debug Full
Holybro Pixhawk 5X (FMUv5x)Pixhawk Debug Full
Holybro DurandalPixhawk Debug Mini
Holybro Kakute F7Паяльні майданчики
Holybro Pixhawk 4 Mini (FMUv5)Pixhawk Debug Mini
Holybro Pixhawk 4 (FMUv5)Pixhawk Debug Mini
Drotek Pixhawk 3 Pro (FMU-v4pro)Pixhawk Debug Mini
CUAV V5+6-pin JST GH
Digikey: BM06B-GHS-TBT(LF)(SN)(N) (vertical mount), SM06B-GHS-TBT(LF)(SN)(N) (side mount)
CUAV V5nano6-pin JST GH
Digikey: BM06B-GHS-TBT(LF)(SN)(N) (vertical mount), SM06B-GHS-TBT(LF)(SN)(N) (side mount)
3DR PixhawkARM 10-pin JTAG Connector (also used for FMUv2 boards including: mRo Pixhawk, HobbyKing HKPilot32).

Стандарт роз'ємів Pixhawk Debug Портів

Проект Pixhawk визначив стандартну схему виводів та тип роз'єму для різних випусків Pixhawk FMU:

TIP

Check your specific board to confirm the port used.

Версія FMUВерсія PixhawkВідладочний порт
FMUv2Pixhawk / Pixhawk 110 pin ARM Debug
FMUv3Pixhawk 26 pin SUR Debug
FMUv4Pixhawk 3Pixhawk Debug Mini
FMUv5Pixhawk 4 FMUv5Pixhawk Debug Mini
FMUv5XPixhawk 5XPixhawk Debug Full
FMUv6Pixhawk 6Pixhawk Debug Full
FMUv6XPixhawk 6XPixhawk Debug Full
FMUv6X-RTPixhawk 6X-RTPixhawk Debug Full

INFO

There FMU and Pixhawk versions are (only) consistent after FMUv5X.

Pixhawk Debug Mini

The Pixhawk Connector Standard defines the Pixhawk Debug Mini, a 6-Pin SH Debug Port that provides access to both SWD pins and the System Console.

Це використовується в FMUv4 та FMUv5.

Схема виводів показана нижче (виводи, необхідні для налагодження, виділені жирним шрифтом):

PinСигнал
1VREF
2Console TX
3Console RX
4SWDIO
5SWDCLK
6GND

Визначення порту налагодження містить наступні припояні пластины (на платі поряд із роз'ємом):

PadСигналНапруга
1nRST+3.3V
2GPIO1+3.3V
3GPIO2+3.3V

The socket is a 6-pin JST SH - Digikey number: BM06B-SRSS-TBT(LF)(SN) (vertical mount), SM06B-SRSS-TBT(LF)(SN)(side mount).

You can connect to the debug port using a cable like this one.

6-pin JST SH Cable

Порти відладки Pixhawk Full

The Pixhawk Connector Standard defines Pixhawk Debug Full, a 10-Pin SH Debug Port that provides access to both SWD pins and the System Console. This essentially moves the solder pads from beside the Pixhawk Debug Mini into the connector, and also adds an SWO pin.

Цей порт вказаний для використання в FMUv5x, FMUv6, FMUv6x.

Схема виводів показана нижче (виводи, необхідні для налагодження, виділені жирним шрифтом):

PinСигнал
1VREF
2Console TX
3Console RX
4SWDIO
5SWDCLK
6SWO
7GPIO1
8GPIO2
9nRST
10GND

Піни GPIO1/2 є вільними пінами, які можуть бути використані для генерації сигналів у програмному забезпеченні для аналізу часу з логічним аналізатором.

The socket is a 10-pin JST SH - Digikey number: BM10B-SRSS-TB(LF)(SN) (vertical mount) or SM10B-SRSS-TB(LF)(SN) (side mount).

You can connect to the debug port using a cable like this one.

10-pin JST SH Cable

Зонди налагодження для апаратного забезпечення PX4

Flight controllers commonly provide a single debug port that exposes both the SWD Interface and System Console.

Є кілька зондів відлагодження, які були перевірені та підтримуються для підключення до одного або обох цих інтерфейсів:

  • SEGGER J-Link: commercial probe, no built-in serial console, requires adapter.
  • Black Magic Probe: integrated GDB server and serial console, requires adapter.
  • STLink: best value, integrated serial console, adapter must be soldered.
  • MCU-Link: best value, integrated serial console, requires adapter.

Адаптер для підключення до роз'єму відладки може поставлятися разом із вашим контролером польоту або відлагоджувальним зондом. Інші варіанти наведено нижче.

Адаптери для відлагоджування

Адаптер відлагодження Holybro Pixhawk

The Holybro Pixhawk Debug Adapter is highly recommended when debugging controllers that use one of the Pixhawk-standard debug connectors.

Це найлегший спосіб підключення:

Holybro Pixhawk Debug Adapter

Адаптер відлагодження CUAV C-ADB Pixhawk

The CUAV C-ADB Secondary Development Pixhawk Flight Controller Debug Adapter comes with an STLinkv3-MINIE Debug Probe.

This has a ports for connecting to the Pixhawk Debug Full (10-pin SH) and CUAV-standard DSU interface (but not the Pixhawk Debug Mini (6-pin SH)).

The M2 connector on the adaptor is 14-pin CN4 STDC14 (see the STLinkv3-MINIE User Manual for more information). Кабель, який використовується для підключення M2 та STLinkv3-MINIE, постачається з адаптером.

CUAV C-ADB adaptor connected to the STLinkv3-MINIE

Адаптери для відлагоджування

Some SWD debug probes come with adapters/cables for connecting to common Pixhawk debug ports. Зонди, про які відомо, що поставляються з роз'ємами, перераховані нижче:

Адаптери, специфічні для плати

Some manufacturers provide cables to make it easy to connect the SWD interface and System Console.

6-pin JST SH Cable

Користувацькі кабелі

Ви також можете створити власні кабелі для підключення до різних плат або зондів:

  • Connect SWDIO, SWCLK and GND pins on the debug probe to the corresponding pins on the debug port.
  • Підключіть контакт VREF, якщо його підтримує засіб відлагодження.
  • Підключіть залишкові контакти, якщо вони є.

See the STLinkv3-MINIE for a guide on how to solder a custom cable.

TIP

Where possible, we highly recommend that you create or obtain an adapter board rather than custom cables for connecting to SWD/JTAG debuggers and computers. Це зменшує ризик неправильного підключення проводів, що призводить до проблем з налагодженням, і має перевагу в тому, що адаптери зазвичай надають спільний інтерфейс для підключення до кількох популярних плат керування польотом.