Установка Espruino на BBC micro:bit

Из коробки BBC micro:bit идёт с собственной предустановленной прошивкой. Скрипты для платы пишутся на JavaScript, но перед копированием на плату компилируются средой разработки. Это использовать на плате сравнительно слабый и дешёвый ARM Cortex M0.

Если вы хотите познакомится со средой Espruino, не придётся покупать более мощную плату. Простые скрипты и учебные проекты по силам micro:bit.

Установка прошивки Espruino на BBC micro:bit

Установите интерпретатор на плату

  1. Подключите плату micro:bit к компьютеру проводом USB-microUSB. Плата определится как новый съёмный диск с названием MICROBIT.
  2. Зайдите на сетевое хранилище прошивок Espruino, перейдя по ссылке www.espruino.com/binaries/.
  3. Найдите самую свежую версию Espruino. Файлы для micro:bit называются по шаблону espruino_XvXX_microbit.hex, где XvXX — номер версии прошивки. Чем он больше, тем новее прошивка. Откройте ссылку в новой вкладке — появится код в шестнадцатеричном виде.
  4. Щёлкните правой кнопкой мыши по коду и в появившемся меню выберите пункт Сохранить как…. В открывшемся проводнике укажите путь к плате micro:bit и нажмите кнопку Сохранить.

Нестандартные объекты и классы

Работа с кнопками

На борту платы предусмотрены две программируемые кнопки A и B. В Espruino им присваиваются имена BTN1 и BTN2' соответственно. В качестве примера напишем простейший обработчик нажатии кнопки A.

buttonA.js
setWatch(function(e) {
  if (e.state) console.log("Released");
  else console.log("Pressed");
}, BTN1, {repeat:true, debounce:20, edge:"both"});

Работа со светодиодным экраном

На micro:bit распаяна светодиодная матрица из 25 светодиодов. Сюда можно выводить предустановленные иконки, символы, цифры и буквы или произвольные рисунки.

Для работы с матрицей предназначена функция show().

Примеры использования параметров функции:

  • show(0) — все светодиоды погаснут
  • show(1) — включится первый светодиод
  • show(0b1000) — включится четвёртый светодиод
  • show(0b1111111111111111111111111) или show(0x1FFFFFF) включатся все светодиоды.

Такой код выведет на матрицу смайлик:

smile.js
show("1   1\n"+
     "  1  \n"+
     "  1  \n"+
     "1   1\n"+
     " 111 \n");
`

Работа с акселерометром и магнетометром

Встроенные функции acceleration() и compass() возвращают объекты с элементами x, y и z. В первом случае элементы будут соответствовать ускорению по соответствующим осям, во втором — вектор направления на источник магнитного поля.

В остальном — при работе с платой используются стандартные библиотеки, классы и функции Espruino.

Дополнительная информация