Innehållsförteckning:

ESP8266 och Python Communication For  Noobs: 6 steg
ESP8266 och Python Communication For Noobs: 6 steg

Video: ESP8266 och Python Communication For Noobs: 6 steg

Video: ESP8266 och Python Communication For  Noobs: 6 steg
Video: How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code 2024, November
Anonim
ESP8266 och Python Communication For Noobs
ESP8266 och Python Communication For Noobs

Den här guiden låter dig få all data från ESP8266 och styra den över python utan AT -kommandon.

För nybörjare är de flesta guiderna om att använda ESP8266 svåra, eftersom de vill att du ska blinka "AT COMMANDS" till chip, vilket är:

  • Onödigt
  • Slöseri med minne om ESP
  • Ger dig begränsad kontroll
  • Hårt och utmanande
  • Och inte lämplig för alla ESP8266 -moduler

Det är därför jag skapade ett mycket enkelt mDNS -kommunikationssystem som bara styrs med 3 enkla funktioner. Det ger dig också full kontroll.

Steg 1: Teori

Teori
Teori

Vår esp ansluter till vårt wifi och skapar en localhost -server och börjar vänta på en begäran. Varje gång vår python skickar en förfrågan till den lokala värden, kör esp den önskade koden och returnerar sedan resultatet som en http -begäran. Slutligen läser python den returnerade data som http -begäran och hämtar de variablerna från den. Med detta kan esp returnera strängar, data och matriser. Python -koden förstår deras datatyp.

Steg 2: Förbereda de obligatoriska biblioteken

Förbereder de obligatoriska biblioteken
Förbereder de obligatoriska biblioteken

Först och främst måste du ladda ner ESP8266 -kortbiblioteket till arduino ide. Om du inte vet hur, här är guiden.

Efter det måste du ladda ner mitt mikrobibliotek härifrån.

När du har laddat ner finns det en fil som heter "ESP_MICRO.h" i biblioteksmappen, kopiera den till din kodningsmapp för det aktuella arduino -projektet. Ja, kopiera inte det till arduinos bibliotek, det är ett mikrobibliotek så du kommer att kopiera det till mappen för ditt nuvarande arduino -projekt.

Så nu är våra krav uppfyllda. Vi kan börja koda det.

Steg 3: Skriva en enkel begäranskod

Skriva en enkel begäranskod
Skriva en enkel begäranskod

När du öppnar ditt project.ino ser du två flikar om arduino ide. Det ena är ditt projekt, det andra är "ESP_MICRO.h" vårt mikrobibliotek.

Nu har du den fem funktionen i ESP_MICRO.h i din huvudkod, (funktionerna förklaras i de första raderna i ESP_MICRO.h)

Här är en enkel variabel som ökar koden.

Arduino -kod:

/* F5 TEST FÖR ESP2PY

* Skrivet av Junicchi * https://github.com/KebabLord/esp_to_python * Det ökar helt enkelt och returnerar en variabel varje gång en pythonreq kom */#include "ESP_MICRO.h" // Inkludera mikrobiblioteket int testvariable = 0; void setup () {Serial.begin (9600); // Starta serieport för att se detaljer starta ("USERNAME", "PASSWORD"); // EnAIt ansluter till din wifi med givna detaljer} void loop () {waitUntilNewReq (); // Väntar tills en ny begäran från python kommer/* ökar index när en ny begäran kom*/testvariabel += 1; returnThisInt (testvariabel); // Returnerar data till python}

Steg 4: Uppladdning

Uppladdning
Uppladdning

Programmering av Nodemcu ESP8266s ansluter helt enkelt usb och laddar upp skissen från arduino.

Men att programmera ESP8266-1 är svårare, det finns två metoder för att programmera dem

Programmering av ESP genom arduino

Om du har det bra med hoppare kan du programmera det via arduino med denna krets. Men på lång sikt är det smärta. Så jag föreslår en annan metod.

Programmerar den med ESP -programmerare

Det är mycket lättare och snabbare. Det är bara 1 dollar, köp en och använd en programmerare usb.

Lär dig IP -adressen för ESP

Medan koden laddas upp, öppna den seriella porten, du ser att detaljer skrivs ut när uppladdningen är klar. Lär dig IP: n för esp och notera det. Kom ihåg att ESP: s IP på lokal; ändras med wifi till wifi, inte session till session, så när du stänger och öppnar det senare kommer det inte att ändras.

Steg 5: Läsning och Python

Läsning och Python
Läsning och Python

I esp_to_python/biblioteket finns en "EXAMPLE_PYTHON_READER.py"

redigera den, ändra den femte raden med IP -adressen för esp -modulen som skrivs ut på seriell port och kör python -skriptet. I detta projekt använde jag python för att skicka och läsa begäran. Men du kan också se rådata med en webbläsare medan du klistrar in ip för ESP i en webbläsare. Eller så kan du göra ett program för att läsa det, eller så kan du till och med använda ett annat språk. Att styra modulen över python förklaras också i "ledControl" -projektet i exempelmappen.

Steg 6: Avsluta

Avslutar
Avslutar

Alla funktioner och koder förklaras i ESP_MICRO.h och i filen README.md.

Om det här projektet hjälpte dig kan du stjärnmärka det ursprungliga projektet på github.

Rekommenderad: