Las placas de desarrollo STM32 Nucleo de ST abarcan una amplia gama de opciones, entre las que se incluyen NUCLEO-F030R8 (compatible con STM32F0), NUCLEO-F103RB (compatible con STM32F), NUCLEO-F401RE (compatible con STM32F4) y NUCLEO-L152RE (compatible con STM32L1). Estas placas ofrecen diversas combinaciones de rendimiento, eficiencia energética y características. Las placas de desarrollo STM32 Nucleo integran el depurador/programador ST-Link y son compatibles con diversos entornos de desarrollo, como IAR EWARM, Keil MDK, mbed e IDE basados en GCC (Atollic TrueStudio). Esto facilita la creación de prototipos de nuevas aplicaciones MCU STM32. Este artículo ofrece una descripción general de las especificaciones clave y el diagrama de bloques de la placa STM32 NUCLEO-F401RE, junto con ejemplos de programación para las placas de desarrollo STM32 Nucleo.
Introducción a la placa NUCLEO-F401RE
La placa de desarrollo NUCLEO-F401RE, también conocida como NUCLEO-64, cuenta con el microcontrolador STM32F401RET6. Este controlador se basa en el núcleo RISC Arm® Cortex®-M4 de 32 bits y alto rendimiento, que funciona a una frecuencia de reloj de hasta 84 MHz. El núcleo Cortex-M4 incluye una unidad de punto flotante (FPU) de precisión simple y es compatible con todas las instrucciones y tipos de datos de procesamiento de datos de precisión simple de Arm. También incorpora un conjunto completo de instrucciones DSP y una unidad de protección de memoria (MPU) para mejorar la seguridad de las aplicaciones. La placa de desarrollo STM32 NUCLEO-F401RE ofrece a los usuarios una forma asequible y flexible de experimentar con la combinación de prestaciones y funciones de potencia que ofrecen los microcontroladores STM32. Elimina la necesidad de sondas separadas, ya que integra el depurador ST-LINK/V2-1. La placa de demostración STM32 NUCLEO-64 incluye una completa biblioteca de software gratuito y ejemplos proporcionados por el paquete STM32Cube MCU.
Especificaciones técnicas
- MCU: STM32F401RET6, 512 K de memoria flash, 96 K de RAM, paquete LQFP64
- ST-LINK/V2-1 integrado (con interfaz de programación/depuración SWD)
- Opciones de alimentación de la placa de demostración: USB Vbus o fuente externa de 5 V
- 3 indicadores LED
- 2 botones de usuario y un botón de reinicio
- Oscilador de cristal de 768 kHz
- Biblioteca de software gratuita y ejemplos: paquete STM32Cube MCU
Diagrama de bloques

Programación NUCLEO-F401RE - Comunicación serie
Este ejercicio de programación tiene como objetivo comprender el uso de la comunicación serie USART1 e implica dos tareas:
- Al encender la placa, enviar la cadena «System Start!» al ordenador host.
- Cuando el ordenador host envía el número hexadecimal 0xA1 a la placa de desarrollo, responder inmediatamente con la cadena «a1».
Herramientas necesarias:
- Placa de desarrollo: NUCLEO-F401RE (Nucleo64), módulo USB a TTL, 4 cables de puente
- Herramienta de desarrollo: CubeIDE v1.6, herramienta de depuración serie
Conexiones de hardware
Utilizar UART1: UART1 (pin TX: GPIOA9, pin RX: GPIOA10)

Configuración gráfica
Establecer modo de depuración.

Configure el puerto serie como USART1.
Escribir código en CubeIDE
En el archivo main.c, defina la cadena de transmisión de datos y la función de devolución de llamada para las interrupciones del puerto serie, como se muestra a continuación:

Comprueba si los datos recibidos en USART1 son 0xA1, responde en consecuencia y habilita la función de recepción controlada por interrupciones para seguir esperando datos entrantes.
En la función principal del archivo main.c, envíe «System Start!» al encender el dispositivo (línea 101) y habilite la función de recepción controlada por interrupciones (línea 104).

Depurar y ejecutar el código: conecte la placa de desarrollo al puerto USB del ordenador. Los resultados de la depuración y la ejecución serán los que se muestran a continuación:


Como se muestra en la captura de pantalla, la placa de desarrollo ha enviado correctamente un mensaje al ordenador.




