Программирование ARM ST-LINK: отладчик/программатор для STM8 и STM32 Thu, November 21 2019  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

ST-LINK: отладчик/программатор для STM8 и STM32 Печать
Добавил(а) microsin   

ST-LINK/V2 это внутрисхемный отладчик и программатор для микроконтроллеров STM8 и STM32. Однопроводный интерфейс (single wire interface module, SWIM) и JTAG/SWD (SWD это сокращение от serial wire debugging) реализуют коммуникацию с любым микроконтроллером STM8 или STM32, работающим на плате конечной системы.

В дополнение к функционалу ST-LINK/V2, новая версия ST-LINK/V2-ISOL реализует изоляцию цифрового интерфейса между PC и целевой программируемой платой. Изоляция выдерживает напряжения до 1000 VRMS.

Интерфейс USB full-speed осуществляет обмен между компьютером PC разработчика и:

• Устройствами STM8 через ПО ST Visual Develop (STVD) или ST Visual Program (STVP). Это ПО поставляется компанией STMicroelectronics (ST).
• Устройствами STM32 в средах разработки Atollic®, IAR™, Keil® и TASKING®.

ST LINK V2 fig01 ST LINK V2 ISOL fig01
ST-LINK/V2 ST-LINK/V2-ISOL

Рис. 1. Отладчики ST-LINK/V2 и ST-LINK/V2-ISOL.

Отладчик ST-LINK также встроен в оценочные платы разработчика STM32Fxxx Discovery [2]. Вот так выглядит отладчик ST-LINK/V2-B на плате STM32F429 Discovery (компоненты отладчика выделены желным прямоугольником):

ST LINK V2 Discovery

Функциональные возможности ST-LINK:

• Питание 5V подается от хоста PC через коннектор USB.

• Подключение USB 2.0 full speed через кабель USB standard A - Mini-B.

• Функции интерфейса отладки SWIM:

   – поддерживаются уровни от 1.65V до 5.5V;
   – поддерживаются режимы скорости SWIM low-speed и high-speed;
   – скорость программирования: 9.7 килобайт/сек на low speed и 12.8 килобайт/сек на high speed;
   – подключение к отлаживаемой плате осуществляется через кабель стандартный вертикальный ERNI (ref: 284697 или 214017) или горизонтальный (ref: 214012), либо через коннектор со стандартным шагом выводов 2.54 мм.

• Функции интерфейса отладки JTAG/SWD:

   – поддерживаются уровни 1.65V .. 3.6V на выходах, и входы допускают напряжения до 5V (5V tolerant inputs);
   – 20-выводный JTAG кабель с шагом выводов 2.54 мм;
   – поддерживаются коммуникации JTAG, SWD и SWV.

• Поддерживается непосредственное обновление прошивки (Direct Firmware Update, DFU).

• Светодиоды состояния (Status LED), которые мигают во время обмена с PC.

• Рабочий диапазон температур 0 .. 50°C.

Таблица 1. Информация для закупки.

Order code Описание варианта ST-LINK

ST-LINK/V2 Внутрисхемный отладчик/программатор.

ST-LINK/V2-ISOL Внутрисхемный отладчик/программатор с гальванической развязкой.

[Что входит в комплект отладчика]

Поставляемые компоненты показаны на рис. 2 и рис. 3. Это следующие элементы (перечислены слева направо):

• Стандартный кабель USB A - USB Mini-B (A).
• Отладчик ST-LINK/V2 (B).
• Коннектор SWIM (C).
• Плоский кабель SWIM со стандартным коннектором ERNI (D).
• Плоский кабель JTAG или SWD и SWV flat ribbon with a 20-pin connector (E).

ST LINK V2 product contents fig02

Рис. 2. Комплект ST-LINK/V2.

ST LINK V2 ISOL product contents fig03

Рис. 3. Комплект ST-LINK/V2-ISOL.

[Конфигурирование]

ST-LINK/V2 разработан на микроконтроллере STM32F103C8 (высокопроизводительное ядро Arm®(a) Cortex®-M3). Он доступен в корпусе TQFP48. Как показано на рис. 4, у ST-LINK/V2 есть два коннектора:

• Коннектор STM32 для интерфейса JTAG/SWD и SWV.
• Коннектор STM8 для интерфейса SWIM.

У ST-LINK/V2-ISOL один коннектор для интерфейсов STM8 SWIM, STM32 JTAG/SWD и SWV.

ST LINK connectors fig04

Рис. 4. Коннекторы ST-LINK/V2 (слева) и ST-LINK/V2-ISOL (справа).

A: Коннектор STM32 JTAG и SWD для подключения к целевой плате.
B: Коннектор STM8 SWIM для подключения к целевой плате.
C: Коннектор STM8 SWIM, STM32 JTAG и SWD для подключения к целевой плате.
D: светодиод, показывающий активный обмен.

Для разработки приложений на микроконтроллерах STM8 отладчик ST-LINK/V2 можно подключить к целевой плате двумя разными кабелями, в зависимости от того, какой коннектор установлен на плате устройства. Это следующие кабели:

• Плоский кабель SWIM, на одном из концов которого стоит стандартный коннектор ERNI.
• 4-контактный кабель SWIM с шагом 2.54 мм или кабель SWIM с отдельными проводами.

На рис. 5 показано, как подключить ST-LINK/V2, если на целевой плате находится стандартный коннектор ERNI 4-pin SWIM.

ST LINK ERNI connection fig05

Рис. 5. Соединение ERNI.

A: целевая плата системы с коннектором ERNI.
B: кабель с коннектором ERNI.
C: целевой коннектор STM8 SWIM.

Также см. рис. 11 во врезке "Дополнительная техническая информация".

Рис. 6 показывает, что на целевом коннекторе ST-LINK/V2-ISOL вывод 16 отсутствует. Этот отсутствующий вывод используется как ключ безопасности коннектора, гарантирующий правильную ориентацию коннектора SWIM при подключении. Этот ключ безопасности используется на кабелях SWIM и JTAG.

ST LINK safety key fig06a ST LINK safety key fig06b ST LINK safety key fig06c

Рис. 6. Ключ безопасности на коннекторах.

Дешевый вариант SWIM-подключения. Рис. 7 показывает, как подключить ST-LINK/V2, если на плате стоит 4-выводный коннектор с шагом выводов 2.54 мм.

ST LINK low cost connection fig07

Рис. 7. Недорогое SWIM-подключение.

A: целевая плата системы, на которой установлен коннектор с шагом выводов 2.54 мм.
B: 4-проводный кабель, или подключение отдельными проводами.
C: целевой коннектор STM8 SWIM.

Также см. рис. 12 во врезке "Дополнительная техническая информация".

Сигналы и соединения SWIM. Таблица 2 дает общее описание SWIM: имена сигналов, функции и сигналы целевой платы при использовании 4-проводного кабеля и 4-выводного коннектора.

Таблица 2. SWIM-соединение с ST-LINK/V2.

Pin Имя сигнала Функция Соединение с целевой платой
1 VDD VCC целевой платы(1) VCC микроконтроллера
2 DATA SWIM Вывод SWIM микроконтроллера
3 GND Земля GND
4 RESET Сброс Вывод RESET микроконтроллера

Примечание (1): источник питания целевой платы подключен к плате отладчика ST-LINK/V2 для гарантии совместимости уровней между платой и отладчиком.

ST LINK SWIM connector fig08

Рис. 8. Целевой коннектор SWIM.

Таблица 3 показывает имена сигналов, функции и соединения сигналов с целевой платой при использовании кабеля с отдельными проводами. Поскольку у кабеля SWIM с отдельными проводами есть независимые коннекторы для каждого сигнала, то можно подключить ST-LINK/V2-ISOL к целевой плате, на которой нет стандартного SWIM-коннектора. На таком плоском кабеле все сигналы имеют разные цвета и отдельную метку, что упрощает подключение к целевой системе.

Таблица 3. Соединения ST-LINK/V2-ISOL недорогим кабелем SWIM.

