Obsah:

Začíname s programom MicroPython na ESP8266: 10 krokov (s obrázkami)
Začíname s programom MicroPython na ESP8266: 10 krokov (s obrázkami)

Video: Začíname s programom MicroPython na ESP8266: 10 krokov (s obrázkami)

Video: Začíname s programom MicroPython na ESP8266: 10 krokov (s obrázkami)
Video: Začíname s Raspberry Pi Pico - Namakaný webinár #10 2024, November
Anonim
Začíname s programom MicroPython na ESP8266
Začíname s programom MicroPython na ESP8266

Chcete iný spôsob programovania dosiek založených na ESP8266 než bežnú metódu pomocou Arduino IDE spolu s programovacím jazykom C/C ++?

V tomto návode sa naučíme, kto konfigurovať a ovládať dosku ESP8266 pomocou programu MicroPython.

VESTAVENÝ ČAS: 60 MINÚT OBŤAŽNOSŤ: HODNOTENIE: Jednoduché

Krok 1: Čo je to MicroPython?

MicorPython je jedným z mnohých programovacích jazykov, ktoré môžeme použiť na programovanie modulu ESP8266. Je to štíhla a rýchla verzia programovacieho jazyka Python 3 a má niekoľko výhod oproti tradičným programovacím jazykom, ako je C a C ++.

MicroPython je navrhnutý tak, aby bol čo najviac kompatibilný s normálnym Pythonom. Má kompletný kompilátor a runtime jazyka Python a poskytuje interaktívnu výzvu známu ako REPL (slučka čítania a čítania).

MicorPython je navrhnutý tak, aby podporoval niekoľko rôznych typov mikrokontrolérov. Ale pre tento tutoriál budem pracovať iba s jedným modelom: doskou založenou na ESP8266 (NodeMCU). Všimnite si toho, že existuje niekoľko rôznych dosiek, ktoré si môžete kúpiť s rovnakým čipom.

Čítanie a zdroje:

MicroPython

NodeMCU

Krok 2: Požiadavky

Požiadavky
Požiadavky
Požiadavky
Požiadavky
Požiadavky
Požiadavky
Požiadavky
Požiadavky

Aby ste sa mohli riadiť týmto tutoriálom, stačí mať základné skúsenosti s kódovaním v Pythone. Nemusíte mať žiadne predchádzajúce znalosti o mikrokontroléroch, elektronike alebo dokonca o MicroPythone.

Budete tiež potrebovať počítač so systémom Windows, Mac alebo Linux s voľným portom USB, pretože k počítaču pripojíte mikrokontrolér, aby ste ho naprogramovali.

Potrebné diely:

1 x NodeMCU (alebo iná základná doska ESP8266)

1 x červená 5 mm LED dióda

1 x 220Ω odpor 1/4W

1 x 10KΩ otočný potenciometer

1 x Breadboard

1 x kábel USB na MicroUSB

Prepojovacie vodiče.

Krok 3: Prečo základná doska ESP8266?

Prečo základná doska ESP8266?
Prečo základná doska ESP8266?

Jeden zo spôsobov, ako môžete zo svojho ESP8266 vyťažiť maximum, je používanie programu MicroPython. Modul ESP8266 je tiež jednou z najlepších platforiem, na ktorých sa môžete naučiť používať MicroPython. Dôvodom je, že ESP8266 poskytuje jednoduché funkcie ovládania pinov GPIO a tiež bezdrôtovú funkciu, čo vám umožňuje otestovať všetky aspekty programovacieho jazyka MicroPython.

Čip ESP8266 je populárny v odvetví vývoja open source. Existuje mnoho vývojových dosiek od rôznych výrobcov, ktoré používajú čip ESP8266. MicroPython bol navrhnutý tak, aby poskytoval generický port, ktorý môže bežať na väčšine týchto dosiek, s čo najmenším počtom obmedzení. Port je založený na doske Adafruit Feather HUZZAH Pri použití iných dosiek ESP8266 skontrolujte ich schémy a listy, aby ste mohli identifikovať rozdiely medzi nimi a doskou Adafruit Feather HUZZAH. Tak môžete vyrovnať rozdiely vo svojom kóde.

