MicroPython
З Вікіпедії, вільної енциклопедії
MicroPython[4] — це програмна реалізація мови програмування, яка багато у чому сумісна з Python 3, написана на C і оптимізована для роботи на мікроконтролерах.[5][6]
![]() | |
Тип | реалізація мови програмуванняd |
---|---|
Платформа | STM32d, RISC-V[1], ESP8266, ESP32, PIC, UNIX, Zephyrd, Windows, Renesas RAd, Microchip, Nordic Semiconductord, RP2040d і RP2350d |
Операційна система | UNIX |
Мова програмування | C[2] |
Ліцензія | MIT[3] |
Онлайн-документація | docs.micropython.org |
Репозиторій | github.com/micropython/micropython |
Вебсайт | micropython.org |
MicroPython — це повноцінний компілятор і середовище виконання Python, які працюють на апаратних засобах мікроконтролерів. Користувачу пропонується інтерактивний запит (REPL) на негайне виконання підтримуваних команд. Містить вибір основних бібліотек Python; MicroPython включає модулі, які надають програмісту доступ до обладнання низького рівня.[4]
Вихідний код проєкту доступний на GitHub за ліцензією MIT.[7]
Історія
Узагальнити
Перспектива
MicroPython спочатку був створений у 2013 році австралійським програмістом і фізиком-теоретиком Джорджем Демієном після успішної кампанії, яку підтримали на Kickstarter.[8] На Kickstarter оригінальний реліз MicroPython було випущено для розробницьких плат на основі чіпу STM32F4[en] із назвою «pyboard», але потім на MicroPython реалізували підтримку процесорів на основі архітектури ARM.[9] Підтримується портування для основній серій ARM Cortex-M (багато плат STM32, TI CC3200/WiPy, плати Teensy, серії Nordic nRF, SAMD21 і SAMD51), ESP8266, ESP32, 16-бітна PIC, Unix, Windows, Zephyr та JavaScript.[10] Крім того, існує багато форків для різноманітних систем та апаратних платформ, які не підтримуються в основній реалізації.[11]
У 2016 році версія MicroPython для BBC Micro Bit була створена як частина внеску у Python Software Foundation у партнерстві Micro Bit із BBC.[12]
У липні 2017 року MicroPython був розділений для створення CircuitPython[en], версії MicroPython з акцентом на освіту та простоту використання. MicroPython і CircuitPython підтримують дещо різні набори обладнання (наприклад CircuitPython підтримує плати Atmel SAM D21 і D51, але відмовилися від підтримки ESP8266). Починаючи з версії 4.0 CircuitPython, базується на MicroPython версії 1.9.4.[13]
У 2017 році Microsemi[en] створила порт MicroPython для архітектури RISC-V (RV32 і RV64).[14]
У квітні 2019 року була створена версія MicroPython для Lego Mindstorms EV3 .[15]
У січні 2021 року був створений порт MicroPython для RP2040 (ARM Cortex-M0+, на Raspberry Pi Pico та інші).[16]
Байт-код
MicroPython включає крос-компілятор, який генерує байт-код MicroPython (розширення файлу .mpy). Код Python може бути скомпільований у байт-код або безпосередньо на мікроконтролері, або його можна попередньо скомпілювати в іншому місці.
Прошивку MicroPython можна створити без компілятора, залишивши лише віртуальну машину, яка може запускати попередньо скомпільовані програми mpy.
Примітки
Посилання
Wikiwand - on
Seamless Wikipedia browsing. On steroids.