Цвет Имя сигнала кабеля Функция Соединение с целевой платой
Красный TVCC VCC целевой платы(1) VCC микроконтроллера
Зеленый UART-RX Не используется Зарезервировано(2) (не подключается к целевой плате)
Синий UART-TX
Желтый BOOT0
Оранжевый SWIM SWIM Вывод SWIM микроконтроллера
Черный GND Земля GND
Белый SWIM-RST RESET Вывод RESET микроконтроллера

Примечания:

(1) Источник питания целевой платы подключен к плате отладчика ST-LINK/V2 для гарантии совместимости уровней между платой и отладчиком.
(2) BOOT0, UART-TX и UART-RX зарезервированы для использования в будущих разработках.

TVCC, SWIM, GND и SWIM-RST могут быть подключены дешевым коннектором с шагом 2.54 мм, установленным на целевой плате.

Для разработки программ на основе микроконтроллеров STM32 отладчик ST-LINK/V2 должен быть подключен к целевой системе стандартным 20-выводным плоским кабелем JTAG.

Таблица 4 показывает имена сигналов, функции и соединения сигналов с целевой платой при использовании стандартного 20-выводного кабеля JTAG.

Таблица 4. Соединения кабелем JTAG/SWD.

Pin Коннектор ST-LINK/V2 (CN3) Функция ST-LINK/V2 Соединение с целевой платой JTAG Соединение с целевой платой SWD
1 VAPP VCC целевой платы
VDD микроконтроллера(1) VDD микроконтроллера(1)
2
3 TRST TRST JTAG JNTRST GND(2)
4 GND(3) GND(3) GND(3)(4) GND(3)(4)
5 TDI JTAG TDO JTDI GND(2)
6 GND(3) GND(3) GND(3)(4) GND(3)(4)
7 TMS_SWDIO JTAG TMS, SWDIO JTMS SWDIO
8 GND(3) GND(3) GND(3)(4) GND(3)(4)
9 TCK_SWCLK JTAG TCK, SWCLK JTCK SWCLK
10 GND(5) GND(5) GND(4)(5) GND(4)(5)
11 Не подключено
12 GND GND GND(4) GND(4)
13 TDO_SWO JTAG TDI, SWO JTDO TRACESWO(6)
14 GND(5) GND(5) GND(4)(5) GND(4)(5)
15 NRST NRST NRST NRST
16 GND(3) GND(3) GND(3)(4) GND(3)(4)
17 Не подключено
18 GND GND GND(4) GND(4)
19 VDD(3) VDD (3.3 V)(3) Не подключено
20 GND GND GND(4) GND(4)

Примечания:

(1) источник питания целевой платы подключен к плате отладчика ST-LINK/V2 для гарантии совместимости уровней между платой и отладчиком.
(2) Подключается к GND для снижения шума в кабеле.
(3) Доступно только на ST-LINK/V2, не подключено на ST-LINK/V2-ISOL.
(4) Для правильной работы как минимум один вывод должен быть подключен к земле (рекомендуется подключить все).
(5) GND ST-LINK/V2, используемый SWIM на ST-LINK/V2-ISOL (см. таблицу 3).
(6) Опционально: для трассировки Serial Wire Viewer (SWV).

Рис. 9 показывает, как соединить ST-LINK/V2 с целевой системой кабелем JTAG.

ST LINK JTAG and SWD connection fig09

Рис. 9. Соединение JTAG и SWD.

A: целевая отлаживаемая плата с коннектором JTAG.
B: плоский 20-выводный кабель JTAG/SWD.
C: целевой коннектор STM32 JTAG и SWD.

ST LINK JTAG pins fig10

Рис. 10. Нумерация выводов коннектора JTAG (вид на контакты коннектора с верхней стороны платы).

Для некоторых систем стандартный 20-выводный коннектор с шагом выводов 2.54 мм слишком велик, и разработчики часто предпочитают коннектор с уменьшенным количеством выводов (например 10 контактов вместо 20). Для отладчиков ST-LINK/V2 или ST-LINK/V2-ISOL есть адаптер Tag-Connect и кабель, упрощающие подключение отладчика к целевой плате без необходимости установки на плату большого разъема.

