STM32 Nucleo F401RE

Nucleo — это высокопроизводительная платформа на ARM-процессоре, поддерживающая популярную онлайн среду разработки mbed.

При помощи Nucleo можно разрабатывать устройства, для которых требуется высокая производительность или сложные математические вычисления. Эта платформа основана на 32-разрядном ARM-процессоре STM32F401 с ядром Cortex-M4, работающим на частоте 84 МГц.

Вы сможете полноценно использовать цветные дисплеи, обрабатывать аудиопоток, управлять сложными многосуставными роботами и даже наделять их интеллектом.

Процессор имеет 512 кБ Flash и 96 кБ SRAM-памяти. Flash выполняет теже функции, что и жёсткий диск на компьютере, а SRAM аналогична оперативной памяти.

Nucleo разработан и произведён швейцарской компанией STMicroelectronics — одним из ведущих производителей ARM-процессоров.

Родным напряжением Nucleo является 3,3 В. Однако все входы и выходы толерантны к 5 В, поэтому вы можете подключать к платформе любые модули и шилды, расчитанные на 5 В.

Программирование

Nucleo поддерживает разные среды разработки. Самой простой для освоения является онлайн среда разработки mbed. Вам не потребуется устанавливать её на компьютер: среда работает прямо из браузера. Компиляция проекта происходит удалённо, вам остаётся только прошить плату бинарным файлом, полученным от среды.

Прошивка платы тоже не представляет проблем: Nucleo определяется как «флешка», на которую вы просто копируете бинарный файл прошивки. Работает это во всех операционных системах, поддерживающих «флешки»: Windows, Linux, MacOS, FreeBSD, QNX и других.

Также, если вы пользуетесь средой mbed, то к вашему распоряжению библиотека классов для работы с периферией. Библиотека документирована и имеет очень простой интерфейс для пользования.

Подробнее о начале работы с mbed и Nucleo вы можете прочитать в вики-статье.

Если вы уже продвинутый разработчик и вам не подходит онлайн среда mbed, вы можете воспользоваться любой стандартной средой разработки для ARM-процессоров: Keil, IAR, GCC.

Периферия

Процессор, на базе которого построена платформа, обладает большим набором периферии. Почти каждый пин может работать не только как цифровой вход или выход, но и иметь другие режимы: АЦП, SPI, I²C, PWM и т.д. В дополнение на каждый пин может быть назначено прерывание.

10 высокоскоростных 12-разрядных АЦП позволяют оцифровывать сигналы частотой до 240 кГц. Три SPI-интерфейса работают на частоте 42 МГц, позволяя подключать по нему видеокамеры. I²C интерфейс, работающий на частоте до 1 МГц, легко осилит аудиомодуль. Наиболее востребованных UART-интерфейсов на плате целых три, два из них работают на скоростях до 10 500 000 бод, а третий — до 5 250 000 бод. В процессор также встроены часы реального времени и ИК-порт.

Для того, чтобы процессор мог не только принимать или передавать данные по таким высокоскоростным интерфейсам, он имеет модуль DMA.

Совместимость с Arduino

Nucleo F401RE имеет на плате разъёмы, соответствующие Arduino Uno R3. Если вы уже работали с Arduino, то вам будет легко перейти на Nucleo: вы сможете использовать большинство шилдов и модулей, сделанных специально для Arduino.

Питание

Дли питания может использоваться mini USB-разъём, контакт 5V (ровно 5 В) или Vin (7–12 В). Одновременное использование двух способов питания невозможно: источник необходимо выбрать перемычкой JP5.

Для программирования и общения с компьютером вам понадобится mini USB-кабель.

Характеристики

  • Ядро: Cortex-M4
  • Рабочая частота: 84 МГц
  • Разрядность: 32 бита
  • Набор машинных инструкций: ARMv7E-M
  • Производительность: 105 DMIPS
  • Объём SRAM: 96 кБ
  • Объём Flash: 512 кБ
  • Количество цифровых пинов: до 81
  • Количество аналоговых входов: 10
  • Разрядность АЦП: 12 бит
  • Количество SPI: 4
  • Количество I²C: 3
  • Количество UART: 3
  • Количество таймеров: 10
  • Напряжение питания: 5 В, 7–12 В

Ссылки