Разработчики ST предлагают широкий выбор плат разработки STM32 Nucleo, в том числе NUCLEO-F030R8 (с поддержкой STM32F0), NUCLEO-F103RB (с поддержкой STM32F), NUCLEO-F401RE (с поддержкой STM32F4) и NUCLEO-L152RE (поддерживающая STM32L1). Эти платы предлагают различные комбинации производительности, энергоэффективности и функций. Платы разработчика STM32 Nucleo интегрируют отладчик/программатор ST-Link и совместимы с различными средами разработки, такими как IAR EWARM, Keil MDK, mbed и IDE на базе GCC (Atollic TrueStudio). Это упрощает создание прототипов новых приложений для микроконтроллеров STM32. В этой статье представлен обзор основных технических характеристик и блок-схема платы STM32 NUCLEO-F401RE, а также примеры программирования для плат разработчика STM32 Nucleo.
Введение в плату NUCLEO-F401RE
Платформа разработчика NUCLEO-F401RE, также известная как NUCLEO-64, оснащена микроконтроллером STM32F401RET6. Этот контроллер основан на высокопроизводительном 32-разрядном RISC-ядре Arm® Cortex®-M4, работающем на тактовой частоте до 84 МГц. Ядро Cortex-M4 включает в себя блок с плавающей запятой (FPU) одинарной точности и поддерживает все инструкции и типы данных Arm одинарной точности. Оно также включает в себя полный набор инструкций DSP и блок защиты памяти (MPU) для повышения безопасности приложений. Платформа разработки STM32 NUCLEO-F401RE предоставляет пользователям доступный и гибкий способ экспериментировать с сочетанием производительности и энергосберегающих функций, предлагаемых микроконтроллерами STM32. Она устраняет необходимость в отдельных зондах, так как в нее встроен отладчик ST-LINK/V2-1. Демо-плата STM32 NUCLEO-64 поставляется с полной бесплатной библиотекой программного обеспечения и примерами, предоставляемыми пакетом STM32Cube MCU.
Технические характеристики
- Микроконтроллер: STM32F401RET6, 512 КБ флэш-памяти, 96 КБ ОЗУ, корпус LQFP64
- Встроенный ST-LINK/V2-1 (с интерфейсом программирования/отладки SWD)
- Варианты питания демонстрационной платы: USB Vbus или внешний источник питания 5 В
- 3 светодиодных индикатора
- 2 пользовательские кнопки и одна кнопка сброса
- Кварцевый генератор 768 кГц
- Бесплатная библиотека программного обеспечения и примеры — пакет STM32Cube MCU
Блок-схема

Программирование NUCLEO-F401RE — последовательная связь
Это программирование направлено на понимание использования последовательной связи USART1 и включает в себя две задачи:
- При включении платы отправить строку «System Start!» на хост-компьютер.
- Когда хост-компьютер отправляет шестнадцатеричное число 0xA1 на плату разработчика, немедленно ответить строкой «a1».
Необходимые инструменты:
- Разработка платы: NUCLEO-F401RE (Nucleo64), модуль USB-TTL, 4 перемычки
- Инструмент разработки: CubeIDE v1.6, инструмент последовательной отладки
Аппаратные соединения
Использование UART1: UART1 (контакт TX: GPIOA9, контакт RX: GPIOA10)

Графическая конфигурация
Установить режим отладки.

Настройте последовательный порт как USART1.
Написание кода в CubeIDE
В файле main.c определите строку передачи данных и функцию обратного вызова для прерываний последовательного порта, как показано ниже:

Проверьте, является ли данные, полученные по USART1, 0xA1, ответьте соответствующим образом и включите функцию приема по прерыванию, чтобы продолжить ожидание входящих данных.
В основной функции в файле main.c отправьте «System Start!» при включении питания (строка 101) и включите функцию приема по прерыванию (строка 104).

Отладка и запуск кода — Подключите плату разработчика к USB-порту компьютера. Результаты отладки и запуска будут такими, как показано ниже:


Как показано на скриншоте, плата разработчика успешно отправила сообщение на компьютер.




