Распиновка разъема ST-Link V2 — первое, что нужно проверить, когда утилита STM32 ST-LINK Utility или STM32CubeProgrammer выдает ошибку «No target connected» при заведомо исправном программаторе. Практически всегда причина кроется в перепутанных проводах SWDIO/SWCLK, отсутствующем общем GND или питании целевой платы, а не в неисправности самого устройства.

Клоны ST-Link V2 в алюминиевом корпусе выпускаются в нескольких вариантах, и маркировка контактов на разных партиях может отличаться. Поэтому перед первым подключением стоит сверить распиновку конкретного экземпляра — это займет минуту и убережет целевой микроконтроллер от повреждений.

Стандартный клон ST-Link V2 имеет 10 контактов в два ряда по 5 штук с шагом 2,54 мм. Для прошивки по интерфейсу SWD реально задействуются только четыре линии: SWCLK, SWDIO, GND и 3.3V. Остальные контакты — дублирующие питание и землю, а также линии RST и SWO, которые используются реже.

Типовая распиновка популярного клона в металлическом корпусе выглядит так (ряды указаны при взгляде на разъем со стороны контактов, ключ корпуса слева):

КонтактНазначениеОбязательность
SWCLKТактовый сигнал интерфейса SWDОбязателен
SWDIOЛиния данных SWDОбязателен
GNDОбщий провод (земля)Обязателен
3.3VПитание целевой платы / опорное напряжениеОбязателен
RSTСброс целевого MCU (connect under reset)Опционально
SWOОтладочный вывод трассировкиОпционально
⚠️ Внимание: маркировка на клонах ST-Link V2 не стандартизирована. Встречаются партии, где контакты SWCLK и SWDIO поменяны местами относительно привычной схемы. Перед подключением прозвоните контакты мультиметром относительно GND или сверьтесь с документацией продавца.

Минимальная схема подключения к STM32

Для прошивки микроконтроллера STM32F103 (плата Blue Pill) или любого другого STM32 вам нужно соединить четыре провода. Контакт SWCLK программатора подключается к выводу PA14 целевого чипа, SWDIO — к PA13. Это стандартные выводы отладки у всей линейки STM32F1; у других серий (F0, F4, G0) назначение выводов SWD аналогично по функции, но номера пинов стоит уточнить в даташите конкретного микроконтроллера.

Общий провод GND соединяется напрямую, без него обмен данными невозможен. Линия 3.3V с программатора может питать целевую плату, если ее потребление невелико — для голого MCU этого достаточно.

☑️ Проверка перед первым подключением

Выполнено: 0 / 5
📊 С какой проблемой вы столкнулись при подключении ST-Link V2?
No target connected
Перепутанная распиновка клона
Программатор не определяется ПК
Все работает, ищу справку

Питание целевой платы: важный нюанс

Частая ошибка — попытка прошить плату, которая уже запитана от собственного источника, при этом линия 3.3V программатора тоже подключена. Два источника питания, соединенные вместе, могут конфликтовать. Правило простое: либо плата питается от ST-Link, либо от своего источника — но тогда контакт 3.3V программатора оставьте неподключенным или используйте его только как опорный, если это предусмотрено схемой.

💡

Если целевая плата потребляет заметный ток (дисплей, датчики, реле), запитывайте ее отдельно, а от ST-Link подключайте только SWCLK, SWDIO и GND.

Обратите внимание: выход 3.3V клона рассчитан на малые токи. Нагружать его периферией не стоит — возможны просадки напряжения и сбои при прошивке.

Типичные ошибки при подключении

  • 🔀 Перепутаны SWCLK и SWDIO — самая частая причина ошибки соединения, лечится простой перестановкой проводов.
  • 🔌 Отсутствует общий GND между программатором и платой.
  • 🔋 Целевая плата не запитана — ST-Link не «видит» чип без питания на нем.
  • 📏 Слишком длинные провода — при длине более 15–20 см возможны сбои обмена.
  • ⚙️ Выводы PA13/PA14 переназначены в прошивке как GPIO — тогда нужен режим Connect Under Reset или подключение линии RST.
⚠️ Внимание: никогда не подключайте программатор к плате, запитанной от высокого напряжения или имеющей гальваническую связь с сетью 220 В. Клон ST-Link V2 не имеет гальванической развязки — это может вывести из строя и программатор, и USB-порт компьютера.

Что делать, если MCU не определяется

Если провода подключены верно, а чип не определяется, действуйте по нарастающей. Сначала проверьте напряжение питания целевого MCU мультиметром — оно должно быть около 3,3 В. Затем в настройках STM32CubeProgrammer попробуйте снизить частоту SWD и сменить режим подключения на Under Reset или Hardware Reset.

Помогает и физическая проверка: прозвоните каждый провод от программатора до ножки чипа — обрыв в дешевых dupont-кабелях встречается чаще, чем кажется. Если прошивка ранее отключила пины SWD, без линии RST и режима connect under reset чип «оживить» не получится — подключите RST к выводу NRST микроконтроллера.

Почему клоны ST-Link V2 так популярны

Оригинальный отладчик ST стоит заметно дороже, а клоны на чипе STM32F103 обеспечивают ту же базовую функциональность SWD-программирования. Многие клоны можно также перепрошить в J-Link или использовать как USB-UART после модификации, однако такие операции выполняются на свой риск.

💡

Для работы ST-Link V2 достаточно четырех проводов: SWCLK, SWDIO, GND и 3.3V. Ошибка «No target connected» почти всегда означает проблему в проводке или питании, а не в самом программаторе.

Обновление прошивки и драйверы

Под Windows клоны ST-Link V2 обычно требуют установки драйвера ST-LINK с сайта STMicroelectronics — без него устройство определяется с ошибкой в диспетчере устройств. Утилита STM32CubeProgrammer при подключении может предложить обновить прошивку программатора; на клонах обновление иногда завершается неудачей из-за урезанной прошивки загрузчика.

Если обновление «убило» программатор, существуют методы восстановления через заливку прошивки по SWD с помощью второго ST-Link, но это уже тема отдельной инструкции. На Linux драйверы не нужны — достаточно правил udev для доступа без root.

💡

Держите под рукой два программатора: если один «завис» после неудачного обновления прошивки, второй позволит восстановить его через SWD.

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

Можно ли прошивать ST-Link V2 микроконтроллеры не от ST?

Нет, штатно ST-Link работает только с микроконтроллерами STM32 и STM8. Для чипов других производителей нужны их фирменные отладчики или универсальные решения вроде J-Link.

Обязательно ли подключать контакт RST?

Нет, для обычной прошивки достаточно SWCLK, SWDIO, GND и питания. RST нужен, когда прошивка в чипе отключила пины отладки или MCU находится в глубоком сне — тогда помогает режим Connect Under Reset.

Почему на разъеме два контакта 3.3V и два GND?

Это дублирующие контакты для удобства разводки и снижения сопротивления соединения. Электрически они соединены между собой внутри программатора, использовать можно любой из них.

Работает ли ST-Link V2 с 5-вольтовыми платами?

Интерфейс SWD у программатора рассчитан на уровни 3,3 В. Подключение к 5-вольтовой логике без согласования уровней может повредить программатор — для таких задач нужен преобразователь уровней.

Как отличить выводы SWCLK и SWDIO, если маркировка стерлась?

Прозвоните контакты мультиметром: GND звонится с минусом USB-разъема. Далее можно подключить заведомо исправную плату STM32 и методом перестановки двух оставшихся сигнальных проводов определить верную комбинацию — при правильном подключении чип определится в программе.