Распиновка разъёма ST-Link V2 вызывает больше всего вопросов у тех, кто впервые подключает программатор к плате на STM32: на корпусе китайского клона нанесены десять контактов, но для работы по интерфейсу SWD реально нужны только четыре — SWDIO, SWCLK, GND и 3.3V. Ошибка в один пин при подключении обычно не фатальна, но неверная подача питания на целевую плату способна вывести из строя и программатор, и микроконтроллер. Поэтому разбираться со схемой стоит до первого подключения, а не после.

В этой статье разберём устройство оригинального отладчика и популярного клона в металлическом корпусе, полную распиновку разъёма, схему подключения к целевой плате по SWD и типичные проблемы, которые возникают при работе. Материал ориентирован на практику: вы сможете проверить свой экземпляр мультиметром и правильно собрать соединение с первого раза.

ST-Link V2 — это внутрисхемный отладчик и программатор компании STMicroelectronics для микроконтроллеров серий STM8 и STM32. Устройство подключается к компьютеру по USB и транслирует команды отладки в интерфейсы SWD (для STM32) и SWIM (для STM8). Оригинальный программатор выполнен в виде USB-флешки, но в массовом использовании чаще встречаются недорогие клоны в алюминиевом корпусе.

Схема клона предельно проста. В её основе лежит микроконтроллер STM32F103C8T6, который работает как мост USB–SWD. Помимо него на плате присутствуют:

  • 🔌 стабилизатор напряжения на 3.3 В для питания целевой схемы;
  • 🔋 кварцевый резонатор для тактирования микроконтроллера;
  • 💡 светодиод индикации обмена данными;
  • 🧷 десятипиновый разъём с сигналами SWD, SWIM и питанием.

Именно компактность схемы объясняет низкую цену клонов. Плата разведена в два слоя, обвязка минимальна, а вся логика реализована прошивкой, которую STMicroelectronics распространяет для обновления фирменных устройств.

💡

ST-Link V2 — это по сути микроконтроллер STM32F103 с прошивкой-мостом USB→SWD. Схема клона минимальна: стабилизатор 3.3 В, кварц, светодиод и разъём на 10 контактов.

На торце клона в алюминиевом корпусе выведен разъём 2×5 контактов с шагом 2.54 мм. Маркировка нанесена на корпус, но у разных партий клонов порядок контактов может отличаться — об этом подробнее в разделе про проверку. Типовая распиновка выглядит так:

КонтактНазначениеКомментарий
SWCLKТактовый сигнал SWDПодключается к PA14 (SWCLK) целевого МК
SWDIOЛиния данных SWDПодключается к PA13 (SWDIO) целевого МК
GNDОбщий проводОбязателен, соединяет земли устройств
3.3VПитание 3.3 ВМожет питать целевую плату
5VНапряжение с USB-портаИспользовать с осторожностью
RSTСброс целевого МКОпционально, нужен для connect under reset
SWIMИнтерфейс для STM8Для STM32 не используется

Для прошивки STM32 по SWD достаточно четырёх проводов: SWDIO, SWCLK, GND и 3.3V. Линия RST подключается опционально — она нужна, когда микроконтроллер переведён в режим, где отладчик не успевает захватить ядро, например при входе в сон сразу после старта.

⚠️ Внимание: не подключайте контакт 5V к плате, запитанной от собственного источника 3.3 В, и не подавайте 5 В на входы STM32 без проверки их толерантности. Если целевая плата уже питается отдельно, линию 3.3V от программатора используйте только как sense-линию или не подключайте вовсе, оставив общим только GND.

Схема подключения к плате STM32

Порядок соединения прост, но требует аккуратности. Сначала убедитесь, что оба устройства обесточены, затем соедините линии согласно распиновке и только после этого вставляйте программатор в USB-порт.

☑️ Подключение ST-Link V2 к STM32

Выполнено: 0 / 6

После сборки схемы установите фирменную утилиту STM32CubeProgrammer или ST-LINK Utility и выполните подключение через интерфейс SWD. Если программа видит микроконтроллер и читает его ID, схема собрана верно. Отсутствие ответа чаще всего означает перепутанные SWDIO/SWCLK или отсутствие общего провода.

💡

Держите провода SWD короткими — до 10–15 см. Длинные шлейфы без экранирования вызывают сбои связи на высокой скорости, особенно рядом с импульсными преобразователями и силовыми цепями.

Когда микроконтроллер на плате уже прошит и его выводы SWD переназначены прошивкой как обычные GPIO, отладчик может не подключаться штатно. В этом случае помогает режим Connect Under Reset в настройках утилиты либо удержание кнопки сброса на плате в момент коннекта.

Схема клона на STM32F103 и её особенности

Типовой клон построен на STM32F103C8T6 в корпусе LQFP48. Питание 5 В с USB поступает на линейный стабилизатор, формирующий 3.3 В для микроконтроллера и внешнего вывода. Линии SWD выведены с порта микросхемы напрямую или через небольшие последовательные резисторы, защищающие выводы от статики и коротких замыканий.

Интересная деталь: внутри клона находится тот же самый STM32, который он программирует. Это позволяет использовать плату клона и в обратную сторону — как макетную плату с STM32F103, если залить в неё собственную прошивку через другой программатор или встроенный загрузчик по UART.

Почему распиновка у клонов отличается

Разные производители разводят плату по-своему, и порядок контактов на разъёме может не совпадать с маркировкой на корпусе или с платой другой партии. Встречаются экземпляры, где шелкография на алюминиевом корпусе не соответствует реальной разводке. Поэтому перед первым использованием нового экземпляра прозвоните контакты мультиметром: GND должен звониться с металлическим корпусом USB-разъёма, а на контакте 3.3V относительно GND при подключении к USB должно быть около 3.3 В.

