Детский микрокомпьютер BBC Micro:bit

Изучаем устройство, функциональность и пишем первую программу
4 минуты7059

Британская компания BBC, известная благодаря разработке домашнего компьютера BBC Micro в 80-х, запустила в 2012 году обучающий проект. Его цель  —  побудить детей заниматься цифровым творчеством вместо примитивного медиапотребления. Для этого был разработан детский микрокомпьютер BBC Micro:bit.

В 2015 году BBC пообещала бесплатно раздать миллион таких устройств школьникам Великобритании — и в 2016-м так и сделала. Сейчас плату Micro:bit можно приобрести у авторизованных продавцов или на AliExpress по цене около 15 $.

ВВС Micro:bit — устройство, которое может как развлекать, так и обучать: стать основой для робота, системы домашней автоматизации, частью носимого гаджета. Или просто отображать смайлик при нажатии кнопки. Оно поможет освоить программирование и познакомиться с принципами работы компьютерных устройств. Плата интерактивна и проста в освоении — знакомиться с ней можно начиная с семи лет.

Есть официальное руководство на русском языке, поэтому начать работу ещё проще. 

Что на борту

Микрокомпьютер ВВС Micro:bit представляет собой небольшую печатную плату с набором встроенных компонентов. На лицевой стороне расположены дисплей и кнопки. На тыльной — микроконтроллер, радиомодуль, акселерометр, компас, разъёмы для подключения USB и питания, кнопка сброса. Расширить функциональность можно с помощью контактов ввода-вывода, расположенных вдоль нижнего края платы.

Дисплей — основное устройство вывода микрокомпьютера. Он представляет собой светодиодную матрицу 5×5 и позволяет отображать анимированные и неподвижные картинки, а также текст в режиме бегущей строки.

Основные устройства ввода — две кнопки, А и В — располагаются по бокам дисплея. С их помощью можно вводить в программу простые данные, например управлять персонажем игры.

Сердце устройства — однокристальная система Nordic nRF51822 (обозначена как processor на плате). Она включает:

  • одноядерный процессор ARM Cortex-M0 (16 МГц),
  • 16 КБ оперативной памяти,
  • 256 КБ постоянной памяти для хранения программ.

Вспомогательная микросхема NXP Freedom KL26Z отвечает за поддержку USB для обмена данными и прошивки. Если подключить плату к компьютеру, она появится в «Проводнике» как обычная флешка.

Радиомодуль — часть главного процессора. Позволяет общаться с другими такими же платами или обмениваться данными с устройствами по технологии Bluetooth с низким энергопотреблением (BLE).

Чтобы не усложнять жизнь подключением внешних модулей, инженеры BBC встроили в плату несколько датчиков.

  • Акселерометр — интегральная схема размером меньше процессора. Определяет положение платы в пространстве, может работать как шагомер и реагирует на встряхивание.
  • Компас — тоже крошечная интегральная схема. Как и традиционный компас, этот датчик реагирует на магнитные поля и определяет северное направление.
  • Термометр измеряет температуру окружающей среды — он встроен прямо в контроллер.

Подключение дополнительных модулей

Хотя ВВС Micro:bit вполне самодостаточен, есть несколько вариантов подключения дополнительных модулей.

  • Площадки под «крокодилы» позволяют подключить три сигнальных пина и контакты для питания модулей.
  • Отверстия Banana Plug предназначены для штекеров типа «банан» диаметром 4 мм и объединены с контактными площадками под «крокодилы».
  • Краевой разъём содержит 5 площадок под «крокодилы» и оставшиеся 20 пинов в виде узких контактных площадок с шагом 1,37 мм. Их прямое подключение затруднено, но проблема решается с помощью переходников наподобие micro:bit Breakout, которые совместимы с макетными платами.

Приступаем к программированию

Чтобы попробовать программировать для Micro:bit, не обязательно приобретать само устройство. В облачной среде разработки есть полноценный встроенный эмулятор.

На сайте Micro:bit можно выбрать один из двух онлайн-инструментов программирования Micro:bit — MakeCode Editor и Python Editor. Microsoft MakeCode Editor позволяет программировать с помощью блоков, используя язык JavaScript Block или JavaScript. Этот редактор содержит и полноценный эмулятор устройства.

Выбираем MakeCode Editor, нажимая «Let’s code». На открывшейся странице видим крупную кнопку «+ New Project», а также кнопки с названиями сохранённых ранее проектов (если они у вас были). После нажатия на «+ New Project» перед нами открывается рабочая среда облачного редактора.

В левой части экрана видим эмулятор Micro:bit. По мере написания программы она выполняется в эмуляторе точно так же, как в настоящем устройстве. Под эмулятором находятся кнопки управления.

Панель инструментов, расположенная в центре, содержит блоки, из которых можно создавать свои программы. Блоки разделены на несколько категорий, обозначенных разными цветами. У каждого блока есть название и конфигурация.

Кнопка «Help» (кружок с вопросительным знаком) находится вверху справа. Справка содержит описание «языка блоков», а также руководство для начинающих. Рядом — кнопка «More» в виде шестерёнки. Она ведёт к настройкам проекта: например, можно выбрать русский язык, и тогда у блоков будут русские названия.

В нижней части видим поле для ввода имени проекта. Первое, что стоит сделать при создании нового проекта, — дать ему описательное имя вместо стандартного «Untitled» и нажать на кнопку «Save» справа от этого поля.

Кнопка «Download» даёт системе команду скомпилировать вашу программу в шестнадцатеричный файл, который потом можно загрузить в реальное устройство.

Рабочая область в правой части предназначена для написания программ. При создании нового проекта она содержит два блока синего цвета: «on start» (при начале) и «forever» (постоянно).

Пишем «Hello, World»

«Hello, world!» («Привет, мир!») — первая программа, которую традиционно создают при изучении любого языка программирования. Напишем такую и на JavaScript Blocks.

Для этого щёлкнем на панели инструментов на разделе «Basic» и выберем там блок «show string» (показать строку). Перетащим его в рабочую область так, чтобы он оказался внутри «on start» или «forever». Затем отредактируем строку, чтобы получилось «Hello, world!» вместо «Hello!» по умолчанию.

После этого нажмём под эмулятором кнопку старта (с зелёной стрелкой) — и увидим бегущую строку со словами «Hello, world!». Её отобразит светодиодная матрица устройства. Вот вы и написали первую программу для Micro:bit — ничего сложного.

Micro:bit — хороший способ начать путь в программировании ещё в детстве. А если нужен более основательный, системный подход — приглашаем вас в GeekSchool, на курсы программирования на Python и разработки игр! Кстати, BBC Micro:bit поддерживает и Python — а у этого языка ещё множество интересных сценариев применения.

программированиеpython-school
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!