Innehållsförteckning:
- Steg 1: Vad är MicroPython?
- Steg 2: Krav
- Steg 3: Varför ESP8266 Based-board?
- Steg 4: Konfigurera din dator
- Steg 5: Blinkande MicroPython med Esptool.py
- Steg 6: Använda MicroPython REPL med Rshell
- Steg 7: Kontrollera stift med MicroPython
- Steg 8: Tona LED -lampan
- Steg 9: Var ska du härifrån?
- Steg 10: Slutsats
Video: Komma igång med MicroPython på ESP8266: 10 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Vill du ha ett annat sätt att programmera de ESP8266-baserade korten snarare än den vanliga metoden med Arduino IDE tillsammans med C/C ++ programmeringsspråk?
I denna handledning lär vi oss vem som ska konfigurera och styra ett ESP8266 -kort med MicroPython.
BYGGTID: 60 MINUTTER SVÅR: BETYGNING: Lätt
Steg 1: Vad är MicroPython?
MicorPython är ett av de många programmeringsspråk som vi kan använda för att programmera ESP8266 -modulen. Det är en smal och snabb version av programmeringsspråket Python 3 och har flera fördelar jämfört med traditionella programmeringsspråk som C och C ++.
MicroPython är utformad för att vara kompatibel med normal Python så mycket som möjligt. Den har en komplett Python-kompilator och körtid och ger en interaktiv prompt som kallas REPL (Read-Eval-Print Loop).
MicorPython är utformat för att stödja få olika typer av mikrokontroller. Men för den här handledningen kommer jag att arbeta med bara en modell: det ESP8266-baserade kortet (NodeMCU). Observera att det finns några olika brädor som du kan köpa med samma chip.
Läsning och resurser:
MicroPython
NodeMCU
Steg 2: Krav
För att kunna följa denna handledning behöver du bara ha grundläggande kodningserfarenhet med Python. Du behöver inte ha någon tidigare kunskap om mikrokontroller, elektronik eller till och med MicroPython.
Du behöver också en Windows-, Mac- eller Linux -dator med en ledig USB -port, eftersom du ansluter en mikrokontroller till din dator för att programmera den.
Delar som krävs:
1 x NodeMCU (eller annat ESP8266-baserat kort)
1 x röd 5 mm LED
1 x 220Ω 1/4W motstånd
1 x 10KΩ roterande potentiometer
1 x brödbräda
1 x USB till MicroUSB -kabel
Jumper Wires.
Steg 3: Varför ESP8266 Based-board?
Ett sätt att få ut det mesta av din ESP8266 är genom att använda MicroPython. Dessutom är ESP8266 -modulen en av de bästa plattformarna att lära sig att använda MicroPython på. Detta beror på att ESP8266 har enkla GPIO -pin -kontrollfunktioner samt trådlös funktionalitet, så att du kan testa alla aspekter av MicroPython -programmeringsspråket.
ESP8266 -chipet är populärt i utvecklingsindustrin med öppen källkod. Det finns många utvecklingsbrädor från olika tillverkare som använder ESP8266 -chipet. MicroPython har utformats för att tillhandahålla en generisk port som kan köras på de flesta av dessa kort, med så få begränsningar som möjligt. Porten är baserad på Adafruit Feather HUZZAH -kortet När du använder andra ESP8266 -kort, se till att du kontrollerar deras scheman och datablad så att du kan identifiera skillnaderna mellan dem och Adafruit Feather HUZZAH -kortet. På så sätt kan du tillgodose skillnaderna i din kod.
Läsning och resurser:
ESP8266
Adafruit fjäder HUZZAH
Steg 4: Konfigurera din dator
Det finns flera saker du måste ställa in innan du använder MicroPython för att programmera ditt ESP8266 -kort. Vi kommer att gå igenom installationsprocessen i detta steg. På så sätt vet du hur du konfigurerar ESP8266 -kortet för att användas med MicroPython.
Gör mig i ordning
Allt du behöver från detta steg till steg 6 är din ESP8266 och en USB -kabel. Anslut ditt ESP8266 -kort till din dator.
Hur man gör det…
STEG 1: Installera enhetsdrivrutiner
Om du har en Linux -dator behöver du inte installera några drivrutiner för att drivrutinerna för mikrokontroller ska kunna identifieras. Men det har en Mac eller en Windows -maskin, en drivrutin behövs för att datorn ska känna igen mikrokontrollern som en seriell enhet.
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
STEG2: Installera Python
Verktygen som du ska använda för att kommunicera med ESP8266 är skrivna i Python, så du måste installera Python på din dator.
Om ditt operativsystem inte tillhandahåller ett förpackat Python kan du gå till https://python.org för att ladda ner en officiell version för något av de operativsystem som stöds.
STEG3: Installera esptool och rshell
Installera två paket som hjälper dig att hantera ditt kort med pip. För att göra detta öppnar du din terminal och kör
pip installera esptool rshell
STEG4: Ladda ner MicroPython
Ladda ner den senaste MicroPython -firmware.bin från följande länk:
När jag skriver detta är den aktuella versionen 1.11 och firmware-filen heter esp8266-20190529-v1.11.bin
När du gör detta kan du hitta en nyare version.
Steg 5: Blinkande MicroPython med Esptool.py
Innan du lägger in en ny firmware i kortet är det en bra idé att radera tidigare data. Detta är något som du alltid bör göra så att den nya firmware körs från ett rent tillstånd.
Gå dit du har placerat.bin -filen. Använd esptool.py för att radera blixten.
För Linux:
esptool.py --port /dev /ttyUSB0 erase_flash
För Windows:
esptool.py --port COM3 erase_flash
Du kan behöva ändra den seriella porten i ditt kommando till den serieport som ditt ESP8266 -kort är anslutet till. Om du inte vet serienummeret på din ESP8266 kan du kolla in Arduino IDE. Öppna bara IDE och klicka sedan på Verktyg | Hamnar. Du bör se serieporten på ditt ESP8266 -kort där. Byt ut den seriella porten i kommandot (/dev/ttyUSB0) mot den seriella porten på ditt kort.
Nu när kortet är helt raderat kan du blinka MicroPython -byggnaden som du just laddade ner. Detta görs också med kommandot esptool.py:
esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin
Detta kommando kommer att skriva innehållet i MicroPython.bin -filen till kortet på adressen 0.
Se till att du ändrar namnet på den fasta programvaran.bin-filen i kommandot (esp82688-2019-080529-v1.11.bin) till den för den inbyggda programvaran som du laddade ner.
När den fasta programvaran har installerats på ditt ESP8266 -kort kan du komma åt REPL på ditt kort via en trådbunden anslutning (UART -seriell port) eller tänkt WiFi.
Steg 6: Använda MicroPython REPL med Rshell
Du är nu redo att starta MicroPython på ditt ESP8266 -kort.
Vad jag ska visa dig hur du ansluter till Python-prompten som körs på ditt kort. Detta kallas REPL, som står för "Read-Eval-Print-Loop". Detta är den vanliga Python -prompten som du förmodligen brukar se när du arbetar med den vanliga Python -tolken, men den här gången kommer den att köras på ditt kort och för att interagera med den kommer du att använda den seriella anslutningen till din dator. Redo?
För att ansluta till ditt kort och öppna en REPL -session, ange följande kommando:
rshell --port
Detta kommando tar dig till rshell -prompten. Se bild ovan.
Om du följer den här självstudien på Windows, observera att rshell har en historik med problem när den körs på Windows.
Så för att fixa den typen:
rshell -a --port COM3
Från denna uppmaning kan du utföra hanteringsuppgifter relaterade till ditt mikrokontrollkort och även starta ett Python REPL som du kan använda för att interagera med kortet i realtid. Så bara ange följande kommando:
ers
För att se till att allt fungerar skriver du en enkel Python -mening:
print ("Hej världen")
Steg 7: Kontrollera stift med MicroPython
I det här steget kommer vi att lära oss hur du styr ESP8266 -stiften med MicroPython. För att göra det kommer vi med en inställning där vi kommer att byta status för en lysdiod som är ansluten till ett ESP8266 -kort GPIO -stift. Detta hjälper dig att förstå hur du styr digitala utgångar med MicoPython.
Gör mig i ordning
Du behöver följande saker för att utföra detta STEG:
1 x NodeMCU
1 x röd 5 mm LED
1 x 220 Ω motstånd
1 x brödbräda
Jumper Wires
The Build
Börja med att montera lysdioden på brödbrädan. Anslut ena änden av 220 Ω motståndet till det positiva benet på lysdioden (det positiva benet på en lysdiod är vanligtvis det högre av de två benen). Anslut den andra änden av motståndet till stift D1 på ESP8266 -kortet. Anslut sedan det negativa benet på lysdioden till GND -stiftet på ESP8266 -kortet. Anslutningen är som visas i diagrammet ovan.
När installationen är klar ansluter du ESP8266 -kortet till din dator via en USB -kabel.
Hur man gör det…
Skriv in följande kod i din REPL:
# blinka LED var 1: e sekund
def blink (stift = 5, tid = 1) # blinkfunktion som standard stift = 5, tid = 1s importmaskin # maskinmodulen rymmer stiftkonfigurationerna och lägen från tiden importera viloläge # importera viloläge för viss fördröjning LED = maskin. Pin (led_pin, machine. PIN. OUT) # konfigurera LED som OUTPUT medan True: # run forever LED.value (1) # set LED to HIGH sleep (time) # wait 1 second by default LED.value (0) # set LED till LOW sleep (tid) # vänta 1 sekund som standard
Skriv blink () i din RPEL -session för att testa den här koden. Detta blinkar lysdioden som är ansluten till GPIO5 var 1 sekund.
Du kan ändra nålen och/eller tiden genom att ringa:
blinka (stift =, tid =)
Tryck på ctrl+c för att lämna körkoden.
Du kan använda MicroPython för att läsa en ingång från ansluten till ESP8266. Fortsätt till nästa steg för att lära dig hur du gör det.
Kontrollera videon om du fastnade.
Steg 8: Tona LED -lampan
I detta steg kommer vi att lära oss hur man justerar ljusstyrkan på LED: n med en roterande potentiometer. Vi kommer att använda en teknik som kallas Pulse Width Modulation (PWM), den tillåter oss att dimma lysdioden med upp till 256 inställningar.
Observera: Alla stiften i ESP8266 kan användas som en PWM -stift utom GPIO16 (D0).
Gör mig i ordning:
Du behöver följande saker för att utföra detta STEG:
1 x NodeMCU
1 x röd 5 mm LED
1 x 50 KΩ roterande potentiometer.
1 x brödbräda
Jumper Wires
The Build
Anslutningen är som visas i diagrammet ovan: När installationen är klar ansluter du ESP8266 -kortet till din dator via en USB -kabel.
Hur man gör det…
Skriv in följande kod i din REPL:
# Fading LED varje 0,5 genom att läsa data från potentiometern
importera maskin från tid importera sömn led_pin = 5 # led pin POT = machine. ADC (0) # ADC0 pin LED = machine. Pin (led_pin) # skapa LED objekt LED_pwm = machine. PWM (LED, freq = 500) # skapa LED_pwm objekt och ställ in frekvensen till 500Hz medan True: LED_pwm.duty (POT.read ()) # hämta värdet från grytan och ställ in det på drifttimmets viloläge (0,5) # vänta 0,5
Detta kommer att ändra ljusstyrkan för lysdioden ansluten till GPIO 5 genom att ändra värdet på potentiometern.
Tryck på ctrl+c för att lämna körkoden.
Kontrollera videon om du fastnade.
Steg 9: Var ska du härifrån?
Hittills har vi sett hur man konfigurerar och kör MicroPython på ESP8266-baserade kort. vi lärde oss att styra stiften för att blinka en lysdiod sedan lade vi till en potentiometer för att styra ljusstyrkan på lysdioden med hjälp av pulsbreddsmoduleringsteknik.
Nu kan vi läsa data från sensorn och skicka den till molnet, vi kan också skapa en HTTP -server där du kan skriva ut våra data på en enkel webbsida osv …
Detta ger oss många uppfattningar om Internet of Things (IoT).
Steg 10: Slutsats
Där har du det! Gå ut och erövra MicroPythons värld.
om du har några frågor såklart kan du lämna en kommentar.
Besök min YouTube -kanal för att se mer om mina verk:
myYouTube
myGitHub
myLinkedin
Tack för att du läste detta instruerbara ^^ och ha en trevlig dag.
Vi ses.
Ahmed Nouira.
Rekommenderad:
Komma igång med skinkradio: 5 steg (med bilder)
Komma igång med skinkradio: Som nyligen präglad skinklicensinnehavare vill jag gå vidare med processen jag tog för att komma in i skinkradio. Jag lockades av hobbyens självförtroendeaspekt, vilket gav människor ett sätt att kommunicera när andra metoder störs. Men det är också givande att
Komma igång med M5StickV AI + IOT -kameran: 6 steg (med bilder)
Komma igång med M5StickV AI + IOT -kameran: Kort översikt M5StickV är en liten AI + IOT -kamera nästan storleken i diameter på 2 mynt, priset är cirka $ 27,00 vilket för vissa kan tyckas dyrt för en så liten kamera men det packar lite hyfsade specifikationer. Kameran drivs av otroliga
Komma igång med La COOL Board: 4 steg (med bilder)
Komma igång med La COOL Board: Introduktion " När vi kom på idén till La COOL Board, tänkte jag mig en blandning mellan en Arduino med WiFi och en modulär agronomisk väderstation. Det var tvunget att konsumera väldigt lite energi för autonom drift och jag ville kunna bekämpa
Komma igång med NeoPixel / WS2812 RGB LED: 8 steg (med bilder)
Komma igång med NeoPixel / WS2812 RGB LED: [Spela video] I denna instruktionsbok kommer vi att utforska den adresserbara RGB LED (WS2812) eller populärt kallad Adafruit NeoPixel. NeoPixel är en familj av ringar, remsor, brädor & pinnar av pulserande, färgglada miniatyr -lysdioder. Dessa är kedjeläge
Komma igång med Arduino: Vad du behöver veta: 4 steg (med bilder)
Komma igång med Arduino: Vad du behöver veta: Jag har arbetat med Arduino och elektronik i många år nu, och jag lär mig fortfarande. I denna ständigt växande värld av mikrokontroller är det lätt att gå vilse och köra cirklar runt dig själv och försöka hitta information. I denna instruerbara,