Čítanie a zdroje:

ESP8266

Adafruitové perie HUZZAH

Krok 4: Nastavenie počítača

Nastavenie počítača
Nastavenie počítača
Nastavenie počítača
Nastavenie počítača
Nastavenie počítača
Nastavenie počítača
Nastavenie počítača
Nastavenie počítača

Pred použitím programu MicroPython na programovanie dosky ESP8266 musíte nastaviť niekoľko vecí. V tomto kroku prejdeme procesom nastavenia. Vďaka tomu budete vedieť, ako nakonfigurovať dosku ESP8266 tak, aby sa používala s programom MicroPython.

Pripravovať sa

Od tohto kroku po krok 6 potrebujete iba svoj ESP8266 a kábel USB. Pripojte dosku ESP8266 k počítaču.

Ako to spraviť…

KROK 1: Nainštalujte ovládače zariadení

Ak máte počítač s operačným systémom Linux, nemusíte inštalovať žiadne ovládače zariadení na rozpoznávanie ovládačov mikrokontroléra. Ale ak máte počítač Mac alebo Windows, je potrebný ovládač, ktorý umožní počítaču rozpoznať mikrokontrolér ako sériové zariadenie.

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.

KROK 2: Nainštalujte Python

Nástroje, ktoré budete používať na komunikáciu s ESP8266, sú napísané v jazyku Python, takže si musíte Python nainštalovať do počítača.

Ak váš operačný systém neposkytuje vopred zabalený Python, môžete si prejsť na stránku https://python.org a stiahnuť si oficiálnu zostavu pre ktorýkoľvek z podporovaných operačných systémov.

KROK 3: Nainštalujte esptool a rshell

Nainštalujte dva balíky, ktoré vám pomôžu spravovať dosku pomocou pipu. Na tento účel otvorte terminál a spustite ho

pip install esptool rshell

KROK 4: Stiahnite si MicroPython

Stiahnite si najnovší firmvér.bin spoločnosti MicroPython.bin z nasledujúceho odkazu:

V čase, keď to píšem, je aktuálna verzia 1.11 a súbor firmvéru sa nazýva esp8266-20190529-v1.11.bin

Kým to urobíte, môžete nájsť novšie vydanie.

Krok 5: Bliká MicroPython s Esptool.py

Bliká MicroPython s Esptool.py
Bliká MicroPython s Esptool.py
Bliká MicroPython s Esptool.py
Bliká MicroPython s Esptool.py

Pred vložením nového firmvéru na dosku je dobré vymazať všetky predchádzajúce údaje. To je niečo, čo by ste mali vždy urobiť, aby nový firmvér bežal z čistého stavu.

Choďte tam, kde ste umiestnili súbor.bin. Na vymazanie blesku použite esptool.py.

Pre Linux:

esptool.py --port /dev /ttyUSB0 erase_flash

Pre Windows:

esptool.py --port COM3 erase_flash

Možno budete musieť vo svojom príkaze zmeniť sériový port na sériový port, ku ktorému je pripojená vaša doska ESP8266. Ak nepoznáte číslo sériového portu vášho ESP8266, môžete sa prihlásiť do Arduino IDE. Stačí otvoriť IDE a potom kliknúť na Nástroje | Prístavy. Mali by ste tam vidieť sériový port dosky ESP8266. Vymeňte sériový port v príkaze (/dev/ttyUSB0) za sériový port vašej dosky.

Teraz, keď je doska úplne vymazaná, môžete flashovať zostavu MicroPython, ktorú ste si práve stiahli. To sa deje aj pomocou príkazu esptool.py:

esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin

