Nucleo — это семейство плат, поддерживающих онлайн среду разработки mbed. Платы этого семейства предоставляют большие возможности для разработчика. Однако обычно, чем больше возможностей, тем выше сложность в освоении и, особенно, тем труднее знакомство. К счастью Nucleo лишён этого недостатка: благодаря среде mbed с возможностями этой платфоры очень просто познакомиться. Покажем это на примере разработки аналога «Hello, world» для микроконтроллерного мира — программы, моргающей светодиодом.
Плата Nucleo прошивается очень просто: при подключении к компьютеру она определяется как «флешка». Вы просто копируете файл прошивки на эту «флешку». И всё — плата прошита. Прошивки мы будем разрабатывать в среде mbed.
mbed — это онлайн среда разработки. Чтобы воспользоваться ею, необходимо просто зарегистрироваться. Пользоваться средой можно абсолютно бесплатно.
Итак, вот последовательность наших действий:
Поехали!
Для получения доступа к среде mbed необходимо зарегистрироваться. Зайдите на сайт mbed.org и пройдите стандартную процедуру регистрации. Она бесплатна. Мы ещё не имеем аккаунта, поэтому выбираем регистрацию нового. У нас второй раз спрашивают, не были ли мы зарегистрированы ранее. Отвечаем «не были». Вводим свои данные. Необходимо указать настоящий почтовый ящик. После окончания процедуры регистрации вам придёт письмо со ссылкой для подтверждения того, что введённый почтовый адрес действительно принадлежит вам.
Можно начинать программировать? Ещё нет. Надо указать системе, какие платы у вас есть. Для это зайдите в раздел «Platforms»…
…и выберите свою плату (в нашем случае это Nucleo-F401RE).
Откроется страница выбранной платы. Справа будет кнопка добавления платы в список имеющихся у вас.
Теперь можно открыть среду разработки…
При этом вам потребуется выбрать программу, которая будет взята за основу и плату. Мы выбираем Blinky — «моргалку». С ней нам вообще ничего писать не придётся, это уже готовый проект, моргающий светодиодом.
Окно среды разработки поделено на три части: окно файлов проекта (слева), окно редактора кода (справа) и окно сообщений сборки (внизу). Найдите в окне файлов проекта файл main.c
и дважды кликните по нему.
Вы должны увидеть следующий код:
#include "mbed.h" DigitalOut myled(LED1); int main() { while(1) { myled = 1; // LED is ON wait(0.2); // 200 ms myled = 0; // LED is OFF wait(1.0); // 1 sec } }
Как видите, пример простой. Документация к классам доступна прямо из среды разработки. В списке файлов вашей программы есть пункт «mbed», который файлом на самом деле не является. Он содержит документацию по классам, функциям и типам. Также, документация доступна онлайн на сайте проекта.
Перед сборкой программы подсоедините устройство по USB к компьютеру. Оно должно определиться в системе как новый носитель информации. По сравнению с Arduino mbed имеет весомое преимущество: установка драйверов для этой платформы не требуется. Для сборки программы и прошивки платы нажмите кнопку «Compile». Откроется окно с предложением сохранить файл прошивки на вашем компьютере. Сохраните файл прямо на диск, который появился при подключении платы. Прошивка начнётся автоматически по окончании записи файла. После прошивки устройство перезагрузится (диск на короткое время пропадёт и появится снова).
Теперь вы умеете создавать программы, транслировать их в файл прошивки для вашей аппаратной платформы и прошивать. Пользуясь документацией, вы можете теперь писать полноценные программы, управляющие не только светодиодами. В вашем распоряжении классы для работы с аналоговыми входами, UART, АЦП, ШИМ и многое другое.
В качестве обучения будет очень полезно выполнить 20 экспериментов.