Отдельно стоит упомянуть прошивку клона. Утилита обновления от STMicroelectronics периодически проверяет подлинность устройства, и после обновления некоторые клоны перестают определяться. Если программатор работает стабильно, обновлять его прошивку без необходимости не стоит.

Проверка программатора перед подключением

Новый экземпляр имеет смысл проверить до первого подключения к целевой плате — это займёт пару минут и убережёт от неприятных сюрпризов. Понадобится только мультиметр.

  • 🔎 Прозвоните контакт GND разъёма с корпусом USB-вилки — должен быть нулевой контакт;
  • ⚡ Подключите программатор к USB и измерьте напряжение между GND и контактом 3.3V — ожидается значение около 3.3 В;
  • 🧭 Убедитесь, что маркировка SWDIO и SWCLK соответствует реальной разводке, сверившись с дорожками платы при сомнениях;
  • 💻 Проверьте, что устройство определяется операционной системой как ST-Link в диспетчере устройств.

⚠️ Внимание: никогда не подключайте программатор к плате, находящейся под сетевым или высоким напряжением, без гальванической развязки — например, к импульсным блокам питания или драйверам двигателей с «горячей» землёй. USB-порт компьютера соединён с защитным заземлением, и разность потенциалов может вывести из строя и программатор, и порт ПК.

📊 Как вы используете ST-Link V2?
Прошиваю STM32 на своих платах
Работаю с готовыми devboard (Blue Pill и т.п.)
Программирую STM8 по SWIM
Только планирую начать работу с STM32

Типичные проблемы и их диагностика

Ошибка No target connected — самая частая жалоба при работе с ST-Link. Возможные причины: перепутаны линии данных и тактирования, отсутствует общий провод, целевой микроконтроллер не запитан или его выводы SWD заняты прошивкой. Проверяйте по цепочке: сначала питание целевой платы, затем целостность проводов, затем правильность распиновки.

Вторая распространённая ситуация — программатор не определяется компьютером. Здесь возможны проблемы с USB-кабелем (некоторые кабели передают только питание), отсутствие драйверов ST-Link в системе или «слетевшая» прошивка клона после неудачного обновления. Драйверы распространяются вместе с фирменными утилитами STMicroelectronics.

Если связь устанавливается, но нестабильна — снижается скорость, рвётся сессия отладки — уменьшите частоту SWD в настройках подключения и укоротите провода. Помехи по линиям данных особенно заметны, когда целевая плата содержит силовые цепи.

💡

Если клон «умер» после обновления прошивки, его часто можно восстановить, залив прошивку заново через UART-загрузчик STM32F103 (пины bootloader выведены на плате) с помощью любого USB-UART адаптера.

Альтернативы и совместимость

Помимо классического ST-Link V2 существуют версии V2-1 и V3, которые дополнительно предоставляют виртуальный COM-порт и поддерживают больше возможностей. Отладчики V2-1 встроены в отладочные платы серий Nucleo и Discovery — если у вас есть такая плата, её отладочную часть можно использовать как полноценный программатор для внешних плат, разъединив перемычки.

По совместимости клон V2 работает со всеми семействами STM32, поддерживающими SWD, и с STM8 через линию SWIM. Для современных семейств с расширенной отладкой фирменные утилиты могут предлагать более новые версии отладчиков, но для базовых задач прошивки и отладки возможностей V2 достаточно.

💡

Для прошивки STM32 достаточно четырёх проводов: SWDIO, SWCLK, GND и 3.3V. Перед первым подключением нового клона обязательно прозвоните распиновку мультиметром — маркировка на корпусе не всегда соответствует реальной разводке.

Часто задаваемые вопросы

Можно ли питать целевую плату от контакта 3.3V программатора?

Да, для малопотребляющих плат это стандартная практика. Однако точный допустимый ток зависит от стабилизатора конкретного клона, поэтому для плат с энергопотребляющей периферией (дисплеи, радиомодули, реле) надёжнее использовать отдельный источник питания, соединив с программатором только GND, SWDIO и SWCLK.

Чем отличается подключение к STM8?

Для микроконтроллеров STM8 используется интерфейс SWIM: подключаются линии SWIM, RST, GND и питание. Линии SWDIO и SWCLK в этом случае не задействуются. Программирование выполняется через те же фирменные утилиты с выбором интерфейса SWIM.

Почему утилита пишет «No ST-Link detected», хотя устройство вставлено в USB?

Возможные причины: не установлены драйверы ST-Link, неисправен USB-кабель или порт, либо слетела прошивка клона. Проверьте, видит ли устройство диспетчер устройств, попробуйте другой порт и кабель. Если устройство определяется, но утилита его не находит, обновите драйверы из комплекта STM32CubeProgrammer.

Можно ли использовать ST-Link V2 как обычный USB-UART преобразователь?

Нет, классический V2 не имеет виртуального COM-порта — эта функция появилась в версии V2-1. Для вывода отладочных сообщений из микроконтроллера понадобится отдельный USB-UART адаптер либо использование отладочной платы Nucleo со встроенным ST-Link V2-1.

Опасно ли обновлять прошивку клона фирменной утилитой?

Риск существует: утилита обновления проверяет подлинность устройства, и после обновления некоторые клоны перестают работать. Если программатор стабильно выполняет свои задачи, обновление без необходимости лучше не проводить. Восстановление неработающего клона возможно через встроенный UART-загрузчик STM32F103, но требует дополнительного адаптера и опыта.