ST LINK Tag Connect1 ST LINK Tag Connect2 ST LINK Tag Connect3

Для дополнительной информации об этом решении и цоколевке посетите сайт www.tag-connect.com. Компоненты, совместимые с интерфейсами JTAG и SWD:

a) Адаптер TC2050-ARM2010 (переходник 20 в 10 выводов).
b) TC2050-IDC или TC2050-IDC-NL (No Legs, без ножек), 10-выводный кабель.
c) TC2050-CLIP с клипсой для использования с TC2050-IDC-NL (опционально).

Индикационный светодиод ST-LINK/V2. Светодиод, помеченный "COM" на верхней стороне ST-LINK/V2, показывает его состояние (независимо от типа соединения):

• Светодиод мигает красным: происходит энумерация USB на хосте PC.
• Светодиод красный: установлено соединение между PC и ST-LINK/V2 (энумерация закончилась).
• Светодиод мигает зеленым/красным: идет обмен между целевой платой и PC.
• Светодиод зеленый: последнее соединение прошло успешно.
• Светодиод оранжевый: обмен ST-LINK/V2 с целевой платой был неудачным.

[Обновление прошивки]

В ST-LINK/V2 встроен механизм обновления прошивки отладчика (firmware) через порт USB. Поскольку firmware во время жизни продукта ST-LINK/V2 может развиваться (новый функционал, исправление ошибок, добавление поддержки новых семейств микроконтроллеров, ...), то рекомендуется периодически посещать специальные странички www.st.com, чтобы следить за появлением свежей версии firmware.

[Средства разработки]

Для STM8. См. ST toolset Pack24 с патчем 1 или более свежий, который включает в себя ST Visual Develop (STVD) и ST Visual Programmer (STVP).

Для STM32 и программирования Flash. Инструментарий сторонних производителей: Atollic® TrueSTUDIO®, IAR™ EWARM, Keil® MDK-ARM™ и TASKING® VX-toolset поддерживают ST-LINK/V2 в соответствии с версиями, как это показано в таблице 5.

Таблица 5. Поддержка сторонними разработчиками ST-LINK/V2.

Разработчик Тулчейн/IDE Версия
Atollic® TrueSTUDIO® 2.1
IAR™ EWARM 6.20
Keil® MDK-ARM™ 4.20
TASKING® VX-toolset for Arm® Cortex®-M 4.0.1

Отладчик ST-LINK/V2 требует для себя специального драйвера USB. Если установленный инструментарий также устанавливает этот драйвер автоматически, то он записывает файл stlink_winusb.inf в каталог inf папки Windows.

Если инсталлятор не устанавливает драйвер, то драйвер можно найти на сайте www.st.com:

1. Откройте в браузере страничку www.st.com.
2. На закладке "Поиск" (search), в поле part number найдите ST-LINK/V2.
3. Кликните на ссылку в столбце Generic Part Number для ST-LINK/V2.
4. На закладке "Design support", в секции "SW drivers" кликните на иконку загрузки, чтобы загрузить архив с драйвером (файл с именем наподобие en.stsw-link009.zip).
5. Распакуйте и запустите инсталлятор dpinst_x86.exe или dpinst_amd64.exe в зависимости от 32-битной или 64-битной версии операционной системы Windows.

ST LINK V2 SWIM standard ERNI cable fig11

Рис. 11. Стандартный кабель SWIM ST-LINK/V2 с коннектором ERNI.

ST LINK V2 SWIM low cost cable fig12

Рис. 12. Дешевый кабель SWIM ST-LINK/V2.

VDD: сигнал для определения напряжения питания целевой платы.
DATA: сигнал данных SWIM DATA для обмена между целевой платой и отладчиком.
GND: напряжение земли.
RESET: сигнал сброса целевой платы.

[Ссылки]

1. UM1075 User manual ST-LINK/V2 in-circuit debugger/programmer for STM8 and STM32 site:st.com.
2. STM32F429 Discovery.

 

Добавить комментарий


Защитный код
Обновить

Top of Page