MicroPython je lahka različica programskega jezika Python, razvitega za programiranje mikrokrmilnikov, SOC in drugih vgrajenih sistemskih naprav. Ustvarjen je bil, da razvijalcem omogoči, da izkoristijo " enostavno učenje in uporabo" narava pythona za razvoj vgrajenih sistemov. Ker je Python danes glavni uvodni jezik v večini šol in je eden izmed najbolj priljubljenih in najpogosteje uporabljanih programskih jezikov po vsem svetu, lahko številni uporabniki Pythona izognejo stresni strmi krivulji učenja, povezani z uporabo C in C ++ za programiranje mikrokrmilnikov. Znanje, ki so ga pridobili v preteklih letih, lahko takoj začnejo uporabljati za dostop do strojne opreme na nizki ravni, tako kot pri drugih jezikih. Micro-python je posebej vitka izvedba Pythona 3 in je kot taka združljiva s sintakso python 3.
Medtem ko MicroPython še ni na isti stopnji priljubljenosti kot C in C ++ za razvoj vgrajenih sistemov, se njegova priljubljenost povečuje z vse več mikrokrmilniki, IDE-ji in razvojnimi ploščami, ki podpirajo njegovo uporabo. V današnji vadnici bomo preučili eno od takih plošč, za katero je mogoče razviti vdelano programsko opremo s pomočjo MicroPythona.
Za današnjo vadnico bomo preučili kodo za ESP32 z uporabo MicroPythona.
Najprej si bomo ogledali, zakaj je MicroPython dober za ESP32, in se potrudimo skozi nastavitev ESP32 za MicroPython in nalaganje utripajoče skice z MicroPythonom na ESP32.
Zakaj MicroPython? (MicroPython proti Arduino C)
Eden od dobro preizkušenih in najlažjih načinov programiranja ESP32 je uporaba Arduino IDE, kar pomeni uporabo različice Arduino C ali C ++. C in C ++ sta že desetletja najbolj priljubljena jezika za razvoj vgrajenih sistemov, različica jezika Arduino pa je to poenostavila, kar je zaradi njegove enostavnosti, s katero je mogoče razvijati kode, zasluženo med proizvajalci in ljubitelji. Poleg tega ima Arduino eno največjih tehnoloških skupnosti na svetu, ki ga skupnosti vsak dan objavljajo nove knjižnice, popravki programske opreme, nova podpora itd. Vse to je izjemno orodje za programiranje vgrajenih sistemskih plošč. Edina resnična omejitev, ki bi jo lahko pripisali Arduinu C, je dejstvo, da deluje le znotraj Arduino IDE.Ker je IDE omejen in mu manjka nekaj funkcij, ki bi bile resnično koristne pri razvoju večje kode, Arduino C ni najbolj učinkovit.
MicroPython pa je razmeroma nov. Medtem ko skupnost uporabnikov narašča, s sproščanjem podpore za več platform pa njene moči ni mogoče primerjati z močjo Arduina. Navzgor je MicroPython v bistvu vitka različica pythona, ki je eden izmed najbolj priljubljenih programskih jezikov na svetu in kot tak lahko vsak problem, ki ga skupnost MicroPython ne more rešiti, pridobi vpogled v splošno python skupnost.
Poleg podpore skupnosti ima MicroPython tudi nekatere značilnosti, ki se uvrščajo nad razred Arduino. Ena od takih lastnosti je REPL. REPL pomeni Read-Evaluate-Print. Ta funkcija vam omogoča povezavo s ploščo in hitro izvajanje kode, ne da bi vam bilo treba prevesti ali naložiti celotno kodo. Kot tak lahko preizkusite vsak del kode, ko jih razvijate.
Ne glede na to, katerega izmed teh dveh izberete za svoj projekt, se prepričajte, kaj vam najbolj ustreza. Če tega ne odstranimo, pojdimo na primer utripanja z uporabo ESP32 z MicroPythonom.
Zahtevane komponente
Če želimo zgraditi primer utripanja, bomo potrebovali naslednje komponente;
- DOIT ESP32 DevKit v1 (1)
- LED (1)
- 100 Ohm upor (1)
- Jumper žice
- Breadboard (1)
Namesto DOIT ESP32 DevKit V1 lahko uporabite katero koli drugo ploščo, ki temelji na ESP32, in lahko se odločite za delo z vgrajeno LED, kar pomeni, da za to vadnico potrebujete le ploščo ESP32. Prej smo utripali LED ESP32, tako da smo ga programirali z uporabo Arduino IDE.
Poleg komponent strojne opreme bomo potrebovali tudi programsko opremo, kot je Thonny IDE