MicroPython je lagana verzija programskog jezika Python razvijena za programiranje mikrokontrolera, SOC-a i drugih ugrađenih sistemskih uređaja. Stvoren je kako bi programerima omogućio da iskoriste " lako za učenje i korištenje" priroda pythona za razvoj ugrađenih sustava. S obzirom da je Python danas glavni uvodni jezik u većini škola, a s obzirom na to da je jedan od najpopularnijih i najčešće korištenih programskih jezika u cijelom svijetu, kroz micro-python, mnogi korisnici Pythona mogu zaobići stresnu strmu krivulju učenja povezanu s upotrebom C i C ++ za programiranje mikrokontrolera. Oni mogu odmah početi koristiti znanje stečeno godinama kako bi pristupili hardveru niske razine, baš kao i ostali jezici. Micro-python je posebno lean implementacija Pythona 3 i kao takav kompatibilan je sa sintaksom python 3.
Iako MicroPython još nije na istoj razini popularnosti kao C i C ++ za razvoj ugrađenih sustava, njegova je popularnost u porastu sa sve više mikrokontrolera, IDE-a i razvojnih ploča koji podržavaju njegovu upotrebu. U današnjem uputstvu tražit ćemo jednu od takvih ploča za koju se firmware može razviti pomoću MicroPythona.
U današnjem uputstvu razmotrit ćemo razvoj koda za ESP32 pomoću MicroPythona.
Za početak ćemo pogledati zašto je MicroPython dobar za ESP32 i proći ćemo kroz postavljanje ESP32 za MicroPython i prijenos treptajuće skice s MicroPythonom na ESP32.
Zašto MicroPython? (MicroPython vs Arduino C)
Jedan od dobro dokazanih, najlakših načina programiranja ESP32 je upotreba Arduino IDE-a, što znači upotrebu Arduino verzije C ili C ++. C i C ++ su desetljećima dva najpopularnija jezika za razvoj ugrađenih sustava, a Arduino inačica jezika to je učinila još jednostavnijim što objašnjava njegovu popularnost među proizvođačima i hobistima zbog lakoće s kojom se mogu razvijati kodovi. Uz to, Arduino ima jednu od najvećih tehnoloških zajednica na svijetu s novim bibliotekama, softverskim popravcima, novom podrškom za ploče itd. Koje zajednica svakodnevno objavljuje. Sve to čini ga zastrašujućim alatom za programiranje ugrađenih matičnih ploča. Jedino pravo ograničenje koje bi se moglo primijeniti na Arduino C jest činjenica da on radi samo unutar Arduino IDE-a.Budući da je IDE ograničen i da mu nedostaju neke značajke koje bi zaista mogle biti korisne pri razvoju velike baze koda, Arduino C nije najučinkovitiji.

MicroPython je, s druge strane, relativno nov. Iako zajednica korisnika raste, s izdanjem podrške za više platformi, njegova se snaga ne može usporediti s Arduinovom. Izuzetno, MicroPython je u osnovi lean verzija pythona koji je jedan od najpopularnijih programskih jezika na svijetu i kao takav, svaki problem koji MicroPython zajednica ne može riješiti može dobiti uvid od opće zajednice pythona.
Pored podrške zajednice, MicroPython također ima određene značajke koje ga stavljaju iznad klase Arduina. Jedna od takvih značajki je REPL. REPL je skraćenica od Read-Evaluate-Print. Ova vam značajka omogućuje povezivanje s pločom i brzo izvršavanje koda bez potrebe za kompajliranjem ili učitavanjem cijelog koda. Kao takvi, možete testirati svaki dio koda dok ih razvijate.
Bez obzira koju od ove dvije odabrali za svoj projekt, budite sigurni što vam najbolje služi. S tim da to ne uspijemo, krenimo u izgradnju primjera treptanja pomoću ESP32 s MicroPythonom.
Potrebne komponente
Za izgradnju primjera treptanja trebat će nam sljedeće komponente;
- DOIT ESP32 DevKit v1 (1)
- LED (1)
- Otpornik od 100 ohma (1)
- Žice kratkospojnika
- Breadboard (1)

Možete koristiti bilo koju drugu ploču temeljenu na ESP32 umjesto DOIT ESP32 DevKit V1, a možete odabrati rad s ugrađenom LED diodom, što znači da vam za ovaj vodič treba samo ploča ESP32. Prije smo trepnuli ESP32 LED programirajući ga pomoću Arduino IDE-a.
Osim hardverskih komponenata, trebat će nam i softver poput Thonny IDE
