Ya hemos presentado las herramientas de depuración de hardware y el programador, ahora vamos a aprender juntos a utilizar el programador ST-Link. En este artículo, aprenderás sobre las diferentes versiones de ST-Link, sus diferencias y cómo utilizarlas para programar tu chip.
Versión ST-Link
Actualmente, existen tres versiones de ST-Link: ST-LINK/V1, ST-LINK/V2 y STLINK-V3. Al mismo tiempo, la placa de desarrollo ST también viene con su propia herramienta ST-Link, pero su versión ST-Link varía según la placa de desarrollo.
ST-LINK V1
ST-LINK V1 es la versión más antigua y, actualmente, son pocos los que la utilizan en el mercado.

ST-LINK V2
La versión ST-LINK V2 se puede dividir en dos: ST-LINK/V2 (versión estándar) y ST-LINK/V2-ISOL (versión aislada). Entre ellas, ISOL (aislamiento) viene con un aislamiento de 1000 V. Esta versión es relativamente cara.


ST-LINK V3
STLINK-V3 también tiene varias categorías:
STLINK-V3SET
STLINK-V3SET es un conjunto de herramientas de programación y descarga totalmente funcionales independientes de la placa de evaluación ST, y también es una herramienta STLINK-V3 convencional. Sale a la venta por 35 dólares.

STLINK-3MINI
En 2019, ST lanzó el STLINK-3MINI, más compacto y pequeño, con unas dimensiones de solo 15 x 30 mm, y su precio de venta al público era de solo 9,75 dólares.

STLINK-V3MODS
Las funciones de STLINK-V3MODS y STLINK-V3MINI son básicamente las mismas, pero los escenarios de aplicación son diferentes. Se puede comparar con la «versión sello» de STLINK-V3MINI.

B-STLINK-VOLT
La placa B-STLINK-VOLT es un módulo adicional/placa adaptadora para STLINK-V3SET. Es más adecuada para sistemas STM32 de bajo voltaje (como 1,8 V).

B-STLINK-ISOL
B-STLINK-ISOL es similar a B-STLINK-VOLT y también es una «placa de expansión» para STLINK-V3SET. Proporciona funciones de aislamiento galvánico y conversión de voltaje y se utiliza con microcontroladores por debajo de 3,3 V.

STLINK-V3PWR
STLINK-V3PWR, lanzado en marzo de 2023, es un hardware ST-Link utilizado para supervisar y depurar la corriente de bajo consumo de STM32. El precio de lanzamiento es de 93,10 dólares.

Diferentes interfaces de ST-LINK
Interfaz SWIM
La interfaz SWIM se utiliza para depurar y descargar STM8. Solo tiene cuatro cables y se define de la siguiente manera:
| ST-LINK Port | STM8 Target Board | Function |
|---|---|---|
| VDD | MCU VCC | Connects to STM8's power supply VCC |
| DATA | MCU SWIM PIN | Connects to STM8's SWIM pin |
| GND | GND | Connects to STM8's GND |
| RESET | MCU RESET PIN | Connects to STM8's reset pin |
Interfaz JTAG/SWD
La interfaz ST-Link/V2 JTAG/SWD se define de la siguiente manera:
| Pin | ST-LINK Port | Target STM32 (JTAG) | Target STM32 (SWD) |
|---|---|---|---|
| 1 | TVCC | MCU VDD | MCU VDD |
| 2 | TVCC | MCU VDD | MCU VDD |
| 3 | TRST | JNTRST | GND |
| 4 | GND | GND | GND |
| 5 | TDI | JTDI | GND |
| 6 | GND | GND | GND |
| 7 | TMS_SWDIO | JTMS | SWDIO |
| 8 | GND | GND | GND |
| 9 | TCK_SWCLK | JTCK | SWCLK |
| 10 | GND | GND | GND |
| 11 | NC | NC | NC |
| 12 | GND | GND | GND |
| 13 | TDO_SWO | JTDO | TRACESWO (for SWV) |
| 14 | GND | GND | GND |
| 15 | NRST | NRST | NRST |
| 16 | GND | GND | GND |
| 17 | NC | NC | NC |
| 18 | GND | GND | GND |
| 19 | VDD | NC | NC |
| 20 | GND | GND | GND |
Herramienta de programación ST-LINK
Una característica común de ST-LINK es que se utiliza para programar (descargar programas). Las herramientas de programación incluyen: STVP, STM32 ST-LINK Utility y STM32CubeProgrammer.
- STVP: una herramienta que se puede utilizar tanto para la programación STM8 como para la programación 32.
- ST-LINK Utility: una herramienta limitada a la programación STM32.
- STM32CubeProg: una herramienta que se puede utilizar tanto para la programación STM8 como 32.
Un ejemplo de programación ST-LINK con Keil 5
Aquí presentamos cómo utilizar st-link v2 en Keil 5 para descargar y depurar programas para la placa de desarrollo arm. Incluye el método de cableado de stlink, la configuración de stlink en keil, la depuración en keil, etc.
Keil 5 Configuración
Haga clic en la varita mágica de la barra de herramientas de Keil para abrir el cuadro de diálogo de configuración, como se muestra a continuación:


Marque «Restablecer y ejecutar» y el programa se restablecerá y ejecutará automáticamente después de descargarse en el microcontrolador.

Depuración
Entrar en modo de depuración
Haga clic en el botón para entrar o salir del modo de depuración:

Operaciones comunes de depuración
Restablecer
Restablezca el programa a su posición inicial.

Depuración en un solo paso
Significa que cada vez que se hace clic en el botón, el programa ejecuta un paso. Cuando encuentra una función de llamada, entra en la función llamada. Haga clic en el botón del icono o pulse la tecla de acceso rápido F11.

Depuración paso a paso
Significa depuración línea por línea, es decir, cada vez que se hace clic en el botón, el programa ejecuta una línea. Cuando se encuentra una función, no entrará en ella. Haga clic en el botón del icono o pulse la tecla de acceso rápido F10.

Salir de la depuración
significa salir del depuración de funciones, es decir, cada vez que se hace clic en el botón, el programa sale de una función hasta que se sale de la función más externa (función principal). Haga clic en el botón del icono o pulse la tecla de acceso rápido Ctrl + F11.

Ejecute el programa en la posición específica.
Si hace clic en el botón (o Ctrl + F11), el programa se detendrá cuando llegue a la posición del cursor (siempre que el programa pueda ejecutarse hasta la posición del cursor).

Ir a la posición de pausa del programa de Keil
Esta función es eficaz cuando el programa deja de ejecutarse y nos ayuda a encontrar la ubicación de la pausa del programa.

Ventana de depuración
El menú de la ventana de depuración solo se activa durante el proceso de depuración y es diferente de la ventana en el estado de edición normal.

Memoria o ventana variable
Seleccione una variable, haga clic con el botón derecho del ratón y seleccione «Añadir 'Nombre de la variable' a…» para añadirla a la ventana de observación especificada.

Ventana de periféricos del sistema
Es decir, la ventana de visualización del valor del registro periférico.