Tento príkaz zapíše obsah súboru.bin MicroPython na tabuľu na adrese 0.

Uistite sa, že zmeníte názov súboru.bin firmvéru v príkaze (esp82688-2019-080529-v1.11.bin) na názov firmvéru, ktorý ste stiahli.

Akonáhle je firmvér úspešne nainštalovaný na vašu dosku ESP8266, môžete získať prístup k REPL na vašej doske prostredníctvom káblového pripojenia (sériový port UART) alebo WiFi.

Krok 6: Použitie MicroPython REPL s Rshell

Použitie MicroPython REPL s Rshell
Použitie MicroPython REPL s Rshell
Použitie programu MicroPython REPL With Rshell
Použitie programu MicroPython REPL With Rshell

Teraz ste pripravení spustiť MicroPython na doske ESP8266.

Čo vám ukážem, ako sa pripojiť k výzve Pythonu spustenej na vašej doske. Toto sa nazýva REPL, čo znamená „Read-Eval-Print-Loop“. Toto je štandardná výzva Pythonu, s ktorou sa pravdepodobne stretávate pri práci s bežným tlmočníkom Pythonu, ale tentoraz bude bežať na vašej doske a na interakciu s ňou použijete sériové pripojenie k počítaču.. Pripravený?

Ak sa chcete pripojiť k svojej doske a otvoriť reláciu REPL, zadajte nasledujúci príkaz:

rshell --port

Tento príkaz vás zavedie do výzvy rshell. Viď foto vyššie.

Ak sledujete tento návod v systéme Windows, všimnite si, že rshell má v histórii systému problémy so systémom Windows.

Aby sme opravili tento typ:

rshell -a --port COM3

Z tejto výzvy môžete vykonávať úlohy správy súvisiace s doskou mikrokontroléra a tiež spustiť Python REPL, ktorý môžete použiť na interakciu s doskou v reálnom čase. Stačí teda zadať nasledujúci príkaz:

repl

Aby ste sa uistili, že všetko funguje, zadajte jednoduchú vetu v jazyku Python:

vytlačiť („Hello World“)

Krok 7: Ovládanie pinov pomocou programu MicroPython

Ovládanie pinov pomocou MicroPython
Ovládanie pinov pomocou MicroPython
Ovládanie pinov pomocou MicroPythonu
Ovládanie pinov pomocou MicroPythonu

V tomto kroku sa naučíme ovládať piny ESP8266 pomocou programu MicroPython. Aby sme to urobili, vymyslíme nastavenie, v ktorom budeme prepínať stav LED diódy pripojenej na pin GPIO dosky ESP8266. To vám pomôže pochopiť, ako ovládať digitálne výstupy pomocou MicoPython.

Pripravovať sa

Na splnenie tohto KROKU budete potrebovať nasledujúce veci:

1 x NodeMCU

1 x červená 5 mm LED dióda

1 x 220 Ω odpor

1 x Breadboard

Prepojovacie vodiče

Budova

Začnite namontovaním LED na nepájivú dosku. Pripojte jeden koniec rezistora 220 Ω k kladnému ramenu LED (kladný koniec LED je zvyčajne vyšší z dvoch nožičiek). Druhý koniec rezistora pripojte k pinu D1 dosky ESP8266. Potom pripojte zápornú časť LED diódy ku kolíku GND dosky ESP8266. Pripojenie je znázornené na obrázku vyššie.

Po dokončení nastavenia pripojte dosku ESP8266 k počítaču pomocou kábla USB.

Ako to spraviť…

Do REPL zadajte nasledujúci kód:

# blikajúca LED dióda každú 1 sekundu

