Разработчики MicroPython, адаптированной для микроконтроллеров реализации языка Python 3 c урезанным набором библиотек, сообщили о подготовке варианта проекта, который может работать в web-браузере. MicroPython примечателен возможностью применения на системах с ограниченными ресурсами, например, его можно запустить на плате с 256 Кб Flash и 16 Кб ОЗУ. В том числе на базе MicroPython может быть создано окружение, напрямую работающее поверх оборудования без прослоек в виде операционных систем, что позволяет создавать для плат встроенные обработчики и средства автоматизации на языке Python.

В рамках проекта MicroPython on Unicorn разработчики пошли дальше и попытались адаптировать MicroPython для запуска Python-кода в браузере. Выполнение MicroPython организовано с использованием фреймворка unicorn.js, позволяющего создавать эмуляторы различных аппаратных архитектур (ARM, ARM64, M68K, MIPS, SPARC и x86), реализованные на языке JavaScript (по сути это вариант QEMU скомпилированный в JavaScript при помощи Emscripten). Для запуска MicroPython в браузере задействован эмулятор микроконтроллера ARM Cortex-M3.

По задумке разработчиков проект позволит ускорить и упростить тестирование решений на базе MicroPython, для отладки и разработки которых теперь можно обойтись обычным браузером, без необходимости наличия реального оборудования. MicroPython в браузере также может применяться в процессе обучения. На сайте проекта уже запущен web-интерфейс, позволяющий симулировать работу различных сборок MicroPython на микроконтроллере, помимо ранее доступного демонстрационного стенда на базе реальной платы.

Источник: http://www.opennet.ru/opennews/art.shtml?num=46614