STM32 (Nucleo F401RE): Полное Руководство по Распиновке, Спецификациям и Программированию
STM32 — семейство 32-битных микроконтроллеров STMicroelectronics на ядрах ARM Cortex-M. Nucleo F401RE — доступная отладочная плата (Nucleo-64) с встроенным ST-LINK/V2-1, Arduino-совместимыми разъемами и Morpho-разъемами для полного доступа к пинам. Идеальный старт для изучения STM32. Разберем конфигурацию пинов, спеки и инструменты разработки.
Обзор платы Nucleo-F401RE
- MCU: STM32F401RET6 (Cortex-M4F, FPU, 84 МГц).
- Flash: 512 КБ, SRAM: 96 КБ.
- Питание: USB 5V / Vin 7–15V / 3.3V / 5V выходы. Стабилизатор 3.3В на плате.
- Отладка: ST-LINK/V2-1 (SWD/JTAG), виртуальный COM-порт (VCP), масс-хранилище (drag-n-drop прошивка .bin).
- 3 пользоваских LED: LD1 (USB/COM), LD2 (User, PA5), LD3 (PWR).
- 2 кнопки: USER (PC13), RESET (NRST).
- Разъемы: Arduino Uno R3 (CN5,6,8,9) + Morpho (CN7, CN10 — 2×38 пинов, все сигналы MCU).
Конфигурация пинов
Arduino-совместимые разъемы (CN5, CN6, CN8, CN9)
Стандартный шаг 0.1", расположение как у Arduino Uno. Основные сигналы:
- CN5 (Power): VIN, GND, 3V3, 5V, GND, GND, VREF, A0–A5 (ADC).
- CN6 (Analog/Digital): A0–A5 (PA0–PA5, PC0–PC5), D0–D7 (PA2, PA3, PA10, PB3, PB5, PB4, PB10, PA8).
- CN8 (Digital): D8–D15 (PA9, PC7, PB6, PC8, PA15, PB12, PB13, PB14).
- CN9 (Digital/Power): D15 (PB14), D14 (PB13), D13 (PB12), D12 (PB13?), D11 (PA7), D10 (PA6), D9 (PA5?), AREF, GND, D8 (PB12?). Точное соответствие — в User Manual UM1724.
Важно: не все пины Arduino доступны / имеют те же функции. Проверяйте таблицу Pin Map в даташите платы.
Morpho разъемы (CN7, CN10) — все 76 пинов MCU
Два 38-пиновых разъема (по 19×2). Дают доступ ко всем GPIO, таймерам, ADC, DAC, USART, SPI, I2C, CAN, USB, SDIO, JTAG/SWD, системным пинам (BOOT0, NRST, OSC32_IN/OUT, PH0/PH1). Удобны для дочерних плат (shields) и логических анализаторов.
GPIO и периферия (STM32F401RE)
- GPIO: до 50 пинов (зависит от корпуса LQFP64).
- ADC: 12-бит, 16 каналов (до 2.4 MSPS).
- DAC: 2 канала 12-бит (PA4, PA5).
- Таймеры: 6×16-бит (TIM1,3,9,10,11,14) + 2×32-бит (TIM2,5). PWM, Input Capture, Encoder.
- Watchdog: IWDG + WWDG.
- RTC: калибруемый, LSE 32.768 кГц (кварц на плате).
- USART/UART: 4 (USART1,2,6 + UART4/5).
- SPI: 3 (SPI1,2,3).
- I2C: 3 (I2C1,2,3).
- CAN: 1 (CAN1).
- USB: FS Device/Host/OTG (PA11/12).
- SDIO: 1 (4-bit).
- CRC, RNG, DMA (2 контроллера, 16 потоков).
Технические спецификации (Nucleo-F401RE)
| Параметр | Значение |
|---|---|
| Архитектура | ARM Cortex-M4F (FPU, DSP) |
| Макс. частота | 84 МГц |
| Flash | 512 КБ |
| SRAM | 96 КБ |
| Питание MCU (VDD) | 1.7–3.6 В |
| Питание платы (VIN) | 7–15 В (рекоменд. 7–12 В) |
| Потребление (Standby, без RTC) | 2.4 мкА |
| Кварц HSE | 8 МГц (на плате), диапазон 4–26 МГц |
| Внутренний HSI | 16 МГц |
| Рабочая температура | -40…+85 °C |
Среды разработки (IDE) и программаторы
- STM32CubeIDE (официальная, бесплатная, Eclipse-based, включает CubeMX для конфигурации периферии, кодогенератор, отладчик). Рекомендуемая для старта.
- Keil MDK-ARM (платная, бесплатная лицензия до 32 КБ кода, популярна в промышленности).
- IAR EWARM (платная, высокая оптимизация).
- PlatformIO / VS Code (кроссплатформенная, поддерживает STM32Cube, Arduino framework, mbed, Zephyr).
- Arduino IDE (через пакет «STM32duino» — работа в Arduino-стиле, но доступ к железу ограничен).
- Online: Mbed Compiler (устаревает, переходит на Mbed Studio / VS Code).
Прошивка: ST-LINK на плате (USB) — drag-n-drop .bin на диск «NODE_F401RE» или через IDE (OpenOCD/GDB). Внешний ST-LINK/V2/V3 — для кастомных плат.
Применение STM32 (F401 и семейство)
- Робототехника: драйверы моторов (FOC, BLDC), балансирующие роботы, манипуляторы.
- Автоматика: PLC, контроллеры процессов, датчики, приводы.
- IoT: шлюзы, узлы датчиков (с внешним Wi-Fi/LoRa/NB-IoT модулем).
- Медицина: портативные приборы, мониторинг.
- Потребительская электроника: аудио (DSP на Cortex-M4F), wearables, дроны (flight controllers на F4/F7/H7).
- Инструменты: осциллографы, мультиметры, генераторы.
Похожие отладочные платы
- STM32F4 Discovery (старый флагман, MEMS, аудио, LCD).
- STM32F429 Discovery (LCD, камера, больше памяти).
- Nucleo-F103RB (Cortex-M3, 72 МГц, дешевле, 5V-толерантные пины).
- Nucleo-F446RE (Cortex-M4F, 180 МГц, USB OTG, больше периферии).
- Nucleo-H743ZI (Cortex-M7, 480 МГц, топ производительности).
- Arduino Due (SAM3X8E, Cortex-M3, 84 МГц, 3.3В).
- ESP32 DevKit (Wi-Fi/BT, двухъядерный, дешевле, но другая архитектура).
Заключение
Nucleo-F401RE — лучший вход в экосистему STM32: дешево (~$15), встроенный отладчик, Arduino-шильды, полный доступ к пинам через Morpho, мощный Cortex-M4F с FPU. Официальная STM32CubeIDE дает профессиональные инструменты бесплатно. Начните с мигания LED (LD2, PA5) через CubeMX → сгенерировать проект → собрать → прошить. Дальше — периферия, RTOS, DSP. Вопросы по миграции с Arduino, настройке тактирования, DMA — обращайтесь.
Промышленные технологии
- Выбор правильного взрывозащищенного двигателя: всеобъемлющее руководство
- Лучшие практики хранения электродвигателей: максимизация ресурса и производительности
- Мастерство ЧПУ-цехов: полное руководство для профессионалов
- Ваше полное руководство по 3D-печати: от основ до передовых техник
- Полное руководство по обработанным деталям: преимущества, применение и экономически эффективные решения
- MIG против TIG сварки: полное руководство по выбору лучшего метода
- Промышленные мокрые тормоза: полное руководство по надежному торможению тяжелой техники
- Мастерство управления запасами: проверенные стратегии для любого бизнеса
- Самодельные зарядные устройства для батарей: Полное руководство по сборке и выбору лучших схем
- Мастер 5-осевой ЧПУ-обработки: экспертное руководство для точного производства