Placas de desenvolvimento STM32 Nucleo

Índice

STM32 Nucleo Development Boards

As placas de desenvolvimento STM32 Nucleo da ST abrangem uma variedade de opções, incluindo NUCLEO-F030R8 (compatível com STM32F0), NUCLEO-F103RB (compatível com STM32F), NUCLEO-F401RE (compatível com STM32F4) e NUCLEO-L152RE (compatível com STM32L1). Essas placas oferecem várias combinações de desempenho, eficiência energética e recursos. As placas de desenvolvimento STM32 Nucleo integram o depurador/programador ST-Link e são compatíveis com vários ambientes de desenvolvimento, como IAR EWARM, Keil MDK, mbed e IDEs baseados em GCC (Atollic TrueStudio). Isso facilita a prototipagem de novas aplicações MCU STM32. Este artigo fornece uma visão geral das principais especificações e do diagrama de blocos da placa STM32 NUCLEO-F401RE, juntamente com exemplos de programação para placas de desenvolvimento STM32 Nucleo.

Introdução à placa NUCLEO-F401RE

A placa de desenvolvimento NUCLEO-F401RE, também conhecida como NUCLEO-64, possui o microcontrolador STM32F401RET6. Este controlador é baseado no núcleo RISC Arm® Cortex®-M4 de 32 bits de alto desempenho, operando a uma frequência de clock de até 84 MHz. O núcleo Cortex-M4 inclui uma unidade de ponto flutuante (FPU) de precisão simples e suporta todas as instruções e tipos de dados de processamento de dados de precisão simples da Arm. Ele também incorpora um conjunto completo de instruções DSP e uma unidade de proteção de memória (MPU) para maior segurança da aplicação. A placa de desenvolvimento STM32 NUCLEO-F401RE oferece uma maneira acessível e flexível para os usuários experimentarem uma combinação de recursos de desempenho e potência oferecidos pelos microcontroladores STM32. Ela elimina a necessidade de sondas separadas, pois integra o depurador ST-LINK/V2-1. A placa de demonstração STM32 NUCLEO-64 vem com uma biblioteca de software gratuita abrangente e exemplos fornecidos pelo pacote STM32Cube MCU.

Especificações técnicas

  • MCU: STM32F401RET6, 512K flash, 96K RAM, pacote LQFP64
  • ST-LINK/V2-1 integrado (com interface de programação/depuração SWD)
  • Opções de alimentação da placa de demonstração: USB Vbus ou alimentação externa de 5 V
  • 3 indicadores LED
  • 2 botões de usuário e um botão Reset
  • Oscilador de cristal de 768 kHz
  • Biblioteca de software gratuita e exemplos – Pacote STM32Cube MCU

Diagrama de blocos

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

Programação NUCLEO-F401RE - Comunicação serial

Este exercício de programação tem como objetivo compreender o uso da comunicação serial USART1 e envolve duas tarefas:

  1. Ao ligar a placa, enviar a string "System Start!" para o computador host.
  2. Quando o computador host enviar o número hexadecimal 0xA1 para a placa de desenvolvimento, responder imediatamente com a string "a1".

Ferramentas necessárias:

  • Placa de desenvolvimento: NUCLEO-F401RE (Nucleo64), módulo USB para TTL, 4 fios jumper
  • Ferramenta de desenvolvimento: CubeIDE v1.6, ferramenta de depuração serial

Conexões de hardware

Use UART1: UART1 (pino TX: GPIOA9, pino RX: GPIOA10)

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

Configuração gráfica

Definir modo de depuração.

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

Configure a porta serial como USART1.

Escrevendo código no CubeIDE

No arquivo main.c, defina a string de transmissão de dados e a função de retorno de chamada para interrupções da porta serial, conforme mostrado abaixo:

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

Verifique se os dados recebidos no USART1 são 0xA1, responda adequadamente e habilite a função de recepção acionada por interrupção para continuar aguardando os dados recebidos.

Na função principal do arquivo main.c, envie "System Start!" ao ligar (linha 101) e habilite a função de recepção acionada por interrupção (linha 104).

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

Depurar e executar o código – Conecte a placa de desenvolvimento à porta USB do computador. Os resultados da depuração e execução serão os seguintes:

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

Conforme mostrado na captura de tela, a placa de desenvolvimento enviou com sucesso uma mensagem para o computador.

Inscreva-se

Inscreva-se na nossa lista de assinantes para receber atualizações mensais do blog, notícias sobre tecnologia e estudos de caso. Nunca enviaremos spam e você pode cancelar a assinatura a qualquer momento.

Sobre o 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.

Precisa de ajuda?

Rolar para cima

Instant Quote