def blikanie (pin = 5, čas = 1) # funkcia blikania v predvolenom nastavení pin = 5, čas = 1 s importovať stroj # modul stroja uchováva konfigurácie a režimy pinov od času importu spánku # import spánku po určité oneskorenie LED = stroj. pin (led_pin, machine. PIN. OUT) # nakonfigurujte LED ako VÝSTUP, zatiaľ čo True: # beží navždy LED.hodnota (1) # nastaví LED na VYSOKÝ spánok (čas) # počká 1 sekundu v predvolenom nastavení LED.hodnota (0) # nastaví LED na NÍZKY spánok (čas) # štandardne počkajte 1 sekundu

Na otestovanie tohto kódu zadajte do relácie RPEL príkaz blink (). LED dióda pripojená k GPIO5 bude blikať každú 1 sekundu.

PIN a/alebo čas môžete zmeniť volaním:

žmurknutie (špendlík =, čas =)

Spustený kód ukončíte stlačením klávesov ctrl+c.

Na prečítanie vstupu z pripojeného k ESP8266 môžete použiť MicroPython. Pokračujte v ďalšom kroku, aby ste sa dozvedeli, ako to urobiť.

Ak ste uviazli, skontrolujte video.

Krok 8: Vyblednutie LED diódy

Vyblednutie LED diódy
Vyblednutie LED diódy
Vyblednutie LED diódy
Vyblednutie LED diódy

V tomto kroku sa naučíme, ako nastaviť jas LED diódy pomocou otočného potenciometra. Použijeme techniku nazývanú Pulse Width Modulation (PWM), ktorá nám umožňuje stlmiť LED s až 256 nastaveniami.

Poznámka: Všetky kolíky ESP8266 je možné použiť ako pin PWM okrem GPIO16 (D0).

Pripravovať sa:

Na splnenie tohto KROKU budete potrebovať nasledujúce veci:

1 x NodeMCU

1 x červená 5 mm LED dióda

1 x 50 KΩ otočný potenciometer.

1 x Breadboard

Prepojovacie vodiče

Budova

Pripojenie je znázornené na obrázku vyššie: Po dokončení nastavenia pripojte dosku ESP8266 k počítaču pomocou kábla USB.

Ako to spraviť…

Do REPL zadajte nasledujúci kód:

# Blednúca LED dióda každých 0,5 čítaním údajov z potenciometra

importovať stroj z času importovať spánok led_pin = 5 # LED pin POT = machine. ADC (0) # ADC0 pin LED = machine. Pin (led_pin) # create LED object LED_pwm = machine. PWM (LED, freq = 500) # create LED_pwm objekt a nastavte frekvenciu na 500 Hz, zatiaľ čo True: LED_pwm.duty (POT.read ()) # získajte hodnotu z hrnca a nastavte ju na spánok (0,5) # čakajte 0,5

To zmení jas LED diódy pripojenej k GPIO 5 zmenou hodnoty potenciometra.

Spustený kód ukončíte stlačením klávesov ctrl+c.

Ak ste uviazli, skontrolujte video.

Krok 9: Kam odtiaľto?

Doteraz sme videli, ako nakonfigurovať a spustiť MicroPython na doskách založených na ESP8266. Naučili sme sa ovládať kolíky tak, aby blikali LED diódy, potom sme pridali potenciometer na ovládanie jasu LED pomocou techniky modulácie šírky impulzov.

Teraz môžeme čítať údaje zo senzora a odosielať ich do cloudu, môžeme tiež vytvoriť server HTTP, na ktorom môžete tlačiť naše údaje na jednoduchej webovej stránke atď.

To nám dáva veľa myšlienok o internete vecí (IoT).

Krok 10: Záver

Tu to máte! Choďte ďalej a dobyte svet MicroPythonu.

Ak máte akékoľvek otázky, samozrejme, môžete zanechať komentár.

Ak sa chcete dozvedieť viac o mojej tvorbe, navštívte môj kanál YouTube:

myYouTube

myGitHub

myLinkedin

Ďakujem, že ste si prečítali tento návod ^^ a prajem pekný deň.

Uvidíme sa.

Ahmed Nouira.

Odporúča: