MicroPitone - MicroPython
| Autori originali | Damien P. George |
|---|---|
| Versione iniziale | 3 maggio 2014 |
| Rilascio stabile | 1.14 / 3 febbraio 2021
|
| Repository | |
| Scritto in | C |
| piattaforma | ARM Cortex-M , STM32 , ESP8266 , ESP32 , PIC a 16 bit , Unix , Microsoft Windows , Zephyr , JavaScript , RP2040 |
| Tipo | Implementazione Python |
| Licenza | Licenza MIT |
| Sito web | micropython |
MicroPython è un'implementazione software di un linguaggio di programmazione ampiamente compatibile con Python 3, scritto in C , ottimizzato per funzionare su un microcontrollore .
MicroPython è un compilatore Python completo e runtime che viene eseguito sull'hardware del microcontrollore. All'utente viene presentato un prompt interattivo (il REPL ) per eseguire immediatamente i comandi supportati. Sono incluse una selezione di librerie Python di base; MicroPython include moduli che danno al programmatore l'accesso all'hardware di basso livello.
Il codice sorgente del progetto è disponibile su GitHub sotto la licenza MIT .
Storia
MicroPython è stato originariamente creato dal programmatore e fisico teorico australiano Damien George, dopo una campagna di successo sostenuta da Kickstarter nel 2013. Mentre la campagna Kickstarter originale ha rilasciato MicroPython con una scheda di sviluppo "pyboard" alimentata da STM32F4, MicroPython supporta una serie di architetture basate su ARM . Le porte supportate nella linea principale sono ARM Cortex-M (molte schede STM32 , TI CC3200/WiPy, schede Teensy, serie Nordic nRF, SAMD21 e SAMD51), ESP8266 , ESP32 , PIC a 16 bit, Unix, Windows, Zephyr e JavaScript. Inoltre, ci sono molti fork per una varietà di sistemi e piattaforme hardware non supportati nella linea principale.
Nel 2016, una versione di MicroPython per BBC Micro Bit è stata creata come parte del contributo della Python Software Foundation alla partnership Micro Bit con la BBC.
Nel luglio 2017, MicroPython è stato biforcato per creare CircuitPython , una versione di MicroPython con enfasi sull'istruzione e sulla facilità d'uso. MicroPython e CircuitPython supportano set di hardware leggermente diversi (ad esempio CircuitPython supporta le schede Atmel SAM D21 e D51, ma ha abbandonato il supporto per ESP8266). A partire dalla versione 4.0, CircuitPython è basato su MicroPython versione 1.9.4.
Nel 2017, Microsemi ha realizzato una porta MicroPython per l' architettura RISC-V (RV32 e RV64).
Nell'aprile 2019 è stata creata una versione di MicroPython per Lego Mindstorms EV3 .
Nel gennaio 2021 è stata creata una porta MicroPython per RP2040 (ARM Cortex-M0+, su Raspberry Pi Pico e altri).
Bytecode
MicroPython include un compilatore incrociato che genera il bytecode MicroPython (estensione file .mpy ). Il codice Python può essere compilato nel bytecode direttamente su un microcontrollore o può essere precompilato altrove.
Il firmware di MicroPython può essere compilato senza il compilatore, lasciando solo la macchina virtuale che può eseguire i programmi mpy precompilati .
Riferimenti
link esterno
- Sito ufficiale
- micropython su GitHub
- GOTO 2016 • MicroPython e l'Internet delle cose • Damien George su YouTube
- Playlist MicroPython su YouTube • Tutorial di Tony DiCola / Adafruit