Инструменты пользователя

Инструменты сайта


Среда программирования Espruino Web IDE

Espruino Web IDE — это среда разработки для написания и загрузки программ в контроллеры с загрузчиком Espruino. В ней есть удобный редактор кода, консоль для отладки и инструменты управления платой.

Список поддерживаемых плат

Видеобзор

Установка и настройка

Espruino Web IDE можно использовать с операционными системами Windows, macOS и Linux.

Все примеры в рамках данной статьи будут с OS Windows.

Шаг 1. Установка среды

Среда программирования Espruino Web IDE поддерживает два типа инсталляции:

Если у вас операционная система ниже Windows 8, то Online версия Espruino Web IDE может не видеть COM-порты. В этом случае используйте десктопную версию Espruino Web IDE.

Online приложение

Приложение для рабочего стола

Шаг 2. Добавление настроек Амперки

Добавьте в Espruino IDE поддержку библиотек от Амперки.

  1. Зайдите в настройки Espruino Web IDE: Settings Communications и найдите поле Module URL.
  2. Добавьте к основному адресу модулей Espruino альтернативный путь модулей Amperka через знак |. Было:
    https://www.espruino.com/modules

    Стало:

    https://www.espruino.com/modules | https://js.amperka.ru/modules

Шаг 3. Установка драйвера

Если у вас OS Windows, установите драйвер ST-LINK для микроконтроллера STM32. Для macOS и Linux драйвер не нужен.

Интерфейс среды

Espruino Web IDE состоит из двух основных частей: слева — окно консоли, справа — окно исходного кода.

Типовой сценарий работы

  1. Пишите программу в поле для кода
  2. Загружаете программу в плату кнопкой
  3. Наблюдаете за работой устройства и выводом отладочной информации в консоли

Соединение с платой

Беспроводное подключение

Поддерживаемые устройства

Беспроводное подключение в среде Espruino Web IDE доступно только при наличии беспроводных приёмопередатчиков на обоих устройствах:

  • На ПК должен быть включён модуль Bluetooth. Если модуль беспроводной связи BLE физически отсутствует, его можно приобрести отдельно.
  • Контроллер Espruino должен поддерживать соединение по протоколу BLE. Список поддерживаемых плат:

В качестве примера будем использовать платформу Espruino Puck.js.

Инструкция по подключению

  1. Подключите питание к плате Espruino. Для Puck.js вставьте элемент питания в батарейный отсек.
  2. В среде Espruino Web IDE в верхнем левом углу нажмите кнопку .
  3. Появится всплывающее окно со списком доступных портов плат, в зависимости от операционной системы и метода подключения.:

    Выбирайте подключение через Web Bluetooth.

  4. Откроется окно поиска новых устройств.
  5. Выберите нужное устройство и нажмите на кнопку Подключить.
  6. После успешного подключения:
    1. В консоли появится надпись «Connected».
    2. Фон кнопки изменит цвет на зелёный.
    3. В нижнем правом углу всплывёт окошко с уведомлением, что плата успешно подключена к компьютеру.

Проводное подключение

В качестве примера будем использовать платформу Iskra JS.

  1. Подключите контроллер Iskra JS к компьютеру по USB.
  2. В среде Espruino Web IDE в верхнем левом углу нажмите кнопку .
  3. Будет представлен список доступных портов плат в зависимости от OS и метода подключения.

    Найдите среди свою плату простым перебором.

  4. После успешного подключения:
    1. В консоли появится надпись «Connected».
    2. Фон кнопки изменит цвет на зелёный.
    3. В нижнем правом углу всплывёт окошко с уведомлением, что плата успешно подключена к компьютеру.

Тестирование подключения

Проверим корректное соединения с платформой.

Программная перезагрузка

В чёрном поле консоли наберите команду:

reset();

Контроллер перезагрузится, а в консоли отобразиться баннер платы. В нашем случае баннер контроллера Iskra JS.

Обратите внимание на версию 2v22 интерпретатора зашитую в контроллер. Если плата работает не корректно, обновите прошивку платформы до самой свежей.

Консольные команды

Через консоль можно работать с подключённой платой в реальном времени: выполнять выражения, вызывать функции, просматривать значения переменных и т.д. Например, введите в консоль 6 + 8 и нажмите Enter. Плата выполнит команду и выведет результат — 14.

Загрузка первой программы

Плата подключена, среда настроена — пора переходить к экспериментам на железе. Прошейте управляющую плату, скриптом приведённой ниже. После загрузки, cветодиод LED1 на плате должен загораться и гаснуть каждые 500 мс.

blink.js
  1. var on = false;
  2. setInterval(function() {
  3. on = !on;
  4. LED1.write(on);
  5. }, 500);

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

blink-fast.js
  1. var on = false;
  2. setInterval(function() {
  3. on = !on;
  4. LED1.write(on);
  5. }, 100);

После загрузки, cветодиод LED1 будет загораться и гаснуть каждые 100 миллисекунд — в 5 раз быстрее исходной версии.

В примере используется объект LED1 который расположен на платформе Iskra JS. Если вы используете другую плату с интерпретатором JavaScript, имена объектов и пинов могут отличатся.

Загрузка программы c библиотеками Espruino

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

Чтобы использовать модуль, нужно подключить его с помощью команды require().

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

espruino-modules-storage.js
  1. // Подключаем модуль Storage
  2. var data = require('Storage');
  3. // Записываем сообщение в память
  4. data.write("message", "Hello, Espruino!");
  5. // Читаем и выводим сообщение
  6. print(data.read("message"));

После прошивки платы, вы должны увидеть в консоли Espruino приветственную надпись: Hello, Espruino!.

Список всех официальных модулей с примерами использования смотрите в документации Espruino.

Загрузка программы c библиотеками Амперки

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

Для примера используем модуль led, который упрощает управление миганием светодиода, избавляя от необходимости писать сложный код.

amperka-modules-led.js
  1. // Подключаем модуль для работы со светодиодом
  2. // В параметрах передаём объект втроенного светодиода на плате
  3. var myLed = require('@amperka/led').connect(LED1);
  4. // Мигаем светодиом в темпе: 0.9 сек — включен, 0.1 сек — выключен
  5. myLed.blink(0.9, 0.1);

После прошивки платы, светодиод будет мигать с частотой: 0,9 сек — включён и 0,1 сек — выключён.

Список всех официальных модулей от Амперки с примерами использования смотрите в на нашей вики в разделе библиотеки.

Поздравляем, вы полностью настроили железо со средой Espruino IDE. Можете смело переходить к изучению всех возможностей программирования микроконтроллеров на JavaScript.

Обновление прошивки

Если перестала работать плата или хотите обновить интерпретатор JS до самой актуальной версии, прошейте контроллер на плате через DFU-режим.

Ресурсы

Рекомендуем также ознакомиться со статьями, документацией и другими полезными материалами по платформе Espruino Web IDE.

Статьи и инструкции

Библиотеки

Драйверы