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.
Nucleo F401RE имеет на плате разъёмы, соответствующие Arduino Uno R3. Если вы уже работали с Arduino, то вам будет легко перейти на Nucleo: вы сможете использовать большинство шилдов и модулей, сделанных специально для Arduino.
Дли питания может использоваться mini USB-разъём, контакт 5V (ровно 5 В) или Vin (7–12 В). Одновременное использование двух способов питания невозможно: источник необходимо выбрать перемычкой JP5.
Для программирования и общения с компьютером вам понадобится mini USB-кабель.