Tartalomjegyzék:

Első lépések a MicroPython használatával az ESP8266 -on: 10 lépés (képekkel)
Első lépések a MicroPython használatával az ESP8266 -on: 10 lépés (képekkel)

Videó: Első lépések a MicroPython használatával az ESP8266 -on: 10 lépés (képekkel)

Videó: Első lépések a MicroPython használatával az ESP8266 -on: 10 lépés (képekkel)
Videó: Python első lépések 2024, December
Anonim
Első lépések a MicroPython használatával az ESP8266 készüléken
Első lépések a MicroPython használatával az ESP8266 készüléken

Más módot szeretne az ESP8266 alapú táblák programozására, mint az Arduino IDE és a C/C ++ programozási nyelv együttes használatára?

Ebben az oktatóanyagban megtudjuk, hogy ki konfigurálja és vezérelje az ESP8266 kártyát a MicroPython használatával.

ÉPÜLETI IDŐ: 60 perc Nehézség: ÉRTÉKELÉS: Egyszerű

1. lépés: Mi az a MicroPython?

A MicorPython egyike a sok programozási nyelvnek, amellyel programozhatjuk az ESP8266 modult. Ez a Python 3 programozási nyelv sovány és gyors változata, és számos előnnyel rendelkezik a hagyományos programozási nyelvekkel, például a C és a C ++ nyelvekkel szemben.

A MicroPython -ot úgy tervezték, hogy a lehető legnagyobb mértékben kompatibilis legyen a normál Python -szal. Teljes Python-fordítóval és futási idővel rendelkezik, és REPL (Read-Eval-Print Loop) néven ismert interaktív promptot biztosít.

A MicorPython néhány különböző típusú mikrokontroller támogatására készült. De ebben az oktatóanyagban csak egy modellel fogok dolgozni: az ESP8266-alapú táblával (NodeMCU). Vegye figyelembe, hogy néhány különböző táblát vásárolhat ugyanazzal a lapkával.

Olvasás és források:

MicroPython

NodeMCU

2. lépés: Követelmények

Követelmények
Követelmények
Követelmények
Követelmények
Követelmények
Követelmények
Követelmények
Követelmények

Ahhoz, hogy ezt az oktatóanyagot követhesse, csak alapvető kódolási tapasztalattal kell rendelkeznie a Python használatával. Nem kell rendelkeznie korábbi ismeretekkel a mikrokontrollerekről, az elektronikáról vagy a MicroPythonról.

Szüksége lesz egy szabad, USB -porttal rendelkező Windows, Mac vagy Linux számítógépre is, mivel a programozáshoz egy mikrokontrollert csatlakoztat a számítógéphez.

Szükséges alkatrészek:

1 x NodeMCU (vagy más ESP8266 alapú kártya)

1 x piros 5 mm -es LED

1 x 220Ω 1/4 W ellenállás

1 x 10KΩ forgó potenciométer

1 x kenyeretábla

1 x USB -MicroUSB kábel

Jumper vezetékek.

3. lépés: Miért az ESP8266 alaplap?

Miért ESP8266 alapú alaplap?
Miért ESP8266 alapú alaplap?

Az egyik módja a legtöbbet kihozni az ESP8266 -ból a MicroPython használatával. Ezenkívül az ESP8266 modul az egyik legjobb platform, amelyen megtanulhatja a MicroPython használatát. Ennek oka az, hogy az ESP8266 egyszerű GPIO tűvezérlő funkciókat és vezeték nélküli funkciókat kínál, lehetővé téve a MicroPython programozási nyelv minden aspektusának tesztelését.

Az ESP8266 chip népszerű a nyílt forráskódú fejlesztőiparban. Különböző gyártók számos fejlesztőlapja használja az ESP8266 chipet. A MicroPython -ot úgy tervezték, hogy általános portot biztosítson, amely a legtöbb táblán futtatható, a lehető legkevesebb korlátozással. A port az Adafruit Feather HUZZAH táblán alapul. Más ESP8266 táblák használatakor feltétlenül nézze meg a rajzaikat és az adatlapjaikat, hogy azonosítani tudja a különbségeket köztük és az Adafruit Feather HUZZAH táblában. Így alkalmazkodhat a kódbeli különbségekhez.

