MicroPython - MicroPython

MicroPython
MicroPython ny logo.svg
Originale forfattere Damien P. George
Første utgivelse 3. mai 2014 ; 7 år siden ( 2014-05-03 )
Stabil utgivelse
1.14 / 3. februar 2021 ; 7 måneder siden ( 2021-02-03 )
Oppbevaringssted
Skrevet inn C
Plattform ARM Cortex-M , STM32 , ESP8266 , ESP32 , 16bit PIC , Unix , Microsoft Windows , Zephyr , JavaScript , RP2040
Type Python -implementering
Tillatelse MIT -lisens
Nettsted micropython .org

MicroPython er en programvareimplementering av et programmeringsspråk som stort sett er kompatibelt med Python 3, skrevet i C , som er optimalisert for å kjøre på en mikrokontroller .

MicroPython er en fullstendig Python -kompilator og kjøretid som kjører på mikrokontrollerens maskinvare. Brukeren får en interaktiv melding ( REPL ) for å utføre støttede kommandoer umiddelbart. Inkludert er et utvalg av kjerne -Python -biblioteker; MicroPython inkluderer moduler som gir programmereren tilgang til maskinvare på lavt nivå.

Kildekoden for prosjektet er tilgjengelig på GitHub under MIT -lisensen .

Historie

MicroPython ble opprinnelig opprettet av den australske programmereren og teoretiske fysikeren Damien George, etter en vellykket Kickstarter -støttet kampanje i 2013. Mens den opprinnelige Kickstarter -kampanjen ga ut MicroPython med et STM32F4 -drevet utviklingsbord "pyboard", støtter MicroPython en rekke ARM -baserte arkitekturer. Portene som støttes i hovedlinjen er ARM Cortex-M (mange STM32- kort, TI CC3200/WiPy, Teensy-kort, Nordic nRF-serien, SAMD21 og SAMD51), ESP8266 , ESP32 , 16bit PIC, Unix, Windows, Zephyr og JavaScript. Det er også mange gafler for en rekke systemer og maskinvareplattformer som ikke støttes i hovedlinjen.

I 2016 ble en versjon av MicroPython for BBC Micro Bit opprettet som en del av Python Software Foundation sitt bidrag til Micro Bit -partnerskapet med BBC.

I juli 2017 ble MicroPython forked for å lage CircuitPython , en versjon av MicroPython med vekt på utdanning og brukervennlighet. MicroPython og CircuitPython støtter noe forskjellige sett med maskinvare (f.eks. CircuitPython støtter Atmel SAM D21 og D51 -kort, men droppet støtte for ESP8266). Fra versjon 4.0 er CircuitPython basert på MicroPython versjon 1.9.4.

I 2017 laget Microsemi en MicroPython-port for RISC-V (RV32 og RV64) arkitektur.

I april 2019 ble en versjon av MicroPython for Lego Mindstorms EV3 opprettet.

I januar 2021 ble en MicroPython-port for RP2040 (ARM Cortex-M0+, på Raspberry Pi Pico og andre) opprettet.

Bytekode

MicroPython inkluderer en krysskompilator som genererer MicroPython bytecode (filtypen .mpy ). Python -koden kan kompileres til bytekoden enten direkte på en mikrokontroller eller den kan forhåndskompileres andre steder.

MicroPython -fastvare kan bygges uten kompilatoren, og etterlater bare den virtuelle maskinen som kan kjøre de forhåndskompilerte mpy -programmene.

Referanser

Eksterne linker