Порт для налагодження 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.
Налагодження сигналів
Чотири сигнали необхідні для відлагодження (в жирному шрифті), а решту лише рекомендується.
Назва | Тип | Опис |
---|---|---|
GND | Power | Спільний потенціал, спільна основа. |
VREF | Power | Цільове довідкове напруга дозволяє засоби налагодження використовувати рівнеміри на сигнали. |
SWDIO | I/O | Пін даних для послідовного знавантаження через мережу. |
SWCLK | Вхід | Пін годинника для послідовного знавантаження через мережу. |
nRST | Вхід | PIN скидання є необов’язковим (n = активним низьким). |
SWO | Output | Однопровідний шлейф асинхронних даних з можливістю виведення даних ITM та DWT. |
TRACECK | Output | Трасування годинника для паралельної шини. |
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 Durandal | Pixhawk 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 V5nano | 6-pin JST GH Digikey: BM06B-GHS-TBT(LF)(SN)(N) (vertical mount), SM06B-GHS-TBT(LF)(SN)(N) (side mount) |
3DR Pixhawk | ARM 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 | Відладочний порт |
---|---|---|
FMUv2 | Pixhawk / Pixhawk 1 | 10 pin ARM Debug |
FMUv3 | Pixhawk 2 | 6 pin SUR Debug |
FMUv4 | Pixhawk 3 | Pixhawk Debug Mini |
FMUv5 | Pixhawk 4 FMUv5 | Pixhawk Debug Mini |
FMUv5X | Pixhawk 5X | Pixhawk Debug Full |
FMUv6 | Pixhawk 6 | Pixhawk Debug Full |
FMUv6X | Pixhawk 6X | Pixhawk Debug Full |
FMUv6X-RT | Pixhawk 6X-RT | Pixhawk 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 | Сигнал |
---|---|
1 | VREF |
2 | Console TX |
3 | Console RX |
4 | SWDIO |
5 | SWDCLK |
6 | GND |
Визначення порту налагодження містить наступні припояні пластины (на платі поряд із роз'ємом):
Pad | Сигнал | Напруга |
---|---|---|
1 | nRST | +3.3V |
2 | GPIO1 | +3.3V |
3 | GPIO2 | +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.
Порти відладки 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 | Сигнал |
---|---|
1 | VREF |
2 | Console TX |
3 | Console RX |
4 | SWDIO |
5 | SWDCLK |
6 | SWO |
7 | GPIO1 |
8 | GPIO2 |
9 | nRST |
10 | GND |
Піни 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.
Зонди налагодження для апаратного забезпечення 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.
Це найлегший спосіб підключення:
- Flight controllers that use either the Pixhawk Debug Full (10-pin SH) or Pixhawk Debug Mini (6-pin SH) debug port.
- SWD debug probes that support the 10-pin ARM compatible interface standard used by the Segger JLink EDU mini or 20-pin compatible with the Segger JLink or STLink.
Адаптер відлагодження 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, постачається з адаптером.
Адаптери для відлагоджування
Some SWD debug probes come with adapters/cables for connecting to common Pixhawk debug ports. Зонди, про які відомо, що поставляються з роз'ємами, перераховані нижче:
- DroneCode Probe: comes with a connector for attaching to the Pixhawk Debug Mini
Адаптери, специфічні для плати
Some manufacturers provide cables to make it easy to connect the SWD interface and System Console.
- CUAV V5nano and CUAV V5+ include this debug cable:
Користувацькі кабелі
Ви також можете створити власні кабелі для підключення до різних плат або зондів:
- Connect
SWDIO
,SWCLK
andGND
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. Це зменшує ризик неправильного підключення проводів, що призводить до проблем з налагодженням, і має перевагу в тому, що адаптери зазвичай надають спільний інтерфейс для підключення до кількох популярних плат керування польотом.