Olvasás és források:

ESP8266

Adafruit toll HUZZAH

4. lépés: A számítógép beállítása

A számítógép beállítása
A számítógép beállítása
A számítógép beállítása
A számítógép beállítása
A számítógép beállítása
A számítógép beállítása
A számítógép beállítása
A számítógép beállítása

Az ESP8266 kártya programozásához a MicroPython használata előtt számos dolgot be kell állítania. Ebben a lépésben át fogjuk végezni a telepítési folyamatot. Így tudni fogja, hogyan kell konfigurálni az ESP8266 kártyát a MicroPythonhoz való használathoz.

Készülődni

E lépésből a 6. lépésig mindössze az ESP8266 -ra és egy USB -kábelre van szüksége. Csatlakoztassa az ESP8266 kártyát a számítógéphez.

Hogyan kell csinálni…

1. LÉPÉS: Telepítse az eszközillesztőket

Ha Linuxos számítógéppel rendelkezik, akkor nem kell semmilyen eszközillesztőt telepítenie ahhoz, hogy a mikrovezérlő illesztőprogramjai felismerhetők legyenek. Ha azonban Mac vagy Windows számítógépe van, akkor illesztőprogram szükséges ahhoz, hogy a számítógép felismerje a mikrokontrollert. mint soros eszköz.

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

2. LÉPÉS: Telepítse a Python programot

Az ESP8266 -al való kommunikációhoz használt eszközök Python -ban vannak írva, ezért telepítenie kell a Python -ot a számítógépére.

Ha az operációs rendszere nem tartalmaz előre csomagolt Python-t, akkor a https://python.org webhelyről letöltheti a hivatalos verzióját bármely támogatott operációs rendszerhez.

3. LÉPÉS: Telepítse az esptoolt és az rshellt

Telepítsen két csomagot, amelyek segítenek a tábla kezelésében a pip használatával. Ehhez nyissa meg a terminált, és futtassa

pip install esptool rshell

4. LÉPÉS: Töltse le a MicroPython alkalmazást

Töltse le a legújabb MicroPython firmware.bin fájlt az alábbi linkről:

Amikor ezt írom, a jelenlegi verzió 1.11, a firmware fájl pedig esp8266-20190529-v1.11.bin

Mire ezt megteszi, találhat egy újabb kiadást.

5. lépés: A MicroPython villogása az Esptool.py segítségével

Villogó MicroPython Esptool.py -val
Villogó MicroPython Esptool.py -val
Villogó MicroPython Esptool.py -val
Villogó MicroPython Esptool.py -val

Mielőtt új firmware -t villogna a táblán, jó ötlet törölni minden korábbi adatot. Ezt mindig meg kell tennie, hogy az új firmware tiszta állapotból fusson.

Menjen oda, ahová a.bin fájlt helyezte. A vaku törléséhez használja az esptool.py parancsot.

Linux esetén:

esptool.py --port /dev /ttyUSB0 erase_flash

Windows esetén:

esptool.py --port COM3 erase_flash

Előfordulhat, hogy a parancs soros portját arra a soros portra kell cserélnie, amelyhez az ESP8266 kártya csatlakozik. Ha nem tudja az ESP8266 soros portszámát, ellenőrizze az Arduino IDE -t. Csak nyissa meg az IDE -t, majd kattintson az Eszközök | Kikötők. Látnia kell az ESP8266 kártya soros portját. Cserélje ki a parancs soros portját (/dev/ttyUSB0) az alaplap soros portjára.

Most, hogy a tábla teljesen törlődött, felvillanhat az imént letöltött MicroPython build. Ez az esptool.py paranccsal is megtörténik:

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

Ez a parancs a MicroPython.bin fájl tartalmát írja a táblára a 0 címre.

Győződjön meg arról, hogy a parancsban (esp82688-2019-080529-v1.11.bin) módosítja a firmware.bin fájl nevét a letöltött firmware nevére.

Miután a firmware sikeresen telepítve lett az ESP8266 kártyára, vezetékes kapcsolaton (UART soros port) vagy gondolat WiFi -n keresztül elérheti a REPL -t a táblán.

6. lépés: A MicroPython REPL használata az Rshell használatával

A MicroPython REPL használata az Rshell -lel
A MicroPython REPL használata az Rshell -lel
A MicroPython REPL használata az Rshell -lel
A MicroPython REPL használata az Rshell -lel

Most már készen áll a MicroPython elindítására az ESP8266 táblán.

Amit megmutatok, hogyan lehet csatlakozni a táblán futó Python prompthoz. Ezt hívják a REPL-nek, ami "Read-Eval-Print-Loop". Ez a szabványos Python -felszólítás, amelyet valószínűleg a szokásos Python -értelmezővel való munkavégzés során szokott látni, de ezúttal az alaplapon fog futni, és a vele való interakcióhoz a soros kapcsolatot fogja használni a számítógéppel. Kész?

A táblához való csatlakozáshoz és a REPL munkamenet megnyitásához írja be a következő parancsot:

rshell -port

Ez a parancs beviszi az rshell parancssorba. Lásd a fenti fotót.

Ha követi ezt az oktatóanyagot Windows rendszeren, vegye figyelembe, hogy az rshell korábban problémákat tapasztalt a Windows rendszeren való futás során.

Tehát a típus javítása érdekében:

rshell -a --port COM3

Ebből az utasításból elvégezheti a mikrokontroller táblájához kapcsolódó felügyeleti feladatokat, és elindíthat egy Python REPL programot, amellyel valós időben léphet kapcsolatba a táblával. Tehát írja be a következő parancsot:

repl

Annak érdekében, hogy minden működjön, írjon be egy egyszerű Python -mondatot:

nyomtatás ("Hello World")

7. lépés: A csapok vezérlése a MicroPython használatával

A csapok vezérlése a MicroPython segítségével
A csapok vezérlése a MicroPython segítségével
A csapok vezérlése a MicroPython segítségével
A csapok vezérlése a MicroPython segítségével

Ebben a lépésben megtanuljuk, hogyan lehet az ESP8266 csapokat MicroPython segítségével vezérelni. Ehhez találunk egy olyan beállítást, ahol az ESP8266 alaplapi GPIO tűhöz csatlakoztatott LED állapotát váltjuk. Ez segít megérteni a digitális kimenetek MicoPython használatával történő vezérlését.

Készülődni

A LÉPÉS végrehajtásához a következő dolgokra lesz szüksége:

1 x NodeMCU

1 x piros 5 mm -es LED

1 x 220 Ω ellenállás

1 x kenyeretábla

Jumper vezetékek

Az építés

Először szerelje fel a LED -et a kenyértáblára. Csatlakoztassa a 220 Ω ellenállás egyik végét a LED pozitív lábához (a LED pozitív lába általában a két láb közül a magasabb). Csatlakoztassa az ellenállás másik végét az ESP8266 kártya D1 tűjéhez. Ezután csatlakoztassa a LED negatív lábát az ESP8266 kártya GND csapjához. A kapcsolat a fenti ábrán látható.

A beállítás befejezése után csatlakoztassa az ESP8266 kártyát a számítógéphez USB -kábellel.

Hogyan kell csinálni…

Írja be a következő kódot a REPL -be:

# 1 másodpercenként villog a LED

def villog (pin = 5, time = 1) # villogás funkció alapértelmezés szerint pin = 5, time = 1s import machine # a gépmodul tárolja a pin konfigurációkat és módokat az időimportálás alvó állapotából # import alvás némi késleltetéshez LED = gép. (led_pin, machine. PIN. OUT) # konfigurálja a LED -et OUTPUT -ként, míg True: # mindig fut LED -et. érték (1) # állítsa a LED -et HIGH alvó állapotba (idő) # várjon 1 másodpercet alapértelmezett LED -en. érték (0) # set LED LOW alvásig (idő) # alapértelmezés szerint várjon 1 másodpercet

