Placas de desarrollo STM32 Nucleo

Índice

STM32 Nucleo Development Boards

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

Block Diagram of STM32 Nucleo Board
Block Diagram of STM32 Nucleo Board

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:

  1. Al encender la placa, enviar la cadena «System Start!» al ordenador host.
  2. 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)

Connect Nucleo64 development board with USB module
Connect Nucleo64 development board with USB module

Configuración gráfica

Establecer modo de depuración.

Pinout Configuration Debug Serial Wire CubeIDE
Pinout Configuration-Debug Serial Wire CubeIDE

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:

Callback function in main.c file CubeIDE
Callback function in main.c file CubeIDE

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).

Sending and receiving functions in the main.c file CubeIDE
Sending and receiving functions in the main.c file CubeIDE

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:

Program debugging of NUCLEO-F401RE board
Program debugging of NUCLEO-F401RE board
Debugging results of NUCLEO-F401RE board
Debugging results of NUCLEO-F401RE board

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

Suscríbete

Únete a nuestra lista de suscriptores para recibir actualizaciones mensuales del blog, noticias de tecnología y estudios de caso. Nunca enviaremos spam y puedes cancelar tu suscripción en cualquier momento.

Acerca del Autor

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Comparte

Post Recomendado

¿Necesitas ayuda?

Scroll al inicio

Cotización