- Programando la STM32 Blue Pill con Arduino IDE. Parte 1: Configuración
- Programando la STM32 Blue Pill con Arduino IDE. Parte 2: uso de ST-Link
- Programando la STM32 Blue Pill con Arduino IDE. Parte 3: Uso de adaptador FTDI
En la primera parte de esta serie de artículos dedicados a la programación de la Blue Pill con el IDE de Arduino vimos como instalar el core del STM32 y el programa STM32CubeProgrammer, junto a todos los drivers necesarios. En esta segunda parte nos concentraremos en el proceso de grabación utilizando el programador/depurador ST-Link.
El programador y depurador ST-Link
El ST-Link original de ST funciona para toda la línea de micros y emplea dos interfaces: SWI y JTAG, el que permite una depuración mas completa, pero por unos pocos dólares también se consiguen las versiones alternativas, en formato de “dongle” USB con interfaz SWI, pero que son perfectamente útiles para la Blue Pill
En el artículo anterior de esta serie vimos como instalar el software programador, el STM32CubeProgrammer y los drivers necesarios. Para verificar que el sistema operativo reconozca el ST-Link (Windows en mi caso) debemos conectarlo y acceder al Administrador de dispositivos:
Conexión del ST-Link
La conexión del ST-Link a la Blue Pill es muy sencilla, ya que son solo 4 pines los que se deben cablear: SWCLK, SWDIO, 3.3V y GND. Hay que prestar especial atención a la distribución de los pines, ya que puede cambiar de un ST-Link a otro.
Conexiones
Revisar siempre el conexionado de los pines en la serigrafía impresa sobre el ST-Link, porque puede variar de uno a otro
En la siguiente imagen puede verse el ST-Link cableado a la Blue Pill
Configuración del IDE
Antes de poder probar el ST-Link debemos aseguramos que el método de programación (Upload Method) esté configurado como STM32CubeIdeProgrammer (SWD)
Van a notar que no aparecen nuevos puertos COM (como sucede con los Arduino o los ESP) pero no desesperen, no significa que algo haya ido mal en la instalación: el ST-Link no genera un VCP (Virtual COM Port) y el driver lo controla de manera directa.
Probando la instalación
Para comprobar el funcionamiento vamos a hacer funcionar el típico programa de ejemplo “Blink”, haciendo parpadear el led incluido en la Blue Pill, que está en el pin PC13 y ya se encuentra definido como LED_BUILTIN. Para ello abriremos el programa desde el menú Archivo – Ejemplos – 01.Basics – Blink
Si pulsamos el botón Subir, el programa se compila y se graba en la BluePill, comenzando a funcionar inmediatamente.
El core STM32 es un desarrollo activo, que cuenta con muchos desarrolladores que incluyen nuevas funciones constantemente. Para una referencia mas completa pueden visitar su Wiki, donde encontraran las placas soportadas, las librerías disponibles y una referencia de la API, para saber cómo debemos acceder al hardware. También pueden acceder a la página de GitHub del proyecto y el foro si tienen la necesidad de realizar alguna consulta.
Conclusiones
En este artículo vimos como programar la Blue Pill con un grabador ST-Link. En la siguiente y última parte de la serie analizaremos como hacerlo a través de un adaptador FTDI.