Írja be a blink () parancsot az RPEL munkamenetében a kód teszteléséhez. Ez másodpercenként villogni kezd a GPIO5 -hez csatlakoztatott LED -el.

A PIN -kódot és/vagy az időt megváltoztathatja a következő telefonszámon:

villog (tű =, idő =)

A futó kódból való kilépéshez nyomja meg a ctrl+c billentyűkombinációt.

A MicroPython segítségével olvashatja az ESP8266 -hoz csatlakoztatott bemenetet. Folytassa a következő lépéssel, hogy megtudja, hogyan kell ezt megtenni.

Nézd meg a videót, ha elakadtál.

8. lépés: A LED elhalványítása

A LED elhalványulása
A LED elhalványulása
A LED elhalványulása
A LED elhalványulása

Ebben a lépésben megtanuljuk, hogyan lehet a LED fényerejét rotációs potenciométerrel beállítani. Pulse Width Modulation (PWM) nevű technikát fogunk használni, amely lehetővé teszi, hogy akár 256 beállítással tompítsuk a LED -et.

Megjegyzés: Az ESP8266 összes csapja használható PWM tűként a GPIO16 (D0) kivételével.

Készülődni:

A LÉPÉS végrehajtásához a következőkre lesz szüksége:

1 x NodeMCU

1 x piros 5 mm -es LED

1 x 50 KΩ forgó potenciométer.

1 x kenyeretábla

Jumper vezetékek

Az építés

A kapcsolat a fenti diagramon látható: A beállítás befejezése után csatlakoztassa az ESP8266 kártyát a számítógéphez USB -kábellel.

Hogyan kell csinálni…

Írja be a következő kódot a REPL -be:

# Eltűnő LED 0,5 percenként a potenciométer adatainak leolvasásával

gép importálása időből importálás alvás led_pin = 5 # led pin POT = machine. ADC (0) # ADC0 pin LED = machine. Pin (led_pin) # LED objektum létrehozása LED_pwm = machine. PWM (LED, freq = 500) # create LED_pwm objektumot, és állítsa be a frekvenciát 500 Hz -re, míg True: LED_pwm.duty (POT.read ()) # lekéri az értéket az edényből, és beállítja a működési ciklus alvó állapotára (0.5) # várjon 0.5

Ez megváltoztatja a GPIO 5 -hez csatlakoztatott LED fényerejét a potenciométer értékének megváltoztatásával.

A futó kódból való kilépéshez nyomja meg a ctrl+c billentyűkombinációt.

Nézd meg a videót, ha elakadtál.

9. lépés: Honnan tovább?

Eddig láttuk, hogyan lehet konfigurálni és futtatni a MicroPython-t ESP8266 alapú táblákon. megtanultuk, hogyan kell vezérelni a LED -ek villogását szolgáló tűket, majd hozzáadtunk egy potenciométert a LED fényerejének szabályozásához impulzusszélesség -modulációs technikával.

Most ki tudjuk olvasni az érzékelő adatait, és elküldhetjük a felhőbe, létrehozhatunk egy HTTP szervert is, ahol kinyomtathatjuk adatainkat egy egyszerű weboldalon stb.

Ez sok ötletet ad nekünk a dolgok internetéről (IoT).

10. lépés: Következtetés

Tessék, itt van! Menjen tovább és hódítsa meg a MicroPython világát.

ha bármilyen kérdése van, természetesen megjegyzést írhat.

Ha többet szeretne megtudni munkáimról, látogasson el YouTube -csatornámra:

myYouTube

myGitHub

myLinkedin

Köszönöm, hogy elolvastad ezt az útmutatót ^^ és további szép napot.

Szia.

Ahmed Nouira.

Ajánlott: