Interfaz Nucleo ST-Link

Este documento describe cómo usar una tarjeta Nucleo STM32L476RG para conectarse a una MCU STM de destino para la descarga de firmware, depuración y conexión de terminal serie. La tarjeta Nucleo se conecta vía USB a un host (Mac, Windows o Linux), la depuración y los cables serie se conectan al equipo de destino. Como resultado, los archivos de firmware (por ejemplo, los archivos Mbed “.bin”) pueden copiarse a la unidad Nucleo USB, que la tarjeta Nucleo entonces flasheará en el objetivo. “Tera Term” o similar puede utilizarse como terminal COM virtual.

Condiciones previas de la tarjeta Nucleo

  • Manuales recomendados de STM: UM1724, Manual del usuario, tarjetas Nucleo STM32
  • Asegúrese de que la versión del firmware de Nucleo ST-Link sea V2J29M18 o superior (de lo contrario, el STML433 MCU no funciona correctamente):
  • Utilice la utilidad “STLinkUpgrade” de ST-Link para actualizar el firmware de Nucleo L4 ST-Link

Preparación de la tarjeta Nucleo para la conexión de objetivos remotos

Utilice una tarjeta Nucleo estándar que incluya una interfaz ST-Link. Haga lo siguiente para conectar la tarjeta Nucleo al objetivo (consulte la figura de la tarjeta Nucleo a continuación):

  • Quite el jumper JP6 (3,3 V de potencia del Nucleo MCU, para evitar señales de MCU)
  • Suelde en el cabezal de pines JP4 (no montado en fábrica)
  • Ponga el jumper en JP4 (permite señales RX/TX en CN3)
  • Quite jumpers CN2 (2 x, esto permite ST-Link para la depuración remota de aplicaciones)

Preparación y conexión del cable adaptador

Un cable adaptador de 8 pines actúa como un cable ST-Link y es necesario para conectar la tarjeta Nucleo al objetivo:

SeñalPin ST-LinkPin de destinoComentario
ConsoleCN3-1 (RX)J3-3 (PA15 TX)Terminal USB Virtual COM
ConsoleCN3-2 (TX)J3-1 (PA2 RX)Terminal USB Virtual COM
VDDCN4-1J3-6 (DO NOT CONNECT)Conector de depuración, VDD no es necesario y puede resultar en corriente inversa, por lo tanto déjelo abierto
SWCLKCN4-2J3-5 (PA14)Conector de depuración
GNDCN4-3J3-8Conector de depuración
SWDIOCN4-4J3-7Conector de depuración
RSTCN4-5J3-4Conector de depuración
SWOCN4-6J3-3Conector de depuración

El uso de las líneas RX/TX/RST/SWO entre un objetivo remoto y la interfaz ST-Link de la tarjeta Nucleo requiere desoldar los puentes de 0 Ω en la parte inferior de la tarjeta Nucleo (véase figura abajo). Otra opción es romper la parte ST-Link (ver la línea blanca punteada en la figura de la tarjeta Nucleo arriba).

0 ΩSeñal
SB12RST
SB13RX
SB14TX
SB15SWO

Cuando el cable ST-Link esté conectado a la aplicación de destino, continúe como se indica a continuación:

  • Conecte el puerto USB a la interfaz ST-Link

El LD1 ST-Link debería encenderse y la unidad USB “NODE_L476RG” se montará en el escritorio.

Configuración finalizada

Después de que se hayan hecho todas las modificaciones a la tarjeta Nucleo, de acuerdo con las instrucciones anteriores, la tarjeta de destino se puede conectar mediante el cable adaptador de 8 pines:

Cargar el firmware en el objetivo

Arrastre y suelte el archivo “.bin” que contiene el firmware a la unidad Nucleo USB (“NODE_L476RG”):

LD1 parpadea rápidamente durante unos segundos y cambia a verde (conectado). Si el LD1 se ilumina en rojo, no se puede establecer ninguna conexión de destino.

Conectar el UART serie de destino al terminal host

Para permitir la depuración de la impresión en serie, los cables serie de destino (CN3, PA2+PA15) se conectan al depurador ST-Link. Esta comunicación serie es reenviada al host por el depurador ST-Link a través de una conexión USB Virtual COM y puede utilizarse con un programa terminal

Se necesitan dos parámetros para utilizar la conexión COM virtual en el host:

  • Nombre del dispositivo USB
  • Tasa de baudios

Windows

El puerto COM del módem USB correcto se puede determinar en el “Panel de control” > “Administrador de dispositivos” de Windows desde la entrada “Puertos (COM & LPT)”:

Una vez que haya encontrado el número del puerto serie, abra “Tera Term” e introduzca el número de puerto y la velocidad de transmisión a través de “Setup» > «Serial port…”:

Salida “Tera Term” de la aplicación de muestra (Windows):

Mac

El nombre correcto del dispositivo USB se puede determinar introduciendo el comando ls /dev/tty.usbmodem* en un shell.

Salida de la aplicación muestra de terminal (Mac/Linux), p. ej:
screen /dev/tty.usbmodemfa413 230400

Sample application output