Программирование платы Micro:bit

Цель: изучить основные аппаратные и программные средства образовательной платы Micro:bit и примеры их применения.

Создание проекта

Откройте браузер и перейдите по следующей ссылке: makecode.microbit.org. Откроется главная страница среды визуального программирования MakeCode. Нажмите кнопку Новый проект и введите имя проекта – 1-1 Анимация. Нажмите кнопку Создать.

Задание 1. Светодиоды и кнопки

1.1 Анимация

Создадим анимацию с изображением утки:

Составьте следующую программу:

Удаление блоков

Удалить лишние блоки можно перетащив их обратно на палитру блоков. При этом должно появиться изображение мусорной корзины.

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

Проверьте работу программы на симуляторе, расположенном в левой части окна. Если всё работает корректно, подключите плату Micro:bit к компьютеру.

Для загрузки программы необходимо соединить плату с браузером. Для этого нажмите на image-20220617195710122 в нижней части окна и выберите опцию Подключить устройство. Нажмите кнопку Далее дважды и выберите плату Micro:bit в появившемся диалоге:

Подтвердите выбор нажав кнопку Подключение. В открывшемся окне нажмите кнопку Готово. Теперь для загрузки программы нажимайте кнопку image-20220617195751204 Скачать.

Ручная загрузка программы

Если опция Подключить устройство не доступна, то hex-файл с программой необходимо будет вручную копировать на устройство. Для этого нажмите кнопку Скачать и дождитесь загрузки файла с программой. Micro:bit распознаётся ОС как Flash-накопитель. В проводнике откройте устройство с именем MICROBIT и скопируйте в него hex-файл с программой. После завершения копирования, программа запустится.

Проверьте работу программы на реальном устройстве.

Задания для самостоятельной работы

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

1.2 “Эмоциональный” бейджик

Создадим бейджик, который будет реагировать на нажатие кнопок A и B и показывать разные смайлики:

Создание нового проекта

Перейдите к списку проектов, нажав кнопку image-20220617200553818. Создайте новый проект с именем 1-2 Бейдж.

Составьте следующую программу:

Micro:bit будет ожидать нажатия на кнопки и выполнять команды, которые находятся в соответствующих блоках.

Задания для самостоятельной работы

  • Попробуйте нарисовать собственные смайлики.
  • Сделайте бейджик для голосования, который позволит показал галочку или крестик, в зависимости от нажатой кнопки.

1.3 Бейджик с акселерометром

Увеличим количество эмоций, которые можно показать с помощью бейджика. Для этого используем встроенный акселерометр. С помощью определённых блоков можно получить информацию о наклоне платы, её встряхивании или свободном падении:

Составьте следующую программу:

Нажав на выпадающий список в блоке, который отслеживает жесты, можно увидеть другие варианты, которые можно использовать для запуска кода:

Задания для самостоятельной работы

  • Добавьте показ ещё одного смайлика при одновременном нажатии кнопок A и B.
  • Используйте другие жесты, чтобы добавить новые смайлики к бейджику.

Задание 2. Датчики

2.1 Игральный кубик

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

Создание нового проекта

Создайте новый проект с именем 2-1 Кубик.

Перейдите в раздел Переменные. Нажмите кнопку Создать переменную и введите её имя - number. Имя переменной может содержать как латинские так и русские буквы.

После создания переменной составьте следующую программу.

Советы по составлению программы

Нажимая на изображение + в блоке Если можно добавить множество ветвей Иначе если. Нажав правой кнопкой мыши по любому блоку, можно создать его копию. Это поможет сэкономить много времени при составлении программ.

Задания для самостоятельной работы

  • Добавьте очистку экрана после 2 секунд отображения результата.
  • Нарисуйте собственные шаблоны отображения цифр.

2.2 Умный термометр

Используем датчик температуры для создания термометра. Программа будет сохранять наименьшую и наибольшую измеренные температуры, и показывать эти значения после нажатия на кнопки.

Создание нового проекта

Создайте новый проект с именем 2-2 Термометр.

В разделе Переменные создайте три переменные - current-temperature (текущая температура), max и min (для хранения максимальной и минимальной температур соответственно).

При включении платы необходимо проинициализировать все три переменные измеренным значение температуры:

Устройство будет проводить измерение температуры каждые две секунды. Чтобы показать, что программа всё ещё работает на матрицу выведем мигающую точку:

Добавьте блоки, с помощью которых на матрицу будут выводится значения максимальной и минимальной измеренной температур:

2.3 Датчик освещённости

Используем датчик освещённости, чтобы включать светодиоды, когда на устройство светит солнце:

Создание нового проекта

Создайте новый проект с именем 2-3 Датчик освещенности.

Составьте следующую программу:

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

Задания для самостоятельной работы

  • Покажите другое изображение на матрице, когда становится темно.
  • Анимируйте изображение солнца, когда становится светло.

2.4 Компас

Используя магнетометр создадим компас, который при повороте на север будет выводить букву N на светодиодную матрицу:

Создание нового проекта

Создайте новый проект с именем 2-4 Компас.

Создайте переменную bearing. В данной переменной будет хранится азимут:

Составьте следующую программу:

В случае если показания магнитометра меньше 45 или больше 315 градусов, на экран выводится буква N, иначе выводится пустая строка.

Если данная программа запускается в первый раз, может понадобится калибровка датчика магнитного поля. В таком случае на светодиодной матрице покажется сообщение и один из светодиодов начнёт мигать. В этот момент необходимо наклонять устройство в разные стороны до тех пор, пока не будет заполнена вся светодиодная матрица. После этого запустится ваша программа.

Задания для самостоятельной работы

  • Сделайте компас более точным, уменьшив погрешность в проверке условия.
  • Добавьте показ других сторон света.
  • Добавьте звук, который будет проигрываться, когда компас повёрнут на север.

Проекты для самостоятельной работы

Секундомер

Создайте программу для секундомера. По нажатию на кнопку A, начинается отсчёт секунд. После нажатия на кнопку B секундомер останавливается. Одновременное нажатие на кнопки A и B обнуляет секундомер.

Уровень

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