MicroPython je odľahčená verzia programovacieho jazyka Python vyvinutá pre programovanie mikrokontrolérov, SOC a ďalších zabudovaných systémových zariadení. Bol vytvorený, aby umožnil vývojárom využívať „ ľahké sa naučiť a používať“ povaha pythonu pre vývoj zabudovaných systémov. S Pythonom, ktorý je dnes hlavným úvodným jazykom na väčšine škôl, a ktorý je jedným z najpopulárnejších a najbežnejšie používaných programovacích jazykov na celom svete, je prostredníctvom mikropytónu množstvo používateľov Pythonu schopných obísť stresujúcu strmú krivku učenia spojenú s používaním jazyka C a C ++ na programovanie mikrokontrolérov. Môžu okamžite začať využívať vedomosti, ktoré rokmi nadobudli, na prístup k nízkoúrovňovému hardvéru rovnako ako v iných jazykoch. Mikropytón je konkrétne štíhlou implementáciou Pythonu 3 a ako taký je kompatibilný so syntaxou pythonu 3.
Zatiaľ čo MicroPython ešte nie je na rovnakej úrovni popularity ako C a C ++ pre vývoj zabudovaných systémov, jeho popularita rastie s čoraz väčším počtom mikrokontrolérov, IDE a vývojových dosiek, ktoré podporujú jeho použitie. Pre dnešný tutoriál sa pozrieme na jednu z takých dosiek, pre ktoré je možné pomocou MicroPythonu vyvinúť firmvér.
V dnešnom tutoriáli sa pozrieme na vývoj kódu pre ESP32 pomocou MicroPython.
Začneme tým, že sa pozrieme na to, prečo je MicroPython dobrý pre ESP32, a prejdeme si nastavením ESP32 pre MicroPython a nahraním blikajúcej skice s MicroPython na ESP32.
Prečo MicroPython? (MicroPython vs Arduino C)
Jedným z osvedčených a najjednoduchších spôsobov programovania ESP32 je použitie Arduino IDE, čo znamená použitie Arduino verzie C alebo C ++. C a C ++ sú po celé desaťročia dva najpopulárnejšie jazyky pre vývoj zabudovaných systémov a Arduino verzia jazyka ho ešte zjednodušuje, čo zodpovedá jeho popularite medzi tvorcami a fandmi kvôli ľahkosti, s akou je možné vyvíjať kódy. Okrem toho má Arduino jednu z najväčších technologických komunít na svete. Denne komunita vydáva nové knižnice, opravy softvéru, novú podporu dosiek atď. To všetko z nich robí impozantný nástroj na programovanie vstavaných systémových dosiek. Jediným skutočným obmedzením, ktoré by sa dalo k Arduino C pripojiť, je skutočnosť, že pracuje iba v rámci Arduino IDE.Pretože je IDE obmedzené a chýbajú mu niektoré funkcie, ktoré by sa mohli skutočne hodiť pri vývoji veľkej kódovej základne, Arduino C nie je najefektívnejšie.
MicroPython je na druhej strane relatívne nový. Zatiaľ čo komunita jeho používateľov rastie, s uvoľňovaním podpory pre viac platforiem sa jeho sila nedá porovnávať so silou Arduina. Na druhej strane je MicroPython v podstate štíhlou verziou pythonu, ktorý je jedným z najpopulárnejších programovacích jazykov na svete, a preto môže akýkoľvek problém, ktorý nedokáže vyriešiť komunita MicroPython, získať poznatky od všeobecnej komunity pythonu.
Okrem komunitnej podpory má MicroPython aj určité funkcie, ktoré ho stavajú vysoko nad triedu Arduina. Jednou z takýchto funkcií je REPL. REPL znamená Read-Evaluate-Print. Táto funkcia umožňuje pripojenie k doske a rýchle vykonávanie kódu bez nutnosti zostavovania alebo nahrávania celého kódu. Preto môžete každú časť svojho kódu testovať pri jeho vývoji.
Bez ohľadu na to, ktorý z týchto dvoch projektov si pre svoj projekt vyberiete, buďte si istý, čo vám slúži najlepšie. Keď to už nebudeme, poďme na vytvorenie príkladu žmurkania pomocou ESP32 s MicroPython.
Požadované komponenty
Na zostavenie príkladu blikania budeme potrebovať nasledujúce komponenty;
- DOIT ESP32 DevKit v1 (1)
- LED (1)
- 100 ohmový rezistor (1)
- Prepojovacie vodiče
- Nepárové pole (1)
Namiesto DOIT ESP32 DevKit V1 môžete použiť ktorúkoľvek z ďalších dosiek založených na ESP32 a môžete si zvoliť prácu s integrovanou LED, čo znamená, že pre tento výukový program potrebujete iba dosku ESP32. Predtým sme programovaním pomocou Arduino IDE zablikali LED diódu ESP32.
Okrem hardvérových komponentov budeme vyžadovať aj softvér ako Thonny IDE