MicroPython - MicroPython

MicroPython
Новый логотип MicroPython .svg
Автор (ы) оригинала Дэмиен П. Джордж
Первый выпуск 3 мая 2014 г . ; 7 лет назад ( 2014-05-03 )
Стабильный выпуск
1.14 / 3 февраля 2021 г . ; 7 месяцев назад ( 2021-02-03 )
Репозиторий
Написано в C
Платформа ARM Cortex-M , STM32 , ESP8266 , ESP32 , 16- битный PIC , Unix , Microsoft Windows , Zephyr , JavaScript , RP2040
Тип Реализация Python
Лицензия Лицензия MIT
Веб-сайт micropython .org

MicroPython - это программная реализация языка программирования, в значительной степени совместимого с Python 3, написанного на C , который оптимизирован для работы на микроконтроллере .

MicroPython - это полноценный компилятор и среда выполнения Python, работающая на оборудовании микроконтроллера. Пользователю предоставляется интерактивная подсказка ( REPL ) для немедленного выполнения поддерживаемых команд. Включен набор основных библиотек Python; MicroPython включает модули, которые предоставляют программисту доступ к низкоуровневому оборудованию.

Исходный код проекта доступен на GitHub под лицензией MIT .

История

MicroPython был первоначально создан австралийским программистом и физиком-теоретиком Дэмиеном Джорджем после успешной кампании при поддержке Kickstarter в 2013 году. В то время как исходная кампания Kickstarter выпустила MicroPython с платой разработки на базе STM32F4 «pyboard», MicroPython поддерживает ряд архитектур на базе ARM . В основной линии поддерживаются следующие порты: ARM Cortex-M (многие платы STM32 , TI CC3200 / WiPy, платы Teensy, серия Nordic nRF, SAMD21 и SAMD51), ESP8266 , ESP32 , 16- битный PIC, Unix, Windows, Zephyr и JavaScript. Кроме того, существует множество форков для различных систем и аппаратных платформ, не поддерживаемых в основной линии.

В 2016 году версия MicroPython для BBC Micro Bit была создана в рамках вклада Python Software Foundation в партнерство Micro Bit с BBC.

В июле 2017 года MicroPython был разветвлен для создания CircuitPython , версии MicroPython с упором на образование и простоту использования. MicroPython и CircuitPython поддерживают несколько разные наборы оборудования (например, CircuitPython поддерживает платы Atmel SAM D21 и D51, но отказался от поддержки ESP8266). Начиная с версии 4.0 CircuitPython основан на MicroPython версии 1.9.4.

В 2017 году Microsemi создала порт MicroPython для архитектуры RISC-V (RV32 и RV64).

В апреле 2019 года была создана версия MicroPython для Lego Mindstorms EV3 .

В январе 2021 года был создан порт MicroPython для RP2040 (ARM Cortex-M0 +, на Raspberry Pi Pico и др.).

Байт-код

MicroPython включает кросс-компилятор, который генерирует байт-код MicroPython (расширение файла .mpy ). Код Python может быть скомпилирован в байт-код либо непосредственно на микроконтроллере, либо может быть предварительно скомпилирован в другом месте.

Микропрограмму MicroPython можно собрать без компилятора, оставив только виртуальную машину, которая может запускать предварительно скомпилированные программы mpy .

использованная литература

внешние ссылки